Simple way to move to power saving mode - NCS3.02/nRf52840

Hi, 

I'm running an app on nRF52840 (NCS3.02) based on the BT shell example.

I did the following modifications:

- shell runs on USB-CDC instead of UART

- using NRFX drivers for I2C & UART (not DT)

- UART0 disabled (app.overlay)

- Everything is asynchronous - threads are blocked on semaphores/queues, triggered by NRF GPIO interrupt (NOT DT), NRFX UART initialized only after GPIO interrupt

I would expect that the app stays 99.99% of the time in the idle task. 

Still I get 7-8mA consumption when everything is idle (idle task?)

Tried the following

CONFIG_PM=y
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y         # Let drivers autosuspend when unused
CONFIG_PM_POLICY_DEFAULT=y         # Kernel chooses best sleep in idle
CONFIG_TICKLESS_KERNEL=y           # Idle time extends, fewer RTC ticks

but it keeps drawing 7mA...

What is the easiest way to cut the power down?

For a start,  I don't need an aggressive power optimization, just to take this constant current draw down ...

Thanks

Parents
  • Hi

    Can you export and upload the .ppk file here so we can review it on our end? The noise floor looks very high here, and maybe that will help us getting somewhere? A floor current of ~1mA and lots of noise there seems to point to something keeping it awake, quite possibly the shell/UART isn't going into idle mode, but I don't have any obvious suggestions as of now, as it will be pretty generic suggestions unless we can narrow it down. Maybe you can try disabling one and one peripheral and see which of them reduces the current.

    Best regards,

    Simon

Reply
  • Hi

    Can you export and upload the .ppk file here so we can review it on our end? The noise floor looks very high here, and maybe that will help us getting somewhere? A floor current of ~1mA and lots of noise there seems to point to something keeping it awake, quite possibly the shell/UART isn't going into idle mode, but I don't have any obvious suggestions as of now, as it will be pretty generic suggestions unless we can narrow it down. Maybe you can try disabling one and one peripheral and see which of them reduces the current.

    Best regards,

    Simon

Children
No Data
Related