The first real post of a project on my blog has to be something special.
So I decided to write a short post on my very fist project I finished about 3 Years ago.
I made a simple ESP 8266 IoT Weather Statition. I used the BME 280 sensor which is capable of measuring Humidity, Temperature and Pressure. It connected to a Wemos-D1 mini that uses the ESP8266 chip.
The whole weather station is powered using a 18650 LiIon Battery which can be charged over USB or from the sunlight using a solar panel. To have a bigger Power output i connected three 5V Solarpanles in Series. It now takes aprrox. 1 sunny summer day to charge the battery completely. All the charging is controlled using one of the TP4056 LiIon charging modules.
See all parts i used in the Parts List below.
Download Schematic here
The µController was programmed using the Arduino IDE, unfortunately I can´t find the code anymore.
But it´s basically reading the BME280 sensor using the I²C protocol. One importan point is that I had to change the sensor adress to 0x77 which can be done with the bme.begin(0x77) statement.
After reading the sesors value it also reads the battery voltage using a simple voltage devider and the one analog pin of the ESP8266.
All these values are than stored in the Thingspeak IoT network using the Tingspeak Library and the POST-API.
After everthing is done the µController goes into “Deep Sleep Mode” for 5 minutes and repeats it´s procedure. Therefore I use the esp.deepsleep(miliseconds) code line. Make sure to connetc Pin ‘D0’ to the ‘RST’ pin (as shown in the wiring diagram) so the ESP get´s the impulse to wake up again.
- Wemos-D1 mini
- TP4056 LiIon Charger
- 18650 LiIon Battery
- 3x 5V Solar Panel
- Connecting Terminal
- 18650 Holder