nRF5 SDK v17.1.0
Macros
Bootloader settings configuration

Macros

#define NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2
 Skip CRC integrity check of the application when bit 1 (0-indexed) is set in the GPREGRET2 register. More...
 
#define NRF_BL_APP_CRC_CHECK_SKIPPED_ON_SYSTEMOFF_RESET
 Skip integrity check of the application when waking up from the System Off state. More...
 
#define NRF_BL_APP_SIGNATURE_CHECK_REQUIRED
 Perform signature check on the app. Requires the signature to be sent in the init packet. More...
 
#define NRF_BL_DFU_ALLOW_UPDATE_FROM_APP
 Whether to allow the app to receive firmware updates for the bootloader to activate. More...
 
#define NRF_BL_DFU_ENTER_METHOD_BUTTON
 Enter DFU mode on button press. More...
 
#define NRF_BL_DFU_ENTER_METHOD_BUTTON_PIN
 Button for entering DFU mode. More...
 
#define NRF_BL_DFU_ENTER_METHOD_PINRESET
 Enter DFU mode on pin reset. More...
 
#define NRF_BL_DFU_ENTER_METHOD_GPREGRET
 Enter DFU mode when bit 0 is set in the NRF_POWER_GPREGRET register. More...
 
#define NRF_BL_DFU_ENTER_METHOD_BUTTONLESS
 Enter DFU mode when the Boolean enter_buttonless_dfu in DFU settings is true. More...
 
#define NRF_BL_DFU_CONTINUATION_TIMEOUT_MS
 Timeout in ms when expecting an update immediately. More...
 
#define NRF_BL_DFU_INACTIVITY_TIMEOUT_MS
 Timeout in ms before automatically starting a valid application due to inactivity. More...
 
#define NRF_BL_WDT_MAX_SCHEDULER_LATENCY_MS
 Maximum latency of the scheduler in miliseconds. More...
 
#define NRF_BL_DEBUG_PORT_DISABLE
 Disable access to the chip via the debug port. More...
 
#define NRF_BL_FW_COPY_PROGRESS_STORE_STEP
 Number of pages copied after which progress in the settings page is updated. More...
 
#define NRF_BL_RESET_DELAY_MS
 Time to wait before resetting the bootloader. More...
 

Detailed Description

Macro Definition Documentation

#define NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2

Skip CRC integrity check of the application when bit 1 (0-indexed) is set in the GPREGRET2 register.

Only CRC checks can be skipped. For other boot validation types, the GPREGRET2 register is ignored.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_APP_CRC_CHECK_SKIPPED_ON_SYSTEMOFF_RESET

Skip integrity check of the application when waking up from the System Off state.

Only CRC checks can be skipped. For other boot validation types, the reset state is ignored.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_APP_SIGNATURE_CHECK_REQUIRED

Perform signature check on the app. Requires the signature to be sent in the init packet.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_DEBUG_PORT_DISABLE

Disable access to the chip via the debug port.

Disable access to the chip via the debug port. This modifies the APPROTECT and DEBUGCTRL registers. Enable this option in production code if such access should be prohibited. Read about the registers for more details.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_DFU_ALLOW_UPDATE_FROM_APP

Whether to allow the app to receive firmware updates for the bootloader to activate.

Enable this to allow the app to instruct the bootloader to activate firmware. The bootloader will do its own postvalidation.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_DFU_CONTINUATION_TIMEOUT_MS

Timeout in ms when expecting an update immediately.

This timeout is used after updating the SoftDevice, when there is already a valid application present. The bootloader will enter DFU mode for a short time instead of booting the old application to allow the host to immediately transfer a new application if it wishes.

Minimum value: 100 Maximum value: 60000000

Note
This is an NRF_CONFIG macro.
#define NRF_BL_DFU_ENTER_METHOD_BUTTON

Enter DFU mode on button press.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_DFU_ENTER_METHOD_BUTTON_PIN

Button for entering DFU mode.

Following options are available:

  • 0 - 0 (P0.0)
  • 1 - 1 (P0.1)
  • 2 - 2 (P0.2)
  • 3 - 3 (P0.3)
  • 4 - 4 (P0.4)
  • 5 - 5 (P0.5)
  • 6 - 6 (P0.6)
  • 7 - 7 (P0.7)
  • 8 - 8 (P0.8)
  • 9 - 9 (P0.9)
  • 10 - 10 (P0.10)
  • 11 - 11 (P0.11)
  • 12 - 12 (P0.12)
  • 13 - 13 (P0.13)
  • 14 - 14 (P0.14)
  • 15 - 15 (P0.15)
  • 16 - 16 (P0.16)
  • 17 - 17 (P0.17)
  • 18 - 18 (P0.18)
  • 19 - 19 (P0.19)
  • 20 - 20 (P0.20)
  • 21 - 21 (P0.21)
  • 22 - 22 (P0.22)
  • 23 - 23 (P0.23)
  • 24 - 24 (P0.24)
  • 25 - 25 (P0.25)
  • 26 - 26 (P0.26)
  • 27 - 27 (P0.27)
  • 28 - 28 (P0.28)
  • 29 - 29 (P0.29)
  • 30 - 30 (P0.30)
  • 31 - 31 (P0.31)
  • 32 - 32 (P1.0) (Applicable devices only)
  • 33 - 33 (P1.1) (Applicable devices only)
  • 34 - 34 (P1.2) (Applicable devices only)
  • 35 - 35 (P1.3) (Applicable devices only)
  • 36 - 36 (P1.4) (Applicable devices only)
  • 37 - 37 (P1.5) (Applicable devices only)
  • 38 - 38 (P1.6) (Applicable devices only)
  • 39 - 39 (P1.7) (Applicable devices only)
  • 40 - 40 (P1.8) (Applicable devices only)
  • 41 - 41 (P1.9) (Applicable devices only)
  • 42 - 42 (P1.10) (Applicable devices only)
  • 43 - 43 (P1.11) (Applicable devices only)
  • 44 - 44 (P1.12) (Applicable devices only)
  • 45 - 45 (P1.13) (Applicable devices only)
  • 46 - 46 (P1.14) (Applicable devices only)
  • 47 - 47 (P1.15) (Applicable devices only)
Note
This is an NRF_CONFIG macro.
#define NRF_BL_DFU_ENTER_METHOD_BUTTONLESS

Enter DFU mode when the Boolean enter_buttonless_dfu in DFU settings is true.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_DFU_ENTER_METHOD_GPREGRET

Enter DFU mode when bit 0 is set in the NRF_POWER_GPREGRET register.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_DFU_ENTER_METHOD_PINRESET

Enter DFU mode on pin reset.

Set to 1 to activate.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_DFU_INACTIVITY_TIMEOUT_MS

Timeout in ms before automatically starting a valid application due to inactivity.

If 0, no inactivity timer will be used. Values 1-99 are invalid.

Minimum value: 0 Maximum value: 60000000

Note
This is an NRF_CONFIG macro.
#define NRF_BL_FW_COPY_PROGRESS_STORE_STEP

Number of pages copied after which progress in the settings page is updated.

Progress stored in the settings page allows the bootloader to resume copying the new firmware in case of interruption (reset). If the value is small, then the resume point is more accurate. However, it also impacts negatively on flash wear.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_RESET_DELAY_MS

Time to wait before resetting the bootloader.

Time (in ms) to wait before resetting the bootloader after DFU has been completed or aborted. This allows more time for e.g. disconnecting the BLE link or writing logs.

Note
This is an NRF_CONFIG macro.
#define NRF_BL_WDT_MAX_SCHEDULER_LATENCY_MS

Maximum latency of the scheduler in miliseconds.

Maximum latency of the scheduler is compared with watchdog counter reload value (CRV). If latency is big enough, the watchdog will be fed from internal timer handler along with feed from user function. If latency is smaller than CRV, the watchdog will not be internally fed once it will be externally fed. Maximum latency is mainly affected by flash operations.

Note
This is an NRF_CONFIG macro.

Documentation feedback | Developer Zone | Subscribe | Updated