Bootloaders and Device Firmware Updates

There are two types of bootloaders used by the nRF Connect SDK:

The bootloaders support two types of updates:

  • Direct updates - where an in-place substitution of the image takes place.

  • Background updates - where the updated image is obtained and stored, but the update is completed later on.

You can deliver the updated images to the device in two ways:

  • Wired - where updates are sent through a wired connection, like UART, or delivered by connecting a flash device.

  • Over-the-air (OTA) - where updates are sent through a wireless connection, like Bluetooth® Low Energy.

You can use a second-stage bootloader only in combination with a first-stage one. Also, not all bootloaders supported by the nRF Connect SDK can be used as either first-stage or second-stage ones. You can find an overview of currently supported bootloaders in the table below:

Bootloaders supported by nRF Connect SDK

Bootloader

Can be first-stage

Can be second-stage

Key type support

Public key revocation

SMP updates

Downgrade protection

Versioning

Update methods (supported by nRF Connect SDK)

nRF Secure Immutable Bootloader

Yes

No

See list

Yes

No

Yes

Monotonic (HW)

Dual-slot execute-in-place (XIP)

MCUboot

Yes

Yes

See imgtool

No

Yes

Yes

Semantic (SW)

Image swap - single primary Dual-slot execute-in-place (XIP)

See the following user guides to learn more: