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