I was testing the various cases for DFU & I was looking for any possible solutions to fix the issue.
I flashed SD + bootloader (secure) + app from SDK 15.2 on the BLE chip. I was able to replace the app firmware file (from SDK 15.2) using nrfconnect.
Then next I was trying to change the firmware to SDK 16, so I created a firmware package using -
nrfutil pkg generate --hw-version 52 --sd-req 0xAF --application-version 2 --application %APPLICATION_HEX% --softdevice %SOFTDEVICE_HEX% --bootloader %BOOTLOADER_HEX% --bootloader-version 2 --sd-id 0xCB --key-file private.pem firmware.zip
Then I provide this zip to nrfconnect and then it starts writing the SD+bootloader .bin & .dat files. When it proceeds to flashing the app .bin & .dat, I turn off the ble device, thus interrupting the dfu. Now the BLE chip is in the bootloader mode & it has no app to jump to. Now I try to input the above zip again which the nrfconnect rejects.
So then I try creating a zip for just the app, excluding SD & bootloader, as follows -
nrfutil pkg generate --application %APPLICATION_HEX% --application-version 2 --application-version-string "2.0.0" --hw-version 52 --sd-req 0xCB --key-file private.pem FW.zip
The nrfconnect rejects this zip too.
Please let me know the solution for this. Thanks.
Could you provide the rejection reason on nRF Connect when you try to update the app separately. Please check the log on both the bootloader and the nRF Connect app.
Could you try using only --application-version 2 and no --application-version-string.
Also please try to test with --application-version 3