Skip to main content

Power and Battery Optimization on the Cubicore Devboard

Applicable models

Applicable to the Cubicore Devboard (ESP32-S3 + SX1262 on RAK3112 module).

Product status

Confirm the current hardware revision, pinout allocations, and supported firmware features in the Cubicore Devboard product documentation before deploying in field production.

This guide details battery power management, solar input harvesting, and firmware sleep optimization for the Cubicore Devboard in untethered field deployments.

1. Power Architecture Overview​

The Cubicore Devboard features an automatic dual-power OR-ing circuit and dedicated battery management subsystem:

  • TP4054 Linear Li-Po Charger: Charges single-cell 3.7V / 4.2V lithium-polymer batteries via USB-C or external solar inputs.
  • Power Path OR-ing Circuit: Automatically transitions between USB-C 5V and battery power without microcontroller resets.
  • Battery Sense Voltage Divider: Precision 1.0 MΩ / 1.5 MΩ divider on Devboard GPIO 1 for ADC voltage monitoring.
  • Dual Status LEDs:
    • CHG (Red) — Indicates active battery charging.
    • STBY (Green) — Indicates charging cycle complete.

2. Low-Power Firmware Disciplines​

Achieving multi-year battery life requires controlling power states across all subsystems:

  1. SX1262 Radio Standby / Sleep: Place the LoRa transceiver in sleep mode (~160 nA).
  2. Wi-Fi & BLE Shutdown: Disable RF radios completely when not in active communication (WiFi.mode(WIFI_OFF), BLEDevice::deinit()).
  3. ESP32-S3 Deep Sleep: Put the microcontroller into deep sleep (~10–20 µA) with timer or external GPIO wakeups.

Next Steps​