Build a custom solar weather station using a LiFePO₄ battery

This project use the SparkFun weather meter kit and other sensors, the brain of this Weather Station is an ESP32-S3.

Solar Weather Station Project

To build a safe, autonomous weather station, the choice of battery chemistry is crucial. That’s why the Lithium Iron Phosphate (LiFePO₄) batteries are the recommended choice.

  • Safety: Extremely stable, no thermal runaway risk.
  • Longevity: 2,000–5,000 cycles (vs. 500–1,000 for standard Li-ion).
  • Temperature tolerance: Works well from -20°C to +60°C.
  • Low maintenance: Ideal for long-term, low-power applications.
  • Eco-friendly: No cobalt, easier to recycle.
  • Solar compatibility: Handles frequent partial charging/discharging.

However, there are two main issues:

  1. The voltage range 2,5 to 3,65 vdc.
  2. The charging chip, Not widely adopted at the moment.

The prototyping phase

Alimentation

  • Battery 32700 LiFePo4 (7200mAh or less)
  • SolarPanel 5 Volts (400mA or more)

Control

  • Adafruit ESP32-S3 Feather - 4MB Flash, 2MB PSRAM
  • BQ25185 USB / DC / Solar Charger with 3.3V (hack require to change the type of battery)

Sensors

  1. Internal Temperature (BME280)
  2. Humidity (BME280)
  3. Barometric Pressure (BME280)
  4. Wind Speed ( Sparkfun Weather Meter )
  5. Wind Direction ( Sparkfun Weather Meter )
ESP32 S3 with datalogger

We need to put all the electronics and the battery inside a Stevenson screen (3D printed)

A Stevenson screen, or instrument shelter, is a shelter or an enclosure used to protect meteorological instruments against precipitation

ESP32 S3
ESP32 S3 + bq25185 + BME280 + Battery 32700 LiFePo4
bq25185

The UI to visualize data

UI of weather station

The next step will be to create a custom PCB, here is the project repository :

GitHub - cfdev/mSolarWeather: This project use the SparkFun weather meter kit and other sensors · GitHub


.