This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Firmware stuck in SVC_Handler

Hi,

I have been quite active recently, because I had a whole lot of trouble learning to use the nordic tools. I just recently managed to merge two deferent projects one with BLE implementation and the other with PPIs. Everythings builds, and debug begin smoothly but as soon as I call a softdevice function, the debug is stuck in SVC_Handler.

The function called is :

ret_code = sd_softdevice_enable(&clock_lf_cfg, app_error_fault_handler);

Even though, it is not the only one that trigger the same behavior. In the end, I am stuck in this little piece of code : 

.thumb_func
.weak SVC_Handler
SVC_Handler:
b .

I don't really have clues and I don't know what to show you to help me with this issue. 

Best Regards,

Charles

EDIT : I guess I have to setup the softdevice. Even though I COULD merge into another project with softdevice already setup. I could use some knowledge about the matter.

Parents
  • Hi Charles,

    This SVC interrupt is supposed to be processed by the Softdevice and never reach the application (provided you are using the SVC number range reserved to the Softdevice APIs). Please check if you have the NO_VTOR_CONFIG symbol defined in your project:

    This setting ensures that interrupts are forwarded via the Softdevice and not directly to the application's vector table.

    EDIT : I guess I have to setup the softdevice. Even though I COULD merge into another project with softdevice already setup. I could use some knowledge about the matter.

    This is what I would recommend you to.

    Best regards,

    Vidar

Reply
  • Hi Charles,

    This SVC interrupt is supposed to be processed by the Softdevice and never reach the application (provided you are using the SVC number range reserved to the Softdevice APIs). Please check if you have the NO_VTOR_CONFIG symbol defined in your project:

    This setting ensures that interrupts are forwarded via the Softdevice and not directly to the application's vector table.

    EDIT : I guess I have to setup the softdevice. Even though I COULD merge into another project with softdevice already setup. I could use some knowledge about the matter.

    This is what I would recommend you to.

    Best regards,

    Vidar

Children
No Data
Related