Hi, I'm using trying to use the DFU via BLE, dual bank example from SDK 8.1.1 (with SD 8.0.0) and got it all working up to the point where I call "activate image and reset".
At that point, it activates the image, which calls dfu_image_activate()
. This succeeds, and then nothing happens: the reset is in an if statement: if (err_code != NRF_SUCCESS)
(at dfu_transport_ble.c:591).
I tried changing that, so that dfu_reset() gets called anyway, then it gets to m_update_status = BOOTLOADER_RESET;
(at bootloader.c:234), and that's it.
It seems like the reset never happens, because it never gets handled, I guess it's stuck at sd_app_evt_wait()
?
Anyone knows how to fix this properly?
edit
Seems like it got stuck in app_sched_execute()
, handling BLE_GAP_EVT_DISCONNECTED
in dfu_transport_ble.c with error code 5 (NRF_ERROR_NOT_FOUND). It gets disconnected in dfu_transport_close
(at dfu_transport_ble.c:1095).