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

nrf_pwr_mgmt_run() with SoftDevice not go to low power

Hello.

I use SDK16 in my project.

Previously when I want to go on sleep I use __WFI(), and get into sleep till interrupt. Because I use The SoftDevice I change the command to nrf_pwr_mgmt_run() as instruct by Nordic . But now it doesn't enter sleep at all. I try also disable the FPU by NRF_PWR_MGMT_CONFIG_FPU_SUPPORT_ENABLED 0 in the sdk_config.h but didn't help.

Why it is so?

Bar.

Parents
  • Hi Jared.

    I found also something strange about implement the _WFE()

    In some examples I found it set like this 

    __WFE();

    __SEV();
    __WFE();

    but using it won't get it to low power 

    But know during reading about sd_app_evt_wait();

    I found it is written like this

    __SEV();
    __WFE();

    __WFE();

    This one work.

    So maybe inside  sd_app_evt_wait();

    It still use the wrong setting

    __WFE();

    __SEV();
    __WFE();

    (I can't look inside this function at my SDK)?

    Bar.

Reply
  • Hi Jared.

    I found also something strange about implement the _WFE()

    In some examples I found it set like this 

    __WFE();

    __SEV();
    __WFE();

    but using it won't get it to low power 

    But know during reading about sd_app_evt_wait();

    I found it is written like this

    __SEV();
    __WFE();

    __WFE();

    This one work.

    So maybe inside  sd_app_evt_wait();

    It still use the wrong setting

    __WFE();

    __SEV();
    __WFE();

    (I can't look inside this function at my SDK)?

    Bar.

Children
Related