This tutorial will show how to build ESP8266 WiFi air pressure and weather forecast sensor with Arduino, BMP180 and EasyIoT server.

Material

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.08
$1.81
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.87
$1.60

 

-BMP180 Barometric Pressure/Temperature/Altitude sennsor module

BMP180 Digital Barometric Pressure SensorBMP180 Digital Barometric Pressure Sensor
$1.62
$1.57

 

-EasyIoT server (Raspberry Pi or Windows)

RASPBERRY PI 3 - Model B. 1GB RAMRASPBERRY PI 3 - Model B. 1GB RAM
$36.54
$39.96

 

See buying guide at the end of page for details and please shop in our store to support EasyIoT framework.

BMP180 pressure sensor

WiFi Sensor

Connect Arduino and ESP8266 module. If you are using 5V Arduino follow "Connect ESP8266 and 5V Arduino" instructions. For 3V Arduino folow "Connect ESP8266 and 3V Arduino" instructions. BMP180 is not 5V tolerant, but if you are using module, most of them use 3.3V regulator. Connect power lines to VCC and GND. SDA to A4, SCL to A5.

BMP180 Arduino connection

Arduino BMP180 module
VCC VCC
GND GND
A4  SDA
A5 SCL

 

 

 

 

 

 

Next program Arduino with program. Program is available at GitHub ESP8266 Air pressure example. In program example is used HW serial port. Correct to software serial port if your HW port is bussy. Also correct ESP8266 reset pin, AP username and password and server IP address. Fix altitude #define ALTITUDE 301.0 in source code. Altitude is important to correctly calculate air pressure at sea level.

Configure EasyIoT server

Download latest version of EasyIoT server and follow install instructions. Go to in Web browser and enter EasyIoT server IP. Click Configure->Drivers->Esp8266 EasyIot Driver and button "Add module". Then add new modules to group.

Weather forecast will be visible after 30 minutes, when Arduino can calculate air pressure difference.  

ESP8266 air pressure and weather forecast 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.

BMP180 Digital Barometric Pressure Sensor

The BMP180 is the new digital barometric pressure sensor of Bosch Sensortec, with a very high performance.

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 #5 Ants Tamm 2016-01-30 11:16
Today is good day. May be. I repair this sketch with small corrections for Pro MIni. https://codebender.cc/sketch:231747 . Veryfication without errors on codebender site.
+1 #4 Ants Tamm 2016-01-26 20:11
Second question.
Correct to software serial port if your HW port is bussy. Also correct ESP8266 reset pin,
How i do this ?
+1 #3 Ants Tamm 2016-01-26 17:42
Arduino mini pro 328 3,3v ftdi adapter, esp-01 arduino ide 1.6.5 In file included from easyiot_bmp180.ino:11:0:/home/insippo/sketchbook/l ibraries/Esp8266EasyIoT/Esp8266EasyIoT.h:25:20: fatal error: EEPROM.h: No such file or directory
#include
^
compilation terminated.
Sketch Eeprom read working without problems.
+1 #2 Lewys A Martin 2015-03-04 04:12
Hi, what is altitude measured in?

feet or meters?

thanks
#1 DarioCdj 2015-02-01 06:14
And this is a part of chronotermostat or that project include another BMP180? Because i suppose that this sensor must be at the exterior of house and a chronotermostat inside home...

You have no rights to post comments