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

Cannot perform ble dfu for ble rscs

I tried to add a dfu service to the SDK 11.0.0 ble_rscs_app by following the procedure here. I was able to successfully compile and run the application, and when Master Control Panel connected to the application, it recognized that the application supports DFU.

To test the DFU, I used the nrf_utility.exe that comes with nRFgo Studio to create the .zip distribution packet, as described here. I used the .hex file to create the .zip to upload.

My problem is when I try to enable dfu notifications, and then try to write the 0x01 Op Code, the device disconnects (which I understand is correct), but the device does not enter bootloader mode, nor does it appear as "DfuTarg" in the device list, as described here under Testing.

Also, when I click the dfu button, and I try to upload the zip file, the process simply cycles through "Connecting...Starting DFU...Starting bootloader...Connecting...Starting DFU...Starting bootloader..." etc. This did not happen when I tried the dfu bootloader example from the same SDK.

I know the problem is not a SDK, board, or softdevice compatibility as my setup of nRF52 with the s132 - 2.0.1 is good according to the nRF52 compatibility matrix. I am also using Keil.

I attached the project below. The project should be placed in the SDK 11.0.0 folder under "SDK_folder/examples/ble_peripheral/kg_ble_app_rscs -dfu"

kg_ble_app_rscs - dfu.zip

Thanks for your help.

Related