← How-Tos
electronics Jul 20, 2026 ◯ 5 min read

Solar Power for Maker Projects: Panels, Charge Controllers, and Battery Chemistry

solar powercharge controllerlifepo4lithium ionbattery chemistryoff gridmpptesp32energy harvesting

Once a project needs to run somewhere without a wall outlet — a garden sensor, a wildlife camera, a remote LoRa node — solar power turns from a nice-to-have into the whole point of the build. But small-scale solar for maker electronics has its own set of gotchas that are different from both household solar and generic USB power banks: panel sizing, charge controller choice, and battery chemistry all interact, and getting one wrong means a project that dies every winter or a battery that swells inside its enclosure. This covers how to size a solar setup for a low-power microcontroller project and pick the right battery chemistry for the job.

How Much Panel Do You Actually Need

Start from the load, not the panel. An ESP32 in deep sleep with a periodic sensor read and WiFi transmit draws wildly different average current depending on how often it wakes up — a node that wakes every 10 minutes to read a sensor and transmit over WiFi averages roughly 1-3mA, while one that stays connected and polls continuously can average 60-80mA or more. Multiply your expected average current by 24 hours to get daily consumption in mAh, then size the panel to replace that energy during your worst realistic sunlight day, not an ideal one.

Panel SizeTypical Output (full sun)Good For 1-2W (credit-card sized)~150-300mA at 5-6VDeep-sleep ESP32 sensor nodes with infrequent wake cycles 5-6W~800mA-1A at 5-6VESP32-CAM or nodes that transmit more frequently, moderate cloudy-day margin 10-20W1.5-3A+ at 6-18VRaspberry Pi Zero-class projects, always-on nodes, winter/low-sun climates

As a rule of thumb, oversize the panel by 3-5x your calculated daily need in a location with reliable sun, and more like 5-8x if the project has to survive winter or a cloudy climate — panels routinely produce a fraction of their rated output on overcast days, and the battery has to make up the difference from stored reserve.

Charge Controllers: PWM vs MPPT

The charge controller sits between the panel and the battery, and prevents overcharging while regulating the panel's variable output into something the battery can safely accept.

For single-cell lithium projects, small dedicated solar LiPo chargers (built around chips like the CN3065 or similar) combine charge controller and battery protection in one small board and are the simplest option for ESP32-class projects — see our TP4056 LiPo charger guide for the equivalent wall-power version of this circuit.

Battery Chemistry Comparison

ChemistryNominal VoltageCycle LifeCold WeatherBest For Li-ion / LiPo (18650, pouch cells)3.7V/cell~300-500 cyclesPoor below freezing — capacity drops sharply, charging below 0°C degrades the cellsCompact, low-cost solar sensor nodes in mild climates; needs a protection circuit/BMS LiFePO4 (LFP)3.2V/cell2000-5000+ cyclesMuch better cold tolerance than Li-ion, though charging below freezing still isn't recommendedOutdoor installs meant to last years — longer life and much better thermal stability offset the lower energy density and higher up-front cost NiMH1.2V/cell~500-1000 cyclesGood, tolerates cold better than lithium chemistriesSimple, safe, no BMS required — a reasonable low-stakes option for hobby projects, though bulkier per watt-hour than lithium Sealed lead-acid (SLA/AGM)2V/cell (12V pack)~300-500 cyclesFair, but capacity drops in cold and charging is less efficientCheap, heavy, high-current backups where weight doesn't matter — larger Pi-class or off-grid setups

For most outdoor ESP32/Pi projects meant to survive multiple seasons unattended, LiFePO4 is worth the price premium: the cycle life alone means the battery will likely outlast the rest of the electronics, and its stability under thermal stress and physical damage is meaningfully safer than Li-ion for something sitting outside unattended in a sealed enclosure.

Sizing the Battery for Overnight and Cloudy-Day Runtime

The battery needs to cover the load through the night at minimum, plus enough reserve to survive a stretch of poor sunlight. A practical target is 3-5 days of autonomy — battery capacity (in mAh) that could run the load alone for 3-5 days with zero solar input. For a node averaging 5mA, that's roughly 5mA × 24h × 4 days = 480mAh, so a single 18650 (2000-3500mAh typical) has generous margin; for higher-draw projects, scale accordingly.

Wiring and Protection Notes

Safety

Lithium battery chemistries (Li-ion and LiPo especially) can enter thermal runaway if punctured, overcharged, or charged at unsafe temperatures — always use a battery with an integrated protection circuit/BMS for unattended outdoor projects, and keep any bare lithium cells out of direct sun and sealed enclosures that could trap heat. Never charge lithium batteries below freezing. If a cell ever swells, discolors, or feels hot to the touch, remove it from service and dispose of it at a battery recycling point rather than in household trash — lithium batteries are a known fire risk in waste streams.

Getting solar right on a small project comes down to being honest about worst-case sun, not best-case, and matching the charge controller and battery chemistry to how the project will actually be deployed. Do that up front and a well-built solar sensor node can genuinely run for years without a single visit.