| nRF5 SDK v12.0.0 |

Choose documentation: | nRF5 SDK | S130 SoftDevice API | S132 SoftDevice API | S212 SoftDevice API | S332 SoftDevice API

All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
DFU bootloader

A DFU bootloader is a bootloader that supports updating the firmware of the device (called a Device Firmware Update, or short DFU). Through a DFU, you can update the application, the SoftDevice, or the current bootloader of your device.

At startup, a DFU bootloader checks if a valid application exists on the device. If there is no valid application, the bootloader starts up in DFU mode and initiates the transfer of a firmware image. If there is a valid application, the DFU bootloader starts the application, unless it is explicitly put into DFU mode (for example, by pressing a button).

After entering DFU mode, the DFU bootloader initializes the DFU transport module, which is responsible for receiving the new firmware image. This image is then validated, copied to the correct location in memory, and activated so that it is used after the restart of the device.

Device Firmware Update process

Validation

Dual-bank and single-bank updates