Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
Firmware Distribution models

Topics

 Firmware Distribution Server model
 API for the Firmware Distribution Server model
 

Enumerations

enum  bt_mesh_dfd_status {
  BT_MESH_DFD_SUCCESS , BT_MESH_DFD_ERR_INSUFFICIENT_RESOURCES , BT_MESH_DFD_ERR_WRONG_PHASE , BT_MESH_DFD_ERR_INTERNAL ,
  BT_MESH_DFD_ERR_FW_NOT_FOUND , BT_MESH_DFD_ERR_INVALID_APPKEY_INDEX , BT_MESH_DFD_ERR_RECEIVERS_LIST_EMPTY , BT_MESH_DFD_ERR_BUSY_WITH_DISTRIBUTION ,
  BT_MESH_DFD_ERR_BUSY_WITH_UPLOAD , BT_MESH_DFD_ERR_URI_NOT_SUPPORTED , BT_MESH_DFD_ERR_URI_MALFORMED , BT_MESH_DFD_ERR_URI_UNREACHABLE ,
  BT_MESH_DFD_ERR_NEW_FW_NOT_AVAILABLE , BT_MESH_DFD_ERR_SUSPEND_FAILED
}
 Firmware distribution status. More...
 
enum  bt_mesh_dfd_phase {
  BT_MESH_DFD_PHASE_IDLE , BT_MESH_DFD_PHASE_TRANSFER_ACTIVE , BT_MESH_DFD_PHASE_TRANSFER_SUCCESS , BT_MESH_DFD_PHASE_APPLYING_UPDATE ,
  BT_MESH_DFD_PHASE_COMPLETED , BT_MESH_DFD_PHASE_FAILED , BT_MESH_DFD_PHASE_CANCELING_UPDATE , BT_MESH_DFD_PHASE_TRANSFER_SUSPENDED
}
 Firmware distribution phases. More...
 
enum  bt_mesh_dfd_upload_phase { BT_MESH_DFD_UPLOAD_PHASE_IDLE , BT_MESH_DFD_UPLOAD_PHASE_TRANSFER_ACTIVE , BT_MESH_DFD_UPLOAD_PHASE_TRANSFER_ERROR , BT_MESH_DFD_UPLOAD_PHASE_TRANSFER_SUCCESS }
 Firmware upload phases. More...
 

Detailed Description

Enumeration Type Documentation

◆ bt_mesh_dfd_phase

#include <zephyr/bluetooth/mesh/dfd.h>

Firmware distribution phases.

Enumerator
BT_MESH_DFD_PHASE_IDLE 

No firmware distribution is in progress.

BT_MESH_DFD_PHASE_TRANSFER_ACTIVE 

Firmware distribution is in progress.

BT_MESH_DFD_PHASE_TRANSFER_SUCCESS 

The Transfer BLOB procedure has completed successfully.

BT_MESH_DFD_PHASE_APPLYING_UPDATE 

The Apply Firmware on Target Nodes procedure is being executed.

BT_MESH_DFD_PHASE_COMPLETED 

The Distribute Firmware procedure has completed successfully.

BT_MESH_DFD_PHASE_FAILED 

The Distribute Firmware procedure has failed.

BT_MESH_DFD_PHASE_CANCELING_UPDATE 

The Cancel Firmware Update procedure is being executed.

BT_MESH_DFD_PHASE_TRANSFER_SUSPENDED 

The Transfer BLOB procedure is suspended.

◆ bt_mesh_dfd_status

#include <zephyr/bluetooth/mesh/dfd.h>

Firmware distribution status.

Enumerator
BT_MESH_DFD_SUCCESS 

The message was processed successfully.

BT_MESH_DFD_ERR_INSUFFICIENT_RESOURCES 

Insufficient resources on the node.

BT_MESH_DFD_ERR_WRONG_PHASE 

The operation cannot be performed while the Server is in the current phase.

BT_MESH_DFD_ERR_INTERNAL 

An internal error occurred on the node.

BT_MESH_DFD_ERR_FW_NOT_FOUND 

The requested firmware image is not stored on the Distributor.

BT_MESH_DFD_ERR_INVALID_APPKEY_INDEX 

The AppKey identified by the AppKey Index is not known to the node.

BT_MESH_DFD_ERR_RECEIVERS_LIST_EMPTY 

There are no Target nodes in the Distribution Receivers List state.

BT_MESH_DFD_ERR_BUSY_WITH_DISTRIBUTION 

Another firmware image distribution is in progress.

BT_MESH_DFD_ERR_BUSY_WITH_UPLOAD 

Another upload is in progress.

BT_MESH_DFD_ERR_URI_NOT_SUPPORTED 

The URI scheme name indicated by the Update URI is not supported.

BT_MESH_DFD_ERR_URI_MALFORMED 

The format of the Update URI is invalid.

BT_MESH_DFD_ERR_URI_UNREACHABLE 

The URI is currently unreachable.

BT_MESH_DFD_ERR_NEW_FW_NOT_AVAILABLE 

The Check Firmware OOB procedure did not find any new firmware.

BT_MESH_DFD_ERR_SUSPEND_FAILED 

The suspension of the Distribute Firmware procedure failed.

◆ bt_mesh_dfd_upload_phase

#include <zephyr/bluetooth/mesh/dfd.h>

Firmware upload phases.

Enumerator
BT_MESH_DFD_UPLOAD_PHASE_IDLE 

No firmware upload is in progress.

BT_MESH_DFD_UPLOAD_PHASE_TRANSFER_ACTIVE 

The Store Firmware procedure is being executed.

BT_MESH_DFD_UPLOAD_PHASE_TRANSFER_ERROR 

The Store Firmware procedure or Store Firmware OOB procedure failed.

BT_MESH_DFD_UPLOAD_PHASE_TRANSFER_SUCCESS 

The Store Firmware procedure or the Store Firmware OOB procedure completed successfully.