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

SVCALL sd_softdevice_enable not returning

Dear community,

I was working with a modified code based on an example for switching the leds on/off in a Mesh BLE network. Everything was working well until I tried to modify it to add a provisioner role. Then it starts stopping at this line:

SVCALL(SD_SOFTDEVICE_ENABLE, uint32_t, sd_softdevice_enable(nrf_clock_lf_cfg_t const * p_clock_lf_cfg, nrf_fault_handler_t fault_handler));

I tried to come back to the code when it was working but nothing change.

I read all discussions in this forum related to this issue and I implement this change WITHOUT any success:

  • Change of the clock parameters
  • Change of the RAM start
  • Check of the SDK/SoftDevice version

Maybe my debugging experience is limited... but it quite hard to understand where the issue comes from. Here what I can provide you 

  • the fault_handler returns result 0x000275a5. This value is copied in r1 (ldr r1, =0x000275a5).
  • With a project which works well, I have noticed that the fault_handler is 0xffffffff and the operation in assembly is ldr r1, =0x00028EOD

I am wondering what mean this value 0x000275a5?

Maybe I need to modify the operation with ldr r1, =0x00028EOD? If yes, where to change this operation?

Please do not hesitate if you have any other ideas.

Related