This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
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

DFU Bootloader hangs on sd_softdevice_vector_table_base_set

I have implemented a boot loader for DFU based on the sdk v6.1 DFU project. After a when an upgrade is triggered within the application soft reset by the application:

    err_code = sd_power_gpregret_clr(0xff);
    APP_ERROR_CHECK(err_code);
    err_code = sd_power_gpregret_set(BOOTLOADER_DFU_START);
    APP_ERROR_CHECK(err_code); 	
    NVIC_SystemReset();

The boot loader, which is basically a copy of the sdk example, then within ble_stack_init() calls sd_softdevice_vector_table_base_set() and hangs in the SVC_Handler callback in arm_startup_nrf51.s

When cold booting the device, the boot loader runs flawless.

Am I missing some step in the reset procedure?

Should I have a special case in the boot loader to detect soft reset?

Related