In this tutorial we will show how to make Wifi temperature and humidity sensor with Arduino, ESP8266 WiFi module and DHT22. Data will be sent to EasyIoT server.

Materials:

See buying guide at the end of tutorial.

-ESP8266 module

ESP8266 ESP-01 Serial WIFI Wireless Transceiver ModuleESP8266 ESP-01 Serial WIFI Wireless Transceiver Module
$2.45
$17.00
ESP8266 ESP-03 Serial WIFI Wireless Transceiver ModuleESP8266 ESP-03 Serial WIFI Wireless Transceiver Module
$2.07
$2.15
ESP8266 ESP-12 Serial WIFI Wireless Transceiver ModuleESP8266 ESP-12 Serial WIFI Wireless Transceiver Module
$2.09
$1.80
ESP8266 ESP-05 Serial WIFI Wireless Transceiver ModuleESP8266 ESP-05 Serial WIFI Wireless Transceiver Module
$1.88
$3.89
ESP8266 ESP-07 Serial WIFI Wireless Transceiver ModuleESP8266 ESP-07 Serial WIFI Wireless Transceiver Module
$2.18
$1.87

 

-Arduino Pro Mini 8Mzh 3.3V

3.3V 8Mhz Arduino Pro Mini3.3V 8Mhz Arduino Pro Mini
$1.96
$1.60

 

-5V power supplay

5V 2A Charger Micro USB5V 2A Charger Micro USB
$2.43
$2.99

 

-3.3V power supplay (see dataheet)

10Pcs AMS1117-3.3 LM1117 3.3V 1A SOT-223 Voltage Regulator10Pcs AMS1117-3.3 LM1117 3.3V 1A SOT-223 Voltage Regulator
$0.99
$0.99

 

-DHT22 temperature and humidity sensor

DHT22 Digital Temperature And Humidity SensorDHT22 Digital Temperature And Humidity Sensor
$2.73
$2.52

 

-EasyIoT server on Raspberry Pi (see download page)

RASPBERRY PI 3 - Model B. 1GB RAMRASPBERRY PI 3 - Model B. 1GB RAM
$42.99
$40.20

 

-WiFi network (WiFi router)

 

Create Arduino sensor

First connect Arduino pro mini 8Mhz 3.3V to power supply and ESP8266 module. See ESP8266 WiFi module Arduino connection for details.

Then connect DHT22 and Arduino. Connect DHT22 VCC to 3.3V power supplay and GND to GND power supplay. Conenct DHT22 pin 2 (data) to pin 2 on Arduino.

DHT22

 

Next upload program to Arduino. Program is available on ESP8266 Temperature and humidity sensor. Make sure to correct your access point username and password and EasyIoT server IP in Esp8266EasyIoTConfig.h.

Add new sensor to EasyIoT server

Now we need to add new sensor to EasyIoT server. In web browser enter IP address of EasyIoT server. Go to Configure->Drivers->ESP8266 EasyIoT driver and enable driver.

Click Add Node button and switch on new sensor.

Wait couple of seconds.

 If everything is correct you should see message like this (no timeout message). This means that two nodes added to EasyIoT server (nodes for temperature and one for humidity).

 

Go back to Groups and modules and add new group.

Add new modules.

Add temperature module.

If you want log to database enable logging.

 

Now it is possible to see sensor data in Web interface.

Temperature chart.

In next post we will show how to create more sensors with ESP8266 and EasyIoT server.

 

Check also EasyIoT Cloud ESP8266 DHT22 temperature/humidity sensor.

See more tutorials at ​http://iot-playground.com/build​

 

Buying guide

 To support this site and EasyIoT framework development please buy in our store.

5V 16Mhz Arduino Pro Mini

Small but powerful suitable for most DIY Arduino projects.

3.3V 8Mhz Arduino Pro Mini

3.3V Arduino version. No need for shift leveler when using ESP8266.

Arduino Mega 2560

For bigger Arduino projects.

DHT22 Digital Temperature And Humidity Sensor

The DHT22 is a basic, low-cost digital temperature and humidity sensor.

5V 2A Charger Micro USB

For Raspberry Pi or sensor modules, cheap and easy power solution.

ESP8266 ESP-01 Serial WIFI Wireless Transceiver Module

ESP8266 Serial WIFI Wireless Transceiver Module

ESP8266 ESP-03 Serial WIFI Wireless Transceiver Module

ESP8266 serial WIFI model ESP-03

ESP8266 ESP-12 Serial WIFI Wireless Transceiver Module

ESP8266 serial Port WIFI wireless module ESP-12

ESP8266 ESP-05 Serial WIFI Wireless Transceiver Module

ESP8266 ESP-05 Serial WIFI Wireless Transceiver Module

 


Comments   

+1 #14 fr3d 2016-11-22 17:43
don't waste your time librairies are bugged and author doesn't answer any request.
+1 #13 Ishan 2016-03-30 10:22
Should this work with NodeMCU 12E or having an arduino board is necessary? I am unable to compile the code on NodeMCU board. sorry i am a noob in the IOT world.
#12 flyrobot 2015-05-05 16:23
Quoting Super User:
Quoting flyrobot:
Hello, this is very interesting project.
I tried all the step but no luck. the server (0.7 and 0.8 windows version) try to add module but always timeout. But sometimes it discover it but the temp does not move.
Any step i missed ?
now the ESP LED blue is flashing. I set the ESP baud to 9600.
How can i know the arduino can capture the DHT22 data? and how can i know the server capture the data from arduino?

Thanks. john


Please join forum and read this thread:
http://iot-playground.com/forum/esp8266-easyiot-driver/83-esp8266-wifi-temperature-and-humidity-sensor?start=30#1302

You can debug in ArduinoIDE if you enable debugging, and in terminal window for EasyIoT server.

Hello,

Finally, after i reflashed again the arduino and it works.

Many Thanks,

John
#11 Super User 2015-05-03 22:22
Quoting flyrobot:
Hello, this is very interesting project.
I tried all the step but no luck. the server (0.7 and 0.8 windows version) try to add module but always timeout. But sometimes it discover it but the temp does not move.
Any step i missed ?
now the ESP LED blue is flashing. I set the ESP baud to 9600.
How can i know the arduino can capture the DHT22 data? and how can i know the server capture the data from arduino?

Thanks. john


Please join forum and read this thread:
http://iot-playground.com/forum/esp8266-easyiot-driver/83-esp8266-wifi-temperature-and-humidity-sensor?start=30#1302

You can debug in ArduinoIDE if you enable debugging, and in terminal window for EasyIoT server.
#10 flyrobot 2015-05-03 15:27
Hello, this is very interesting project.
I tried all the step but no luck. the server (0.7 and 0.8 windows version) try to add module but always timeout. But sometimes it discover it but the temp does not move.
Any step i missed ?
now the ESP LED blue is flashing. I set the ESP baud to 9600.
How can i know the arduino can capture the DHT22 data? and how can i know the server capture the data from arduino?

Thanks. john
#9 Super User 2015-02-05 20:49
Quoting Piya:
Can I use two DHT22 or more sensors with only one arduino board with esp module?


You can use more sensors, even use different sensors on same Arduino board. This are only example programs. Build device that suits your need. Right now I'm building thermostat with DHT22, LCD TFT, air pessure sensor, RTC and relay.
#8 Piya 2015-02-05 14:11
Can I use two DHT22 or more sensors with only one arduino board with esp module?
#7 Super User 2015-01-28 21:42
Quoting FGoncalves:
i! thanks for this help!

I'm trying to do this, but is it possible to have the arduino to send the temperature to a php web site? or the ESP is not capable of this?

thanks!


Yes you can do it with ESP, but not with ESP EeasyIoT library. It can send data only to EasyIoT server.
#6 FGoncalves 2015-01-28 18:38
i! thanks for this help!

I'm trying to do this, but is it possible to have the arduino to send the temperature to a php web site? or the ESP is not capable of this?

thanks!
#5 Super User 2015-01-12 15:38
Quoting Lukas:
Quoting Super User:
Quoting Lukas:
Hello. Very nice project!
Can you please measure power consumption of temperature/humidity sensor?
I mean Arduino+ESP8266 etc together.
How you run those modules? Batteries or fixed power supply?

Many thanks. Lukas


I didn't measure current consumption, but for Arduino pro mini is about 15mA and max current consumption for ESP is 250mA. This are max values. By using power sawing you can lower power consumption. For ultra low power consumption is better to use different transceiver like NRF24L01 and modified Arduino - see article about low power consumption.

Yes, I can use Arduino underclocked to 1MHz.
Did you played with this configuration?
I mean: Do you have code for sending HDT22 data over NRF24L01 using Arduino Pro mini @1MHz?


See this thread: http://iot-playground.com/forum/mysensors-driver/13-low-power-door-sensor

If you have more questions please join forum.

You have no rights to post comments