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

Idle current consumption

What is the current consumption of nRF52480 when idle.

I used power profiler to measure it. But I want to know if it is accurate.

Parents
  • Hi,

    If you close the UART(E) with app_uart_close(), and stop the scanning(comment the scan_start();, or call sd_ble_gap_scan_stop()) you should see a couple of µA power consumption.

    Note that you on the nRF52840-PDK need to cut both SB40 and SB41 to get accurate current measurements.

    Note, you need to power cycle the UARTE peripheral after you call app_uart_close() in order stop HFCLK and DMA bus. See this post

    So you need to do it like this when you close the UARTE:

    err_code  = app_uart_close();
    *(volatile uint32_t *)0x40002FFC = 0;
    *(volatile uint32_t *)0x40002FFC;
    *(volatile uint32_t *)0x40002FFC = 1;
    

    Also remember to disable the log module in sdk_config.h (set NRF_LOG_BACKEND_RTT_ENABLED and NRF_LOG_ENABLED to 0)

  • ‌‌ ‌‌ ‌‌ ‌‌ ‌‌ ‌‌ ‌‌

    int main(void)
    {
        timer_init();
        power_init();
        buttons_leds_init();
        db_discovery_init();
        ble_stack_init();
        gatt_init();
        nus_c_init();
    	app_uart_close();
        *(volatile uint32_t *)0x40002FFC = 0;
        *(volatile uint32_t *)0x40002FFC;
        *(volatile uint32_t *)0x40002FFC = 1;
        for (;;)
        {
    		nrf_pwr_mgmt_run();
        }
    }
    

    This is my main. One problem is that I only cut SB40 but not SB41. Would that cause the current a little bigger?

Reply
  • ‌‌ ‌‌ ‌‌ ‌‌ ‌‌ ‌‌ ‌‌

    int main(void)
    {
        timer_init();
        power_init();
        buttons_leds_init();
        db_discovery_init();
        ble_stack_init();
        gatt_init();
        nus_c_init();
    	app_uart_close();
        *(volatile uint32_t *)0x40002FFC = 0;
        *(volatile uint32_t *)0x40002FFC;
        *(volatile uint32_t *)0x40002FFC = 1;
        for (;;)
        {
    		nrf_pwr_mgmt_run();
        }
    }
    

    This is my main. One problem is that I only cut SB40 but not SB41. Would that cause the current a little bigger?

Children
No Data
Related