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

DFU program not loading

Hi,

I am currently using Nordic nRF52 dev board (with nRF52832 SoC) and trying to test "dfu/secure_bootloader" example in that board. Because my target ship is nRF52810 I am using pca10040e_ble project example.

Setup:
* nRF SDK 15.3.0
* SoftDevice S112 v6.1.1
* nRF Connect v3.2.0
* Segger studio V4.20
* Windows10

I have followed the guide form Nordic Getting started with Nordic's Secure DFU bootloader, a step by step guide and done next steps:
1. installed nrfutil tool

2. generated a private and public key

3. changed the public_key.c file instead of generic one in the project

4. downloaded the micro-ecc lib and compile it by executing build_all.sh

5. opened the "dfu/secure_bootloader" project in ses studio, project path: "nRF5_SDK_15.3.0\examples\dfu\secure_bootloader\pca10040e_ble\ses"

6. build the project

7. merge the application hex with the soft device hex to test if the build application works:

mergehex -m secure_bootloader_ble_s112_pca10040e.hex s112_nrf52_6.1.1_softdevice.hex -o outout_dfutarg.hex

8. Download this code over USB to the dev board. The output I get is that LED1 and LED2 are ON and the device is advertising with the name "DfuTarg" which I assume is ok.

9. For testing purposes, I have nRF52840 dongle to use with nRF Connect v3.2.0 - Bluetooth Low Energy software on my PC. Here I see my nRF52 dev board and I can connect to it. When the board is connected the LEDs change their status and LED1 and LED3 are ON. The picture shows the connection on my PC:
 

10. To see the change when the new appication code us updated after the dfu I changed the device name in the sdk_config.h file.  to 
#define NRF_DFU_BLE_ADV_NAME "DfuTargv1" 
and build the application again. 

11. After this I have generated the dfu zip packet with the command:

nrfutil pkg generate --hw-version 52 --application-version 2 --application secure_bootloader_ble_s112_pca10040e.hex --sd-req 0xB8 --key-file private.key app_dfu_package.zip

this command used hex that was created bu the ses after building the project.

12. then I clicked on the DFU icon in the nRF connect studio selected the generated zip file and click to upload the new firmware.

13. After the firmware is uploaded I get this screen which seems ok:

and the nRF52 dev board is disconnected, so the LEDs 1 and 2 are again ON but the device does not change the name to DfuTargv1

I am probably missing some steps, but I can not see which one. If there are some suggestions I am happy to hear them. 

Thank you. 

Voja

Related