Following up - Part A: Bootloader (Click for article link) and Part B: Application (Click for article link)
We will be focusing on:
Part C: Combining & merging built files
in this article.
IC: nRF52840
DK: PCA10056 (for nRF52840)
SDK: 17.1.0
Softdevice: s140_nrf52_7.2.0_softdevice.hex
IDE: Keil C
PC: Win 10
Part C: Combining & merging built files
Step 1. Execute the combine batch file in bootloader (nrf52840_bootloader_setting_merge.bat) and generate file of nrf52840_bootloader_secure_combin_settings.hex :
@echo off
title = [ J-Link Tool ] %CD%
set nrfDir=C:\Program Files (x86)\Nordic Semiconductor\nrf5x\bin
set BS= nrf52840_bootloader_secure_settings.hex
set BL= nrf52840_xxaa_s140.hex
set BSBLCombind= nrf52840_bootloader_secure_combin_settings.hex
set path=%nrfDir%;%path%
pause
echo -----------merge image file-------------------
mergehex.exe -m %BS% %BL% -o %BSBLCombind%
pause![](https://raytac.blog/wp-content/uploads/2024/06/image.png?w=650)
Step 2. Create a Final.hex file by 3-in-1 batch file(nrf52840_3in1_merge.bat)
※Note : This hex file is created for the production line to pre-load firmware into modules prior to shipment.
@echo off
title = [ J-Link Tool ] %CD%
set nrfDir=C:\Users\user\Desktop\Nordic BLE\nRF5_merge tools\nRF52 bin
set SD= s140_nrf52_7.2.0_softdevice.hex
set BLT= nrf52840_bootloader_secure_combin_settings.hex
set APP= nrf52840_xxaa.hex
set SD_BLT=SD_BLT.hex
set Finalfile=Final.hex
set path=%nrfDir%;%path%
pause
echo -----------merge image file-------------------
mergehex.exe -m %SD% %BLT% -o %SD_BLT%
pause
mergehex.exe -m %SD_BLT% %APP% -o %Finalfile%
pause![](https://raytac.blog/wp-content/uploads/2024/06/image-2.png?w=779)
![](https://raytac.blog/wp-content/uploads/2024/06/image-3.png?w=561)
Step 3. Create a DFU(OTA).zip file of nrf52840_xxaa.zip
※Note : This zip file is created for end device DFU(OTA) implementation.
nrfutil pkg generate --hw-version 52 --sd-req 0x100 --application-version 0xFF --application
nrf52840_xxaa.hex --key-file private.pem nrf52840_xxaa.zip![](https://raytac.blog/wp-content/uploads/2024/06/image-4.png?w=1024)
![](https://raytac.blog/wp-content/uploads/2024/06/image-5.png?w=329)
The DFU OTA zip file: nrf52840_xxaa.zip will be derived.
※Note :
The "0x100" appeared in the above DOS code(in red font) is the FWID(Firmware ID) for s140_nrf52_7.2.0_softdevice.hex;
FWID can be found from the soft device documents on the Nordic website.![](https://raytac.blog/wp-content/uploads/2024/06/image-6.png?w=592)
![](https://raytac.blog/wp-content/uploads/2024/06/image-7.png?w=990)
Step 4: Run DFU OTA (On mobile in this example)
4A. Install the nRF Connect APP on mobile, with DFU OTA file: nrf52840_xxaa.zip.
(Download link)
4B. Send nrf52840_xxaa.zip via email to mobile device after combination is done on PC, then download it.
![](https://raytac.blog/wp-content/uploads/2024/06/image-8.png?w=366)
4C. Open nRF Connect APP and run connection;
![](https://raytac.blog/wp-content/uploads/2024/06/image-9.png?w=360)
4D. Execute DFU and select "Distribution packet(ZIP)", thus starting the DFU OTA process.![](https://raytac.blog/wp-content/uploads/2024/06/image-11.png?w=919)
4E. Start DFU OTA → exit the APP after DFU OTA is completed → restart the mobile device.![](https://raytac.blog/wp-content/uploads/2024/06/image-12.png?w=403)
Secure DFU OTA for nRF52840 solution modules: Guide to create hex/zip file for implementation
Detailed links of articles:
Part A: Bootloader (Click for article link)
Part B: Application (Click for article link)
Part C: Combining and merging built files (Click for article link)
Technical guidelines provided by R&D Manager: Mr. MW Lee
Edited by Sales Manager: Mr. Tony Yin
Raytac Corporation 勁達國際電子股份有限公司
Bluetooth & WiFi module maker based on Nordic nRF54, nRF53, nRF52, nRF7002 solution
BT5.4 &BT5.3 & BT5.2 & BT5.1 Qualified, FCC/IC/CE/Telec/KC/RCM/SRRC/NCC Pre-Certified.
Bluetooth Solution: nRF54, nRF5340, nRF52840, nRF52833, nRF52832, nRF52820, nRF52811, nRF52810, nRF52805, nRF51822
WiFi Solution: nRF7002