Power Budget Calculator
The tinyCore ESP32-S3 has dramatically different power consumption depending on what it is doing. A device transmitting over Wi-Fi constantly can drain a 1000 mAh battery in hours, while the same device sleeping 99% of the time can last years.
Use this calculator to plan your power budget before you build.
How to Use
Section titled “How to Use”- Choose your active mode — what is the tinyCore doing when it’s “awake”? Select the closest match (e.g., Wi-Fi TX for a sensor that uploads data).
- Choose your sleep mode — Deep Sleep for maximum battery life; Light Sleep if you need faster wake-up or peripheral retention.
- Set your timing — how long does the device stay active each cycle? How long does it sleep between cycles?
- Pick a battery capacity — use a preset or drag the slider to match your actual battery.
The calculator shows your estimated battery life using 80% of rated capacity, which is a realistic figure that avoids over-discharging and extends battery health.
tinyCore v2.1 Power Consumption Reference
Section titled “tinyCore v2.1 Power Consumption Reference”All values measured at 3.3 V, 25°C on battery power (not USB). USB-powered values are slightly higher due to the onboard USB bridge.
| Operating Mode | Battery Current | Notes |
|---|---|---|
| Deep Sleep | 10 μA | RTC timer + RTC memory active |
| Light Sleep | 2.1 mA | CPU paused, RAM retained, peripheral wake-up |
| CPU Only / Modem Sleep | ~38.5 mA | CPU at full speed, radios off |
| Wi-Fi Idle | ~46.5 mA | Connected to AP, no data transfer |
| Wi-Fi Transmitting | ~73.5 mA | Active data transmission |
| Wi-Fi Scanning | ~108.5 mA | Continuously scanning for networks |
| BLE Advertising | ~70.5 mA | Broadcasting advertisement packets |
| BLE Connected + Transmitting | ~73.5 mA | Active BLE data transfer |
| IMU Sampling | ~40.5 mA | Continuous motion data at 50ms intervals |
| All Peripherals | ~78.5 mA | Wi-Fi + BLE + IMU + LEDs simultaneously |
Note: During battery operation, the PWR and CHRG LEDs are disabled. Each onboard LED draws ~1.5 mA at full brightness.
Common Application Profiles
Section titled “Common Application Profiles”| Profile | Average Current | Estimated Life (1000 mAh) |
|---|---|---|
| Deep Sleep with periodic WiFi | ~15 μA average | 2–3 years |
| Light Sleep IoT sensor | ~5 mA average | 20–30 days |
| Active Wi-Fi data logger | ~50 mA average | 4–6 days |
| Continuous BLE beacon | ~70 mA average | 2–3 days |
Estimates include self-discharge and temperature derating. Actual results vary.
Tips for Maximizing Battery Life
Section titled “Tips for Maximizing Battery Life”- Batch your transmissions — wake up, take 10 readings, send them all at once, then sleep. Fewer WiFi connect/disconnect cycles saves significant power.
- Use Deep Sleep over Light Sleep when you don’t need to retain state — it’s 200× more efficient.
- Reduce active time — the connection + authentication overhead is often larger than the actual data transmission. Use a static IP to skip DHCP.
- Lower the CPU frequency during low-demand tasks using
setCpuFrequencyMhz(80)orsetCpuFrequencyMhz(40). - Disable unused peripherals — if your sketch doesn’t use BLE, don’t initialize it.