Arduino Project Hub
Project tutorial

MKRZero Weather Data Logger © GPL3+

Read temperature and humidity values in a remote location and store the data in an SD card.

  • 31 respects

Components and supplies

Apps and online services

About this project


With this project, you will be able to create in a few minutes a temperature and humidity data logger. You can use the built-in SD card reader of the MKRZero to store the data. Plug a battery, add a protective case and you will have a neat weather data logger that you can use in remote locations where no connection is available. Imagination is the limit!


In order to build the weather data logger we will use an Arduino MKRZero board. The small form factor and built-in SD card reader makes it a perfect choice for this project.

Second we will need a DHT22 temperature and humidity sensor. This sensor is easily available and very versatile. It can be powered from 3.3V to 6V. We will connect the power pin of the DHT22 to the VCC (3.3V) pin in our MKRZero. We will also need a 4k7ohm pull up resistor for the data line and a 100nF capacitor to clean the noise in the power line. For more info on DHT22, see Adafruit's DHT tutorial.

We will use a small breadboard with 3 jumper wires to connect everything together, a SD card to store the information and a 3.7V LiPo battery to make our data logger portable.


It is important to keep your electronics dry, so if you are planning to put your weather data logger in a harsh environment, don't forget to use a protective case to avoid damaging the electronics!


  • Plug the MKRZero to the breadboard
  • Plug the DHT22 to the breadboard
  • Connect the Power pin of the DHT22 to the VCC pin in the MKRZero.
  • Connect the Data pin of the DHT22 to digital pin 7 in the MKRZero.
  • Connect the ground pin of the DHT22 to GND pin in the MKRZero.
  • Connect the 100nF capacitor between the Power and GND pin.
  • Connect the 4k7 pull up resistor between the Power and the Data pin.
  • Plug in the SD card in the MKRZero board.

Arduino IDE

Ok, now you should have all the electronics placed together. It's time to upload the sketch to the MKRZero board.

For this project you will need the libraries for the DHT22 sensor. You can find the libraries in this GitHub repository. Download them and place them in "libraries" within your sketchbook folder.

Now you need to download the sketch for the weather data logger and place it in the sketchbook folder. You can find the sketch down in the tutorial.

Open your Arduino IDE and use the Boards Manager to install the MKRZero board. Once installation is finished you should be able to select the MKRZero board from the menu Tools -> Board.

Now connect the MKRZero to your computer using the microUSB cable.

In the IDE, go to File->Sketchbook->MKRZERO_WeatherDataLogger and open the sketch. Compile and upload to the board.

Voila! Your system is ready for battle. You can see the values also from the serial monitor.




MKRZERO_Weather_Data_Logger Code


Similar projects you might like

Fun Cases for Electronic Components

Project in progress by team

  • 19 respects

Useless box

Project showcase by Igor Putnik and brzi

  • 9 respects

Weather Clock

Project showcase by Tittiamo

  • 11 respects

Simple Ultrasonic distance measurer with LCD display

Project tutorial by onatto22

  • 4 respects
Add projectSign up / Login