Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Arm Community blogs
Arm Community blogs
Embedded and Microcontrollers blog A weather station/datalogger using ARM Cortex-M4
  • Blogs
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
More blogs in Arm Community blogs
  • AI blog

  • Announcements

  • Architectures and Processors blog

  • Automotive blog

  • Embedded and Microcontrollers blog

  • Internet of Things (IoT) blog

  • Laptops and Desktops blog

  • Mobile, Graphics, and Gaming blog

  • Operating Systems blog

  • Servers and Cloud Computing blog

  • SoC Design and Simulation blog

  • Tools, Software and IDEs blog

Tags
  • datalogger
  • weather
  • freescale
  • Mbed
  • Cortex-M4
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

A weather station/datalogger using ARM Cortex-M4

Clovis Fritzen
Clovis Fritzen
July 9, 2014

Hello ARM community!

This one is my very first blog post in here and I want to share a project I have been working on: a weather station/datalogger reading temperature, humidity and light levels from the surroundings and saving it all inside a microSD card. But before I start I would like to thank Mr. Brad Nemire for inviting me to share my experiences in here. I have been writing and sharing my projects in my personal blog here and in my twitter @ClovisDuino; so if you want to stay always up-to-date with my maker adventures, check those out!

The idea of this weather station came from my need to test my recently-acquired Freescale FRDM-K64F (ARM Cortex-M4) development board; I really wanted to put my Arduino aside and start using the all-new and modern ARM processor. The components I had available were 1x DHT11 (serial temperature and humidity sensor), 1x LM35 (linear temperature sensor from Texas Instruments), some LDR's (Light dependent resistor), 1x 8GB microSDHC card and a DS1302 timekeeping chip from Maxim. What really jump-started my coding was that every component I cited above already have a ready-to-use library on the mBed website. So it was easy to start adapting code for my project.

You can have a look at the preliminar schematics in the sketch below, featuring all the components  cited above. Both the LM35 and LDR are connected to analog inputs of my board, while the DS1302 and DHT11 are connected to GPIO (which I defined in the firmware). You can find my code (the preliminary version) in this Github link.

datalogger_schematics.png

Since we are talking about a weather monitor there was no need to "rush" in terms of data acquisition, so I decided to save one complete set of data every 10 seconds only. It is enough to capture beautiful and nice data sets as the one seen below (for temperature inside my room). All that data is saved into a '.CSV' file, which makes it spreadsheet-readable and MATLAB by MathWorks friendly as well.

temperature_inside_my_room_07-01-2014.png

I am already working on a second version of my project, that will feature pressure and rain sensing (to come this August). If you wish to keep updated on this and more projects of mine, just go to Embedded Clovis, of course there is an entire post about this project in there; have fun coding, hacking and designing on an ARM!.

Anonymous
Parents
  • linda
    linda over 10 years ago

    cool, thanks for sharing.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
Comment
  • linda
    linda over 10 years ago

    cool, thanks for sharing.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
Children
No Data
Embedded and Microcontrollers blog
  • Formally verifying a floating-point division routine with Gappa – part 2

    Simon Tatham
    Simon Tatham
    A method of testing whether a numerical error analysis using Gappa really matches the code it is intended to describe.
    • September 4, 2025
  • Formally verifying a floating-point division routine with Gappa – part 1

    Simon Tatham
    Simon Tatham
    Learn the basics of using Gappa for numerical error analysis, using floating-point division in Arm machine code as a case study.
    • September 4, 2025
  • Adapting Kubernetes for high-performance IoT Edge deployments

    Alexandre Peixoto Ferreira
    Alexandre Peixoto Ferreira
    In this blog post, we address heterogeneity in IoT edge deployments using Kubernetes.
    • August 21, 2024