Eleki Jack IoT All articles
Microcontrollers

Six Months Off-Grid: My ESP32 Sensor Fleet Survives on a Junkyard Battery and a $60 Panel

Eleki Jack IoT
Six Months Off-Grid: My ESP32 Sensor Fleet Survives on a Junkyard Battery and a $60 Panel

Every smart home project starts with a wall wart. Then another. Then a power strip under the stairs that looks like a bomb disposal scene. So I did something arguably unwise: I cut the cord entirely.

For the last six months, a dozen ESP32 boards, a handful of sensors, and every smart bulb in my hallway have run on exactly zero grid electricity. The whole setup lives on a used deep-cycle battery I bought off Facebook Marketplace for $40 and a 100-watt solar panel that cost less than a nice dinner.

Here's how it went — including the part where I learned that voltage sag doesn't care about your feelings.

The Math Before the Magic

Before plugging in a single wire, I actually measured my loads instead of guessing. That part matters, because ESP32s lie. Their datasheet says 160mA-ish under Wi-Fi transmission, but idle behavior is all over the map depending on how you flash them.

My fleet at the time:

Total came to roughly 2,500mAh per day at 5V, or about 30 watt-hours. Sounds trivial, right? It isn't, once you convert through a buck converter at 85% efficiency and account for a battery that doesn't like being drained past 50%.

The used 12V deep-cycle battery claimed 80Ah. Half of that is usable, which gives me 480 watt-hours of real storage. Three days of cloudy weather, no solar input. Tight but workable.

What Died First (Spoiler: My Assumptions)

The first failure wasn't the battery. It was my cheap 5V buck converters. The ones from the mystery-multipack drawer would drop out entirely when battery voltage sagged below 11.5V, rebooting two ESP32s into a boot loop at 3am. My Home Assistant logs from that first week look like a heart monitor during a horror movie.

Fix: I swapped in proper low-dropout modules rated down to 9V input and added a 470µF cap across each board's input. Zero brownouts since.

Second casualty: my measurement methodology. I'd been sizing solar for the annual average of my area — about 4 peak sun hours. What I didn't account for was December, when a string of gray Midwest days dropped my panel to single-digit watt-hours per day. The battery hit its low-voltage cutoff twice. Everything survived, but the hallway lights went dark like a haunted house until the sun came back.

The Voltage Sag Gotcha Nobody Warns Me About

Deep-cycle lead-acid batteries are honest, heavy, and kind of a downer. By 12.0 volts resting, you're at roughly 50% capacity. By 11.8, you're flirting with damage. My charge controller handled cutoffs fine, but the sag under load was sneaky: the LED strip would pull the battery down to 11.6V momentarily while resting voltage was a comfy 12.4V.

If you're doing this, measure voltage at the battery terminals with the load running, not after. Or better yet, buy a LiFePO4 battery like I eventually did on Black Friday. The 100Ah LiFePO4 I picked up for $180 weighs half as much, delivers nearly full capacity regardless of draw, and doesn't sulk when you use most of it.

The ESP32 Side: Squeeze Every Microamp

The off-grid constraint actually improved my firmware. Forced to care, I:

The always-on nodes went from 90mA to 55mA just by disabling Bluetooth and setting the CPU to 80MHz. Small numbers, but multiplied by 24 hours and six months, they're the difference between the system limping through winter and shrugging it off.

Six Months Later: The Verdict

Total system cost, all-in: about $290 including the LiFePO4 upgrade. Total grid electricity saved: roughly 12 kilowatt-hours over six months, or about $1.80 at my utility's rates.

So no, this is not a financial play. You will never recoup that money. But that was never the point. What I got instead:

Is it practical? Marginally. Is it a very fun distraction? Absolutely. If you've got a weekend, $300, and an unhealthy curiosity about where your watts actually go, I can't recommend it enough. Just buy the LiFePO4 battery first and skip the lead-acid phase of grief I went through.

Next up: adding a small wind turbine from a modified PC fan, because apparently I hate free time.

All Articles

Related Articles

Pancakes and PCBs: I Reflowed Real Boards on a $12 Hot Plate So You Don't Have To

Pancakes and PCBs: I Reflowed Real Boards on a $12 Hot Plate So You Don't Have To

The $50 Bench Tool That Beats the E-Waste Bin: Bringing Abandoned Smart Gadgets Back to Life

The $50 Bench Tool That Beats the E-Waste Bin: Bringing Abandoned Smart Gadgets Back to Life

Stop Guessing, Start Sniffing: Decoding Your Gadgets With a $10 Logic Analyzer

Stop Guessing, Start Sniffing: Decoding Your Gadgets With a $10 Logic Analyzer