Exported Functions

group DFU_INITIATOR_Exported_Functions

Function prototypes for DFU initiator operations.

Functions

void dfu_init_skip_caps_retrieve_set(bool skip)

Set the option to skip capability retrieval before starting blob transfer.

Parameters:

skip -- [in] Boolean flag to skip (true) or to perform the capabilities retrieval (false).

void dfu_init_models_init(uint8_t element_index, pf_dfu_init_cb_t pf_dfu_init_cb)

Initialize DFU initiator models with specified parameters.

Parameters:
  • element_index -- [in] Index of the element in the mesh network.

  • pf_dfu_init_cb -- [in] Pointer to callback function for handling initiator events.

bool dfu_init_upload_start(uint16_t dst, uint16_t app_key_index, uint16_t update_timeout_base, uint8_t *pfw_metadata, uint8_t metadata_len, fw_id_t *pfw_id, uint8_t fw_id_len, uint32_t fw_image_size)

Start the DFU upload process.

Parameters:
  • dst -- [in] Multicast address for distribution destination.

  • app_key_index -- [in] Index of the application key used.

  • update_timeout_base -- [in] Timeout base used by nodes for receiving data.

  • pfw_metadata -- [in] Pointer to the firmware metadata.

  • metadata_len -- [in] Length of the firmware metadata.

  • pfw_id -- [in] Pointer to the firmware ID.

  • fw_id_len -- [in] Length of the firmware ID.

  • fw_image_size -- [in] Size of the firmware image in bytes.

Return values:
  • true -- If upload successfully initiated.

  • false -- If upload initiation failed. Validate destination, keys, and image parameters.

Returns:

Operation result.

void dfu_init_clear(void)

Clear all settings and states related to the DFU initiator process.

void dfu_init_handle_timeout(void)

Handle timeouts that occur during the DFU initiation process.