Using MCUboot in nRF Connect SDK
See Building and using MCUboot with Zephyr for general information on how to integrate MCUboot with Zephyr.
The nRF Connect SDK provides additional functionality that is available when MCUboot is included.
This functionality is implemented in the files in the
modules/mcuboot subfolder in the sdk-nrf repository.
To include MCUboot in your nRF Connect SDK application, enable
When you build your application with this option set, the following files that can be used for firmware over-the-air (FOTA) upgrades are automatically generated:
app_update.bin- Signed variant of the firmware in binary format (as opposed to intelhex). This file can be uploaded to a server as FOTA image.
app_to_sign.bin- Unsigned variant of the firmware in binary format.
app_signed.hex- Signed variant of the firmware in intelhex format. This HEX file is linked against the same address as the application. Programming this file to the device will overwrite the existing application. It will not trigger a DFU procedure.
app_test_update.hex- Same as
app_signed.hexexcept that it contains metadata that instructs MCUboot to test this firmware upon boot. As
app_signed.hex, this HEX file is linked against the same address as the application. Programming this file to the device will overwrite the existing application. It will not trigger a DFU procedure.
app_moved_test_update.hex- Same as
app_test_update.hexexcept that it is linked against the address used to store the upgrade candidates. When this file is programmed to the device, MCUboot will trigger the DFU procedure upon reboot.
When you use MCUboot in the execute-in-place (XIP) mode, enable
CONFIG_BOOT_BUILD_DIRECT_XIP_VARIANT to let the build system generate an additional set of files for the second application slot.
.hex files are identical to the ones listed above, but their names also use the
mcuboot_secondary_app_signed.hex is created and placed in the second slot on the target device when the
app_signed.hex file is placed in the first slot.