This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nrf5340 low consumption

Hi,

I need to reduce the consumption of the peripheral_uart sample on a nrf5340dk, I use nRF Connect SDK V1.5.0.

At the beginning, I measured with an ampere meter 591uA on “P22”.

First, I tried to increase the time during two advertising, I modified on “bluetooth.h” the advertising parameter ( BT_GAP_ADV_FAST_INT_MIN_2, \ BT_GAP_ADV_FAST_INT_MAX_2 remplace by BT_GAP_ADV_SLOW_INT_MIN, \ BT_GAP_ADV_SLOW_INT_MAX), I had 100ms at the beginning and after I had 1000ms.

That reduce the consumption to 540mA.

Second, I modified the prj.conf from peripherial_uart, I put “n” to:

CONFIG_LOG=n

CONFIG_USE_SEGGER_RTT=n

CONFIG_LOG_BACKEND_RTT=n

CONFIG_ASSERT=n

That reduce a little bit the consumption to 520uA.

 

Third, I modified the prj.conf from hci_rpmsg, I put “n” to:

CONFIG_LOG=n

CONFIG_SERIAL=n

CONFIG_ASSERT=n

CONFIG_DEBUG_INFO=n

Now, I have 412uA.

 

For my project, I need to have the advertising permanently and the lowess consumption because it work on a battery.

 

I had a look on the different power mode, I try:

pm_power_state_force(POWER_STATE_DEEP_SLEEP_1);

the consumption was reduce to 3.5uA but I do not find a way to make the advertising active with the different power mode.

- What are the other ways to reduce this consumption ?

- Is it possible to put the cpuapp in sleep mode and wake it up only when there is a bluetooth connection while keeping the advertising active ?

- Is it possible to put the two core in sleep mode betwen two advertising ?

- Is it possible to reduce the consumption if we just use one core ?

I found "empty_app_core" sample, maybe i can use this sample to make peripheral_uart working on the netcore only...

-Is it possible to reduce the clock from app core from 128Mhz to 64Mhz to save some more consumption?

Best Regards,

Rob.

Related