SoftDevice (SD)

nRF Util

tags
nRF Util

Use the --softdevice flag to provide the SoftDevice file to the nrfutil nrf5sdk-tools pkg generate command.

When generating the package that includes a SoftDevice file:

  • Use the --sd-req option to specify one or more firmware IDs of the SoftDevice, one of which must be present on the target device (old SoftDevice).

    • While Thread and Zigbee stacks do not use a SoftDevice, the --sd-req option is required for compatibility. Any value provided for this option is ignored during the DFU.
  • Use the --sd-id option to specify the firmware ID of the new SoftDevice to be used as the new --sd-req value on the target device.

    • This option was added in nRF Util v3.1.0 and is required since v3.2.0 in case the package should contain SD (+ BL) + APP. The new ID is copied to --sd-req list so that in case of a link loss during the APP update, the DFU process can be restarted. In this case, the new SD would overwrite itself, so --sd-req must contain the ID of the new SD.

Refer to the list of SoftDevice firmware IDs displayed by the nrfutil nrf5sdk-tools pkg generate --help command.

Note

When using this package, use the same major version of the SoftDevice as the one present on the device. This is because the bootloader on the device may not be compatible with the new SoftDevice version.

For example, the following command generates a package with the SoftDevice file softdevice.hex and the firmware ID 0x80 (SoftDevice S130 v2.0.0):

nrfutil nrf5sdk-tools pkg generate --softdevice softdevice.hex sd_dfu_package.zip --sd-req 0x80