Power efficiency

Maximising MeshCore battery duration

Transform battery life from a few days to weeks or months through intelligent configuration

The value of power efficiency

Out of the box, a MeshCore node drains a standard 18650 cell (3000mAh) within 2-5 days. Adequate for testing, but impractical for a rooftop repeater or extended emergency deployment.

Through careful configuration and hardware choices, runtime extends dramatically to weeks or even months. This makes solar installations viable and ensures mobile units remain operational throughout extended emergencies.

Understanding power states

Active transmission/reception

Radio fully engaged sending or receiving packets. Highest consumption by far. ESP32: 80-260mA, nRF52: 10-20mA.

Verbruik: 80-260mA (ESP32)
Gebruik: During packet handling
💤

Light sleep

Primary operating state. Processor dormant, radio periodically sampling. Optimal compromise between responsiveness and longevity. ESP32: 15-30mA, nRF52: 2-5mA.

Verbruik: 15-30mA (ESP32)
Gebruik: Normal operation
😴

Deep hibernation

Nearly everything disabled except real-time clock. Minimal draw but node becomes unreachable. Reserved for tracker devices. ESP32: 10µA-1mA, nRF52: 1-100µA.

Verbruik: 10µA-1mA (ESP32)
Gebruik: Asset trackers, environmental sensors

Six strategies for extended runtime

1. Reduce transmission power

Factory setting uses maximum 22 dBm. Dropping to 17-20 dBm reduces coverage by roughly 30% whilst cutting power draw substantially. Perfect for urban deployments with abundant nearby nodes.

2. Lengthen wake intervals

Default configuration polls frequently. Extending to 10-30 second intervals for repeaters, or 60+ seconds for trackers, dramatically reduces cumulative active time.

3. Disable unnecessary GPS

GPS modules draw 30-60mA continuously. Fixed-location repeaters gain nothing from position data. Disabling GPS alone saves 30-50% of total consumption.

4. Disable unused radios (esp32)

WiFi adds 80-200mA, Bluetooth contributes 10-30mA. Headless repeaters requiring no smartphone connection can disable both, retaining only LoRa functionality.

5. Select nrf52 over esp32

nRF52-based hardware consumes 5-10 times less than ESP32 equivalents. RAK WisBlock variants achieve weeks to months where ESP32 manages days. Trade-off: no WiFi capability.

6. Optimise spreading factor

Lower spreading factors (SF7-SF9) mean shorter packets, briefer transmissions, reduced consumption. SF12 uses 10x more energy than SF7. SF9-SF10 typically offers good balance.

Runtime comparison table

Configuration Typical draw 3000mAh runtime 10,000mAh runtime
ESP32 factory settings (GPS+WiFi active) ~150mA ~20 hours ~2.5 days
ESP32 optimised (GPS+WiFi disabled) ~40mA ~3 days ~10 days
nRF52 factory settings (GPS active) ~25mA ~5 days ~17 days
nRF52 optimised (GPS disabled, low-power) ~5mA ~25 days ~83 days

Transmission power by hardware

Different devices support varying power levels. Reference this table for safe configuration.

⚠️ CAUTION

Exceeding specified maximums can permanently damage your radio hardware. Never exceed stated limits. When uncertain, use factory defaults.

Hardware Maximum TX Suggested Factory
Heltec V3 22 dBm 17-20 dBm 22 dBm
Heltec V4 (Station G2) 30 dBm 20-25 dBm 22 dBm
LilyGo T-Deck Plus 22 dBm 17-20 dBm 22 dBm
RAK WisBlock (nRF52) 22 dBm 14-18 dBm 20 dBm
SenseCAP P1 Pro 22 dBm 17-20 dBm 22 dBm

Reduced transmission power trades coverage for significantly extended battery life. In repeater-rich urban environments, 17 dBm typically proves sufficient.

Power efficiency questions

What capacity delivers one week of operation?

Configuration dependent: Optimised ESP32 (~40mA) requires 6700mAh for seven days. Optimised nRF52 (~5mA) needs only 840mAh. A 10,000mAh powerbank comfortably covers ESP32; 20,000mAh extends to fortnight.

Can solar panels enable permanent operation?

Absolutely! A 5W panel plus 10,000mAh buffer sustains an optimised ESP32 (40mA average) indefinitely across British seasons. nRF52 variants require only 2W panels. See our solar construction guide.

Why does my node consume more than expected?

Investigate: GPS enabled? WiFi/BLE active? Elevated TX power? Debug logging running? Measure precisely with USB power monitor. Light sleep should average under 50mA for ESP32.

Light sleep versus deep sleep - what's the distinction?

Light sleep maintains periodic radio monitoring, keeping the node responsive. Deep sleep disables everything until a timer triggers wake-up. Light sleep suits repeaters (must remain reachable); deep sleep suits trackers (periodic position reports only).

Which cell chemistry performs best?

18650 lithium-ion (3.7V, 2500-3500mAh) offers optimal capacity-to-size ratio at reasonable cost. For extreme longevity: 21700 cells (5000mAh) or LiPo packs. Avoid alkaline cells (poor discharge characteristics for LoRa loads).

Can I monitor power consumption live?

Yes, through MeshCore telemetry. Enable power reporting in device settings to view voltage and estimated current in the app. For laboratory-grade accuracy: add an INA219/INA226 current sensing module.

Simple changes, dramatic improvements

Disable what you don't need (GPS, WiFi), reduce transmission power appropriately, and consider nRF52 hardware for ultra-low-power deployments. Transform days into weeks or months of continuous operation.