Hi everyone,
I’d like to ask for some advice regarding the power consumption of a Zigbee-based device I’m developing and explore possible solutions to optimize battery life.
Device Behavior:
The device normally operates in deep sleep mode and wakes up under the following conditions:
• When the magnet sensor detects a status change (counter wheel).
• When the user presses the main button.
• When the internal RTC triggers after one hour of sleep.
Upon waking, the device initializes the Zigbee radio, connects to the network, sends a report with the current values, and waits for 2 minutes of inactivity before returning to deep sleep. I’m currently adjusting the logic to activate the radio only once per hour, but this alone doesn’t seem to address the issues I’m encountering.
Power Consumption Measurements:
• I’m powering the device with an external 3.3V supply (no DC-DC converter or LiPo battery yet, so actual battery consumption might vary).
• I’m using the Nordic Power Profiler Kit II for measurement, which I just received and is proving very useful.
Here’s what I’ve observed:
• Zigbee radio active: 78.5 mA
• Deep sleep mode: 3.85 mA
Based on these figures, even in the best-case scenario (sending readings 24 times a day), the device consumes around 152.12 mA/day. With a 5,000 mAh battery, this translates to roughly 32 days of operation—or potentially less.
However, according to the ESP32-C6-WROOM-1 datasheet, deep sleep current should be around 7 µA. Yet, my measurements on the ESP32-C6_DEVKIT-1, powered from the 3.3V pin, show 3.85 mA—which is about 550 times higher than expected!
Clearly, there’s significant room for improvement, and I’d love to hear your thoughts. Has anyone faced similar challenges or found effective ways to optimize power consumption in similar setups?
Thanks in advance for any suggestions!