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

device current consumption during advertising

Hi,

I am evaluating nRF52840 DK as a peripheral with 300ms interval with no timeout (continuous advertising with APP_ADV_DURATION set to 0 ).

I understood that while APP_ADV_DURATION is set to 0 the MCU device never goes to sleep. 

I filled up the 300mses interval along with some other parameters at the online power profiler.

I got  a "total average current" of about 50uA.

My question is: does this number include the device being awake all the time?

Regards,

Gil

Parents
  • Hi Gil

    I understood that while APP_ADV_DURATION is set to 0 the MCU device never goes to sleep. 

    This is not totally correct. With the APP_ADV_DURATION set to 0 the advertising will continue forever, but the MCU will still go to sleep in between advertising events. 

    I got  a "total average current" of about 50uA.

    My question is: does this number include the device being awake all the time?

    No. When the CPU is running it draws around 3-4mA, so in order to get 50uA average current you need to go to sleep in between advertise packets. Each advertise event takes a millisecond or two, so with an advertising interval of 300ms you can go to sleep for most of the time. 

    Best regards
    Torbjørn

  • I see. Thanks for your answer.

    So, does the ble_app_hrs_pca10056_s140 SDK demo project i am running actually sends the CPU to sleep between advertise packets?  

  • Hi Gil

    Yes, the idle_state_handle() function called repeatedly in the main loop will in turn call the nrf_pwr_mgmt_run() function, which puts the CPU to sleep whenever there are no events to process or any log data to print. 

    Best regards
    Torbjørn

Reply Children
Related