Idle power consumption in nrf5340 when Thread Enabled

I am trying to build an application for a custom board developed with nrf5340 module in which power consumption is a major dimension which we focus.
Currently in the idle period the device is consuming arounf 48uA current.

Our application has following features:

The network core child image is with BLE and Thread support. It also has button and led(over pwm) support. k_timer module provided by zephyr is used in the application for periodic activity.

RTC peripheral is enabled without any tick, capture compare property. Only counter is used for keeping track of time.

For the power consumption management
CONFIG_PM is activated.
Most of the peripherals that are not used are disabled in the device tree.

In order to avoid the power consumption through GPIO, GPIOTE is enabled(in Low power mode) and used for button press detection.

From the electrical specification of nrf5340 we have seen that in system ON and some peripheral enabled the power consumption can be reduced around 1uA

We performed some tests in between to analyze the issue.

Without any application if the thread network configurations are provided, in the idle period a consumption of 47uA is measured.

Following are the thread network configurations provided

CONFIG_NETWORKING=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_POSIX_NAMES=y
CONFIG_NET_SOCKETS_POLL_MAX=4
CONFIG_OPENTHREAD_NORDIC_LIBRARY_MASTER=y
CONFIG_NET_L2_OPENTHREAD=y
CONFIG_COAP_UTILS=y
CONFIG_MBEDTLS_SHA1_C=n
CONFIG_FPU=y
CONFIG_MBEDTLS_KEY_EXCHANGE_PSK_ENABLED=y
CONFIG_OPENTHREAD_MTD=y
CONFIG_OPENTHREAD_MTD_SED=y
CONFIG_OPENTHREAD_POLL_PERIOD=6000
We are using ncs 2.2.0 version.
We like to have an ideal power consumption below 10uA. With following feature system ON, rtc enabled, GPIOTE enabled, Thread running. 
 
Parents
  • Hi,

    48 µA is a bit strange as there isn't anything that comes to mind that would use exactly this. Most peripherals will use more than this number, are you sure that the current is drawn exclusively by the nRF5340 and not something else on your board?

    Is it avg current or peak? Do you have a PPK2 that you can use to record and share a current trace with me?

    regards

    Jared

  • Hi Jared,

    are you sure that the current is drawn exclusively by the nRF5340 and not something else on your board?

    We had done a small testing by just running a simple application, without using any features. Here we were able to observe a current consumption around 8-7uA. 

    Is it avg current or peak?

    This is the average current observed.

    Adding some Images of the current trace( The second Image is a zoomed image, After a peak the raising of current till 42uA).

     

    Regards,

    George

  • Hi,

    Do you have a Thread router? Maybe you could try the Thread:CLI sample to verify your custom board, it implements Sleep End Device type

    RTC peripheral is enabled without any tick, capture compare property. Only counter is used for keeping track of time.

    If you disable this feature, for example by commenting all code that use the RTC. What current do you get?

    What other peripherals are you using?

    What else do you have on the custom board? Does the nRF5340 communicate with any other device on the custom board is any serial connected?

    regards
    Jared 

  • Hi Jared,

    I have a Thread border router and I had done a test with the Thread CLI sample. With this sample also I got similar result . Power consumption was around 50uA. These are the steps I followed :

    1. Image was build with configuration files : "overlay-ci.conf and overlay-low_power.conf" and device tree overlay file : "low_power.overlay"
    2. Flashed the custom board, and provided the following details
      1. Thread PanID
      2. Thread Channel
      3. Thread Network Key.
      4. PollPeriod was set to 1000ms
      5. Mode was set to child
    3. To start the thread following commands were used
      1. "ot ifconfig up"
      2. "ot thread start"
    4. When device joined the Border Router, UART got disconnected and the power consumption was measured as 47uA

    Am I missing any steps in the test?

  • Hi,

    50 µA in sleep? What else do you have on your custom board?

    Do you have a devkit you could try to repeat this on and see if you measure the same using the same measurement setup?

    regards

    Jared 

Reply Children
No Data
Related