HI Nordic,
I am trying to add OTA-DFU feature to my application. I am able to perform DFU, however the DFU is not working properly always.
First I flash the softdeivce and bootloader using nrfgo studio. Then I flash my application using the DFU feature. My application is loaded and running successfully. After that, when again try to perform DFU, the DFU operation is getting stuck. It goes through following operations -
Starting DFU (Initializing DFU process)
Starting Bootloader (Waiting for bootloader)
Device Firmware Update (Update in progress),
and gets stuck in
Connecting (Connecting to...)
The DFU is performed successfully only after mulitple resets. And there is no pattern as such. Sometimes it works after 3-4 tries. Whereas it won't work even after trying for more than 10 times.
I followed following steps to perform DFU -
Bootloader
In the configuration, enabled the DFU Buttonless enter. Compiled the bootloader code with my own public key. Flashed the bootloder using nrfgo studio.
Application
Added the DFU relevant code snippets and libraries from the blE_app_buttonless DFU example. ENabled the DFU reated flags in the pre-processor directive. Enabled BLE_DFU in the sdk_config.h
Compiled the code and generated the zip file using nrfutil.
Performed DFU using nrf_connect.
Is there any configuration settings or code changes to be made, other than that in the ble_app_buttonless_DFU example..
Regards