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

how to enter the low power mode and continue to advertise?

Hello,everyone. Now i have the board nrf52832 and i want it to enter the low-power mode but keep the the advertising. Now the measured current is 160uA, I think there should be a problem, here is the code. How can i do? i need your help...

    static void on_adv_evt(ble_adv_evt_t ble_adv_evt)
{
    uint32_t err_code;

    switch (ble_adv_evt)
    {
        case BLE_ADV_EVT_FAST:
            NRF_LOG_INFO("Fast Adverstising\r\n");
            err_code = bsp_indication_set(BSP_INDICATE_ADVERTISING);
            APP_ERROR_CHECK(err_code);
            break;

        case BLE_ADV_EVT_IDLE:	
//            sleep_mode_enter();
        	advertising_start();
            break;

        default:
            break;
    }
}

and the end of main function:

for (;;)
{

	if (NRF_LOG_PROCESS() == false)
	{
		power_manage();
	}

}
Parents
  • Hi

    Perhaps the 160uA is normal current consumption when you advertise, but that depends on your advertising interval. There is good information about the sleep modes of nRF52 in the nRF51 current consumption guide. The nRF51 and nRF52 use the same principles in this regard so information in the nRF51 current consumption guide should be valid for nRF52 also. To decrease current consumption when advertising you could increase the advertising interval, look at the "Tuning advertising parameters" in the nRF51 current consumption guide.

    You enter System On low power mode with call to power_manage() and you enter system off low power mode when you call sleep_mode_enter(). Look at the "Low power mode with BLE softdevice" section in the nRF51 current consumption guide to realize how the nRF52 enters system on sleep mode (which basically just disables the CPU) when it is advertising at the same time.

  • Hi Stefan!

    Thank you for your answer.I have read the “nRF51 current consumption guide”. I would like to know if I want to keep broadcasting while into low-power mode (assuming that all the other peripherals have been closed), the operation is correct ?

    If the operation is correct, I have another problem that whether the noly way to reduce the current is to adjust the broadcast interval now ?

    expect your reply...

Reply Children
No Data
Related