nRF5 SDK v17.0.2
Macros
Device Firmware Upgrade configuration

Macros

#define NRF_DFU_TRANSPORT_ANT
 ANT transport settings. More...
 
#define NRF_DFU_ANT_MTU
 MTU size used for firmware bursts. More...
 
#define NRF_DFU_ANT_BUFFERS_OVERRIDE
 Check this option to override the default number of buffers. More...
 
#define NRF_DFU_ANT_BUFFERS
 Number of buffers in the ANT transport. More...
 
#define NRF_DFU_ANT_RF_FREQ
 DFU RF channel. More...
 
#define NRF_DFU_ANT_DEV_TYPE
 Device type field to use for DFU channel id. More...
 
#define NRF_DFU_ANT_CHANNEL_PERIOD
 Channel period of DFU ANT channel. More...
 
#define NRF_DFU_TRANSPORT_BLE
 BLE transport settings. More...
 
#define NRF_DFU_BLE_SKIP_SD_INIT
 Skip the SoftDevice and interrupt vector table initialization. More...
 
#define NRF_DFU_BLE_ADV_NAME
 Default advertising name. More...
 
#define NRF_DFU_BLE_ADV_INTERVAL
 Advertising interval (in units of 0.625 ms) More...
 
#define NRF_DFU_BLE_REQUIRES_BONDS
 Require bond with peer. More...
 
#define NRF_DFU_BLE_MIN_CONN_INTERVAL
 Minimum connection interval (units). More...
 
#define NRF_DFU_BLE_MAX_CONN_INTERVAL
 Maximum connection interval (units). More...
 
#define NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS
 Supervision timeout (ms). More...
 
#define NRF_DFU_BLE_BUFFERS_OVERRIDE
 Check this option to override the default number of buffers. More...
 
#define NRF_DFU_BLE_BUFFERS
 Number of buffers in the BLE transport. More...
 
#define NRF_DFU_PROTOCOL_FW_VERSION_MSG
 Firmware version message support. More...
 
#define NRF_DFU_PROTOCOL_REDUCED
 Reduced protocol opcode selection. More...
 
#define NRF_DFU_PROTOCOL_VERSION_MSG
 Protocol version message support. More...
 
#define NRF_DFU_APP_DATA_AREA_SIZE
 The size (in bytes) of the flash area reserved for application data. More...
 
#define NRF_DFU_IN_APP
 Specifies that this code is in the app, not the bootloader, so some settings are off-limits. More...
 
#define NRF_DFU_SAVE_PROGRESS_IN_FLASH
 Save DFU progress in flash. More...
 
#define NRF_DFU_SUPPORTS_EXTERNAL_APP
 [Experimental] Support for external app. More...
 

Detailed Description

Macro Definition Documentation

#define NRF_DFU_ANT_BUFFERS

Number of buffers in the ANT transport.

Number of buffers to store incoming data while it is being written to flash. Reduce this value to save RAM. If this value is too low, the DFU process will fail.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_ANT_BUFFERS_OVERRIDE

Check this option to override the default number of buffers.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_ANT_CHANNEL_PERIOD

Channel period of DFU ANT channel.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_ANT_DEV_TYPE

Device type field to use for DFU channel id.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_ANT_MTU

MTU size used for firmware bursts.

Sets the maximum burst size used for DFU write commands.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_ANT_RF_FREQ

DFU RF channel.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_APP_DATA_AREA_SIZE

The size (in bytes) of the flash area reserved for application data.

This area is found at the end of the application area, next to the start of the bootloader. This area will not be erased by the bootloader during a firmware upgrade. The size must be a multiple of the flash page size.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_ADV_INTERVAL

Advertising interval (in units of 0.625 ms)

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_ADV_NAME

Default advertising name.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_BUFFERS

Number of buffers in the BLE transport.

Number of buffers to store incoming data while it is being written to flash. Reduce this value to save RAM. If this value is too low, the DFU process will fail.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_BUFFERS_OVERRIDE

Check this option to override the default number of buffers.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS

Supervision timeout (ms).

GAP connection supervision timeout, in milliseconds.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_MAX_CONN_INTERVAL

Maximum connection interval (units).

Maximum GAP connection interval, in 1.25 ms units.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_MIN_CONN_INTERVAL

Minimum connection interval (units).

Minimum GAP connection interval, in 1.25 ms units.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_REQUIRES_BONDS

Require bond with peer.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_BLE_SKIP_SD_INIT

Skip the SoftDevice and interrupt vector table initialization.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_IN_APP

Specifies that this code is in the app, not the bootloader, so some settings are off-limits.

Enable this to disable writing to areas of the settings that are protected by the bootlader. If this is not enabled in the app, certain settings write operations will cause HardFaults or will be ignored. Enabling this option also causes postvalidation to be disabled since this is meant to be done in the bootloader. NRF_BL_DFU_ALLOW_UPDATE_FROM_APP must be enabled in the bootloader.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_PROTOCOL_FW_VERSION_MSG

Firmware version message support.

Firmware version message support. If disabled, firmware version requests will return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_PROTOCOL_REDUCED

Reduced protocol opcode selection.

Only support a minimal set of opcodes; return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED for unsupported opcodes. The supported opcodes are:NRF_DFU_OP_OBJECT_CREATE, NRF_DFU_OP_OBJECT_EXECUTE, NRF_DFU_OP_OBJECT_SELECT, NRF_DFU_OP_OBJECT_WRITE, NRF_DFU_OP_CRC_GET, NRF_DFU_OP_RECEIPT_NOTIF_SET, and NRF_DFU_OP_ABORT. This reduced feature set is used by the BLE transport to reduce flash usage.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_PROTOCOL_VERSION_MSG

Protocol version message support.

Protocol version message support. If disabled, protocol version requests will return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_SAVE_PROGRESS_IN_FLASH

Save DFU progress in flash.

Save DFU progress to flash so that it can be resumed if interrupted, instead of being restarted. Keep this setting disabled to maximize transfer speed and minimize flash wear. The init packet is always saved in flash, regardless of this setting.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_SUPPORTS_EXTERNAL_APP

[Experimental] Support for external app.

External apps are apps that will not be activated. They can e.g. be apps to be sent to a third party. External app updates are verified upon reception, but will remain in bank 1, and will never be booted. An external app will be overwritten if a new DFU procedure is performed. Note: This functionality is experimental and not yet used in any examples.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_TRANSPORT_ANT

ANT transport settings.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_DFU_TRANSPORT_BLE

BLE transport settings.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.

Documentation feedback | Developer Zone | Subscribe | Updated