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

Call to nrf_sdh_enable_request fails in SDK v16.0.0 (works in SDK v15.3.0)

I am porting our firmware from SDK v15.3.0 to 16.0.0. I believe I have most of the changes in place
as I am able to build the boot loader and get it to execute without any catastrophic errors.

However, when I try to port a basic advertisement project to this newer SDK, the call to 'nrf_sdh_enable_request()'
triggers a fault. The issue is triggered by this call inside that function:

    sdh_state_observer_notify(NRF_SDH_EVT_STATE_ENABLED);

It appears that handler eventually in the file 'nrf_drv_power.c' checks to see if the local module
(i.e. m_initialized) is set to TRUE/1.

For reasons that I cannot currently triage, the combination of using SDK v16.0.0 and the preprocessor symbol DEBUG_NRF
triggers this failure. This issue disappears if I DO NOT define DEBUG_NRF in the build.

RMV

Parents Reply Children
  • Hi RMV, 

    I don't think the nrf_pwr_mgmt_init() is related to the nrf_drv_power library.

    Could you let me know what exactly you are doing with the nrf_drv_power library  ?

    I would suggest to have a look at one of our example in the SDK that uses the nrf_drv_power , for example the usbd_ble_uart example where we uses both the softdevice and the nrf_drv_power to handle the interrupt when USB power is plugged. 

    NRF_ERROR_SVC_HANDLER_MISSING is not in the list of error code for sd_softdevice_enable(). Please double check if it's actually return error code 1. 

Related