The idea
A weather station that goes anywhere without needing a power cable. Solar panel keeps the battery topped up, the ESP32 sleeps almost all the time, and once a day it wakes up, reads the sensors, and saves the data.
Pull out your phone, connect to the station’s WiFi, and fetch everything it has recorded as a CSV. No cloud, no subscription, no infrastructure. Just a small box on a post that has been quietly watching the weather.
Why deep sleep matters
Running an ESP32 flat out with WiFi active will drain a LiPo in a few hours. Running it in deep sleep between readings drops the current to microamps. A small solar panel can keep up with that easily — even on a cloudy day.
The plan is to wake once at a set time, take readings, save them, then go back to sleep. WiFi only activates when a phone connects to fetch data. Everything else stays off.
Storage: LittleFS, not NVS
NVS is shaped for key-value config — settings and calibration values that get written once and read often. It is not designed for accumulating records and hits its ceiling faster than expected with structured data.
LittleFS with a rolling CSV file is the right tool here. More headroom, a cleaner mental model, and you pull a CSV straight to your phone instead of awkwardly enumerating key names. The LittleFS guide in the memory series covers exactly this.
What it measures
- Temperature, humidity, atmospheric pressure (BME280 - three wires, done in an afternoon)
- Wind speed (reed switch anemometer — already purchased)
The anemometer is a reed switch type: one GPIO interrupt counting magnet pulses over a sample window, multiplied by the manufacturer’s calibration constant. Because the ESP32 is asleep most of the time, the approach is to wake up, sample for 30-60 seconds, log the average, then sleep again. Gusts between readings are missed, but that is acceptable for a once-daily station.
Placement
The whole point is that it has no mains cable. Mount it on a fence post, a roof bracket, a balcony rail — wherever makes sense. The solar panel handles the rest.
Status
Planning. Anemometer already purchased. Enclosure not designed.