Low-Cost Weather Station v1

As a side project, I developed a low-cost, autonomous weather station to measure key environmental parameters like temperature, humidity, wind speed, wind direction, luminosity, rain and ambient air quality. The goal was to create a DIY alternative to expensive professional stations.

The project was relevant for me because it combined my interest in IoT, Electronics, CAD, and programming.

Weather Station

Specifications

Through extensive market research online, I identified key features needed for a low-cost weather station. These included accurate sensors for temperature, humidity, wind speed, and rainfall, as well as a user-friendly interface for data visualization.

I quickly prototyped the weather station on a breadboard using an ESP32 and sensors bought on AliExpress, with the ESP32 connected to my Home Assistant in WiFi for data logging and visualization.

Prototype

ESPHome allows for easy sensor integration and management through a simple YAML configuration file. This made it straightforward to add new sensors.

ESPHome

Power Supply

One of my requirements was to ensure the weather station could operate continuously without manual intervention. To achieve this, I wired 2 small 5V solar panels in parallel, a TP4056 Lithium charge controller, and 2 18650 lithium cells in parallel for longer battery life (48h+ without recharge). I added a 3.3v voltage regulator to power the ESP32, and a voltage divider to read the battery voltage directly on the ESP32 pins.

Energy

PCB Design

Through this project, I really wanted to explore PCB design to create a compact and efficient layout for the weather station. I used KiCad to design the PCB, manufactured by JLCPCB. For this initial version, I used breakout boards for the ESP32, 3.3v voltage regulator, and other components to simplify the design process. Sensors were wired using JST connectors.

PCB

Home Assistant

I integrated the weather station with Home Assistant to visualize the data in real-time. This allowed me to monitor environmental conditions and set up automations based on sensor readings.

Home Assistant

Upcoming upgrades

Now that I demonstrated that a sub 100€ weather station is feasible, relying on cheap sensors, controller and 3D printed enclosures, I plan to enhance its efficiency by mounting power modules directly on the PCB using SMD components, implementing deep-sleep on the microcontroller and improving the overall build quality.