Power Profiler for Zigbee

Hi,

Is there any similar to Online Power Profiler for Zigbee? How much my nRF52840 application should consume when using zboss stack? What is the minimum expected consumption for a Zigbee nRF52840 app?

I have implemented an application as peripheral BLE, using Zephyr. It consumes an average of 100 uA, so good !!!.

I have migrated this application to Zigbee (not multiprotocol at the moment), using NCS instead; functionality is OK, initialization of the hardware components is OK, but after enabling the Zigbee stack ( zigbee_enable(); ) the consumption steps up to 10 mA, which is 100 more times than the consumption with the BLE app.

Note: I do call the function zb_sleep_now(); when sig equals ZB_COMMON_SIGNAL_CAN_SLEEP in my zboss_signal_handler, but nothing changes.

Thanks,

Jordi.

Parents
  • Hi

    Glad you were able to reduce the current consumption.

    Enabling the UART shouldn't require much current by itself, and transmitting (over TXD) will only consume current during the transmissions. What I thinks is happening, is that when you start RX data, the SoC will draw quite a bit of current since it needs to have clocks, regulators and EasyDMA channels open to handle the potential incoming data on the RXD. Using a duty cycle to start and stop RX is recommended in order to reduce current consumption here. Typically this can for instance be controlled by a GPIO input, where the peer set a pin high whenever it has data to send, and this pin will start/stop the RX on the nRF.

    Best regards,

    Simon

Reply
  • Hi

    Glad you were able to reduce the current consumption.

    Enabling the UART shouldn't require much current by itself, and transmitting (over TXD) will only consume current during the transmissions. What I thinks is happening, is that when you start RX data, the SoC will draw quite a bit of current since it needs to have clocks, regulators and EasyDMA channels open to handle the potential incoming data on the RXD. Using a duty cycle to start and stop RX is recommended in order to reduce current consumption here. Typically this can for instance be controlled by a GPIO input, where the peer set a pin high whenever it has data to send, and this pin will start/stop the RX on the nRF.

    Best regards,

    Simon

Children
No Data
Related