How to make a Solar Powered WI-FI Weather Station using ESP8266

In this project, a weather station that monitors physical parameters such as Temperature, Pressure, Humidity, altitude and UV level, etc. has been developed using a custom made PCB from PCBWay. Some of the salient features of this project include being able to be connected to a Wi-fi and uploading the data to the web along with remote battery status monitoring. It uses a Li-ion battery and a solar panel and is an environmentally friendly device. One of its major advantages is that it can be installed in remote sites and in geographically challenging environments.


Components Used

Components used in Solar Powered WI-FI Weather Station
Components Required

Image Source: Instructables

  • Wemos D1 Mini Pro
  • TP 4056 Charging Board
  • BME 280 sensor
  • BMP280
  • DS18B20 Sensor
  • Switch
  • Screw Terminals
  • PCB standoffs
  • 18650 Battery
  • 18650 Battery Holder
  • Solar Panel
  • Straight Headers Pin
  • 22 AWG wire
  • Super Glue
  • 3D printing filament -PLA


PCB design and fabrication

The PCB was designed in the EasyEDA online software by drawing a schematic and after that switching to the PCB layout. It is designed in such a way that minimum space is occupied by the board to optimize the manufacturing costs. After routing and adding text, the board is ready to be manufactured.

Once the PCB design is complete, we just need to click the “Gerber Output” button, save the project and we will be able to download the Gerber files which are used in the manufacturing process of the PCB. To know more about the process of ordering a PCB from PCBWay, check out High quality and low-cost PCBs at your doorstep through PCBWay!

Image Source: Instructables

Power Supply

For the weather station to work continuously, it needs an uninterrupted power supply. This can be obtained via a battery but after some days, the battery will get drained and stop working. So we would have to go to the site where the weather station is installed and replace the battery. In order to avoid this periodic inconvenience, a solar charging circuit is proposed as shown in the figure above. It absorbs the energy coming from the sun and charges the batteries to power the Wemos board. The battery is charged from a Solar panel through a TP4056 charging module. The TP4056 module comes with and without a battery protection chip.


Implementing Deep sleep mode

If any electronic or electrical device works continuously it is obvious that the temperature will rise and if the temperature rises well above a certain limit, that may cause damage to the equipment. Therefore, we have to lower the power consumption of the ESP8266 WiFi chip. This can be obtained by introducing deep sleep mode, the most power-efficient method for ESP chip. By using this mode, ESP8266 can be put into hibernation and the battery can be saved. We can wake it up at regular intervals or whenever we wish to take any measurements.

Component Operation mode – Sleep mode

  1. ESP8266 170 mA – 10 uA
  2. CH340 12 mA – 50 uA
  3. Built-in LED 3 mA – 0 uA
  4. Voltage monitor 0.006 mA – 6 uA

Total 185 mA – 66 uA

If the sleep-wake cycle is 10 minutes, with a 30 second wake time, the energy consumption budget looks like this:

Wake time 185 mA for 0.5 minutes = 92.5 mA-minutes

Sleep time 0.066 mA for 9.5 minutes = 0.627 mA-minutes

Total in 10 minutes = 93.13 mA-minutes

Thus the average current consumption is 9.3 mA.


Selecting the solar panel

To select a suitable solar panel for the weather station, certain technical specifications have to be considered which are given below –

Average current consumption = 9.3mA

Charge required to run the device for the whole day = 9.3mA X 24 hours = 223.2mAh

To charge a 3.7V Li-Ion battery, a solar panel of voltage 5 to 6V is adequate.

Required Solar Panel rating = 223.2 mA at a voltage of around 5 to 6 volts.

Solar panel rating = 223.2mA x 5V = 1.1W

Solar Panel Selected: 1W / 5V to 6V


Assembling the PCB

Once you have received your order from a fabrication house such as PCBWay, the next step is to solder the components using a soldering iron and solder.

Following are the details about the headers :

  1. Wemos Board – 2 x 8pins Female
  2. BMP280 – 1 x 6pins Female
  3. I2C Port – 1 x 4pins
  4. Port P1 – 1 x 4pins
  5. Port P2- 1 x 3pins
  6. Port P3- 1 x 4pins
  7. Port P4- 1 x 3 pins

After the PCB has been successfully assembled, add the modules and the battery, mount the standoffs, and put the set-up in a printed enclosure to protect it from rains and other weather conditions.

Source Code

Download the code from GITHUB:

Github Link

The code includes monitoring the weather parameters on Thinspeak and Blynk App.

** Read more about this project here: Clickhere


Are you an electronics enthusiast but lack funds for your project?

Here’s something PCBWay has to offer!

You can submit your projects in their shared projects column and get a chance to be sponsored! Check out more info here – Non-profit Project Sponsorship

Leave a Comment