Hi,
HW:PCA10056
SW: nRF5_SDK_15.2.0_9412b96
EXAMPLE: nRF5_SDK_15.2.0_9412b96\examples\ble_peripheral\ble_app_buttonless_dfu\pca10056\s140\
Step:
1) enable NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS in sdk_config.h
2) prepare the setup as following step:
i) prepare dfu package
- Generate a private key by running this command in cmd in your SDK 15 folder:
nrfutil keys generate priv.pem
- Generate a public key file from that private key by running this command in cmd in your SDK 15 folder:
nrfutil keys display --key pk --format code private.pem --out_file dfu_public_key.c
- copy dfu_public_key.c into \nRF5_SDK_15.2.0_9412b96\examples\dfu to replace the dummy dfu_public_key.c
- Compile \dfu\secure_bootloader\pca10056_ble\ses example and copy the output secure_bootloader_ble_s140_pca10056.hex to the nrfutil folder
- Generate a bootloader settings page in nrfutil folder:
nrfutil settings generate --family NRF52840 --application ble_app_buttonless_dfu_pca10056_s140.hex --application-version 1 --bootloader-version 1 --bl-settings-version 1 settings.hex
- Generate merged bootloader hex
mergehex.exe --merge settings.hex secure_bootloader_ble_s140_pca10056.hex --output my_bootloader.hex
- Generate DFU package
nrfutil pkg generate --hw-version 52 --application-version 1 --application ble_app_buttonless_dfu_pca10056_s140.hex --softdevice s140_nrf52_6.1.0_softdevice.hex --bootloader my_bootloader.hex --bootloader-version 1 --sd-req 0xAE --sd-id 0xAE --key-file private.pem mwds_app_dfu_package.zip
ii) Program the dfu application
nrfjprog.exe -e
nrfjprog.exe --family NRF52 --program s140_nrf52_6.1.0_softdevice.hex --verify
nrfjprog.exe --family NRF52 --program ble_app_buttonless_dfu_pca10056_s140.hex --verify –r
nrfjprog.exe --program my_bootloader.hex --verify –r
nrfjprog.exe --reset
DFU_targ nor buttonless dfu advertising not founded.