Sizing a Solar System for Your Climate
Solar panel sizing depends heavily on your geographic location. The same 5W panel produces dramatically different energy in Portland, Oregon vs. Phoenix, Arizona. This guide walks through climate-specific sizing calculations.
Peak Sun Hours by Region
Peak Sun Hours (PSH) is the number of hours per day when solar irradiance averages 1,000 W/m². It's the key variable in solar sizing calculations.
| Region | Winter PSH | Summer PSH | Annual Average PSH |
|---|---|---|---|
| Phoenix, AZ | 4.5 | 7.5 | 6.0 |
| Los Angeles, CA | 4.0 | 6.0 | 5.2 |
| Denver, CO | 3.8 | 6.5 | 5.1 |
| Dallas, TX | 3.5 | 6.5 | 5.0 |
| Atlanta, GA | 3.2 | 5.5 | 4.5 |
| Chicago, IL | 2.5 | 5.5 | 4.0 |
| Seattle, WA | 1.5 | 5.5 | 3.5 |
| Portland, OR | 1.5 | 5.5 | 3.3 |
| Anchorage, AK | 0.5 | 6.0 | 3.0 |
PSH source: values are conservative sizing-design figures derived from NREL PVWatts / NSRDB station data for representative cities in each region; look up your exact site in PVWatts before finalizing a build. Winter columns reflect the worst-month average (e.g. December). The "Annual Average" column is a design figure for rough comparison — NREL's pure annual mean runs a little higher in cloudy locations (e.g. Seattle's true annual mean is ~4.9 PSH, but its winter worst-month near 1.5 is what governs sizing). Always size the panel against the winter PSH, not the annual average. Phoenix winter is shown at a conservative 4.5; some sources put it nearer 5.0–5.5. (as of 2026-06-08)
Design for the worst month: Use winter PSH for sizing, not annual average. In most of the Northern Hemisphere, a system sized for the December PSH minimum will have surplus power in other months — but you still need battery autonomy for multi-day cloudy spells, and in snowy regions you must account for snow covering the panel.
Solar Sizing Calculation
# Formula: Panel watts needed = Daily energy need / (PSH * derate factor)
# Daily energy (Wh/day) = average current (mA) * system voltage (V) * 24 h / 1000
# Derate factor (~0.75) covers controller + wiring + temperature + soiling losses.
# This is a CLEAR-DAY average; the PSH figure assumes typical sun. Multi-day
# overcast is handled by BATTERY reserve (see Battery Sizing), not panel size.
# Example: RAK4631 (nRF52840) repeater in Chicago winter
# Representative average draw ~10-15 mA; measure your own node.
Daily energy: 15mA avg * 3.7V * 24hrs / 1000 = 1.33 Wh/day
PSH (Chicago winter, per NREL PVWatts): 2.5 hours
Derate factor: 0.75
Panel size = 1.33 Wh / (2.5 h * 0.75) = 0.71W
# This 0.71W is the clear-winter-day MINIMUM. A 1W panel meets the load only on
# a clear day and gives no headroom for the multi-day overcast that is normal in
# Chicago Nov-Feb. Cloudy-day survival comes from battery reserve, not panel size.
# Use at least a 5W panel (a ~7x safety multiple over the clear-day minimum, to
# recharge quickly between storms) AND size the battery for 5-7 no-sun days.
# For Raspberry Pi room server + RAK4631 in Chicago winter:
Pi Zero 2 W avg: 300mA * 5V = 1.5W = 36 Wh/day # representative; verify your load
RAK4631 avg: 15mA * 3.7V = 0.055W = 1.33 Wh/day
Total: 37.33 Wh/day
# Computed minimum:
Panel needed: 37.33 / (2.5 * 0.75) = 19.9W
# Choose the next-larger standard size for margin -> use 25W panel minimum.
Battery Sizing for Autonomy
# Formula: Battery capacity (Ah) = Daily energy * Autonomy days / (usable fraction * voltage)
# Usable fraction (plan-to depth of discharge for longevity):
# LiFePO4 ~0.80 (cells can do 0.80-0.90), LiPo/Li-ion ~0.80, SLA/lead-acid ~0.50
# For emergency-comms nodes, target 5-7+ days of autonomy: panels do not help
# during multi-day overcast, so the battery must carry the whole no-sun stretch.
# RAK4631 repeater with 3-day autonomy, 3.7V LiPo:
Battery Ah = (1.33 Wh/day * 3 days) / (0.80 * 3.7V)
= 3.99 Wh / 2.96
= 1.35 Ah minimum
# 3 days is a general minimum; for an emergency-comms node, size for 5-7 days.
# A 10Ah LiPo gives: 10Ah * 0.80 * 3.7V / 1.33 Wh/day = ~22 days of autonomy.
# That is a comfortable reserve for this very-low-draw node, but the reserve is
# only useful if the battery is kept above freezing and the panel can recharge it
# between cloudy spells. Do not treat panel size and battery reserve as
# interchangeable - the battery carries no-sun days, the panel recharges between them.
# For Pi + RAK at 3-day autonomy, 12V LiFePO4:
Battery Ah = (37.33 * 3) / (0.80 * 12V) = 11.7 Ah minimum
# Use a 20Ah battery for comfortable margin (and 5-7 day reserve if emcomm-critical).
Seasonal Charging Strategies
- High-sun climates (AZ, NM, TX): Standard sizing with modest battery. More at risk from heat-related battery degradation than insufficient solar.
- Variable climates (CO, GA, NY): Size for winter worst-case. A controller with proper charge termination prevents overcharge, so excess panel capacity in summer is simply wasted rather than harmful — but only if the controller terminates charging correctly. Summer heat itself stresses lithium cells: keep the battery shaded and ventilated, and do not charge Li-ion/LiPo above ~45 °C.
- Low-sun climates (PNW, AK): Over-size significantly. A 20W panel for a 1W load is not overkill in Portland. Alternatively, use a second backup charging source (wind generator, AC trickle charge from nearby structure). In sub-freezing weather, ensure the BMS or charge controller inhibits charging below 0 °C — charging a frozen lithium cell causes plating and a permanent internal-short hazard.
No comments to display
No comments to display