• EUR€
  • £GBP
  • $USD
PROJECTS ArduinoGravity

How to Make an Arduino Weather Station with DHT11 Sensor

DFRobot Jul 02 2019 1133

Literally the simplest way to make a weather station!

Things used in this project

Hardware components
Arduino Nano R3
DFRobot I2C 16x2 Arduino LCD Display Module
DHT11 Temperature & Humidity Sensor (4 pins)

Software apps and online services
Arduino IDE
Hand tools and fabrication machines
3D Printer (generic)
Bantam Tools Desktop PCB Milling Machine
Breadboard, 170 Pin
10 Pc. Jumper Wire Kit, 5 cm Long
Hot glue gun (generic)


Recently I started playing around with DHT11 Temperature and Humidity sensor, at that time around, I had an idea to make a small yet effective Weather Station, so in this project, we will use the DHT11 sensor from the previous tutorial and turn it into mini weather station for our desk, so follow up this tutorial to build this awesome Weather Station for yourself!

Step 1: Watch the Video!

Step 2: Brush Up the Basics!

in this project, we will use 3 things, so we need to Brush up our Basics on these 3 things

1. Arduino micro controller.

I have previously covered the very basics of Arduino Micro controllers in a video, please go through it to understand the very basics of Arduino Boards.

2. LCD

we will be using i2c lcd in this project, to understand its basics and working, lets refer this video of mine, which explains very basics of writing i2c code in easy steps.

3. DHT 11 Sensor

DHT 11 sensor is a Temperature and Humidity sensing module, which uses NTC - i.e. negative temperature coefficient to convert the temperature into equivalent resistance change. watch the following video for more detailed Tutorial and Working of DHT11 Sensor.

Step 3: Build the Circuit!

for this project, we are using an i2c lcd for display and DHT 11 sensor, along with Arduino Nano, so complete this circuit, I first designed and created a PCB design according to simple connections as shown in attached pictures, using a free software tool called "Easy EDA " but I could not order the PCB due to time constrains, so I rather used a breadboard, and connected the following pins to arduino, but if you want to order the PCB, you can use the following gerber files to order the pcb / make it for yourself

DHT11 connections
GND - GND of arduino
Data - D2 pin of arduino
VCC - D3 pin of arduino

( I used pin D3 of arduino to create a virtual Vcc pin, by sending digital HIGH from code to power DHT11 )

LCD connections
VCC - 5V of arduino
GND- GND of arduino
SDA - A4 of arduino
SCL - A5 of arduino

Step 4: Upload the Code

In this project, I wanted a startup animation screen which would display the my Channel name and Project name, next I needed to display the data from DHT11 sensor, so I set the cursor position on my LCD according the convenience and simply dumped the Temperature and Humidity values from the Variables that hold the data from sensor on the LCD screen using lcd.print command and that’s pretty much it, you can download and read the code, it’s pretty simple and straight forward. download the code and read it for better understanding.

Step 5: Make the Enclosure

I firstly thought about make a 3D printed enclosure, which I designed on the Autodesk's Fusion 360 software. well, I didn't got this enclosure 3D printed, as I didn't have any access to a 3D printer, I rather used a piece of cardboard, which I snipped according to CAD dimensions attached in this step and then I used a bit of Hot-Glue to mount the parts and then the box was complete

Step 6: Testing!

after all these steps, I simply powered the arduino nano using USB, and tested the project, once the power is connected, the project takes around 1 second to startup and initialize, once the lcd's backlight is on, the project says Mission Critical, Weather Station for around 600 microseconds and then the second screen loads up showing the room temperature in degree Celsius (°C) unit and Humidity in percentage (%)

Step 7: Thank You!

if you have any question or suggestion drop me a message on any of the following social media links, also if you make this similar project, don't forget to tag me on any of the social media platform!