RA Flexible Software Package Documentation  Release v5.2.0

 
BLE Mesh Network Health Client (rm_mesh_health_clt)

Functions

fsp_err_t RM_MESH_HEALTH_CLIENT_Open (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, rm_ble_mesh_model_client_cfg_t const *const p_cfg)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_Close (rm_ble_mesh_model_client_ctrl_t *const p_ctrl)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_GetModelHandle (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, rm_ble_mesh_access_model_handle_t *const p_model_handle)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_SendReliablePdu (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, uint32_t req_opcode, void const *const p_parameter, uint32_t rsp_opcode)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_FaultGet (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_FaultClearUnacknowledged (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_FaultClear (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_FaultTest (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_FaultTestUnacknowledged (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_PeriodGet (rm_ble_mesh_model_client_ctrl_t *const p_ctrl)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_PeriodSetUnacknowledged (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_PeriodSet (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_AttentionGet (rm_ble_mesh_model_client_ctrl_t *const p_ctrl)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_AttentionSet (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 
fsp_err_t RM_MESH_HEALTH_CLIENT_AttentionSetUnacknowledged (rm_ble_mesh_model_client_ctrl_t *const p_ctrl, void const *const p_parameter)
 

Detailed Description

Overview

Target Devices

The BLE Mesh Network Health Client module supports the following devices.

Configuration

Build Time Configurations for rm_mesh_health_clt

The following build time configurations are defined in fsp_cfg/rm_mesh_health_clt_cfg.h:

ConfigurationOptionsDefaultDescription

Configurations for Networking > BLE Mesh Network modules > BLE Mesh Model Health Client (rm_mesh_health_clt)

This module can be added to the Stacks tab via New Stack > Networking > BLE Mesh Network modules > BLE Mesh Model Health Client (rm_mesh_health_clt).

ConfigurationOptionsDefaultDescription
Interrupts
Callback Provided when Timeout occursName Must Be a Valid C SymbolNULL Callback provided when mesh health client ISR occurs
NameName Must Be a Valid C Symbolg_rm_mesh_health_clt0 Module name.

Data Structures

struct  rm_mesh_health_clt_instance_ctrl_t
 

Data Structure Documentation

◆ rm_mesh_health_clt_instance_ctrl_t

struct rm_mesh_health_clt_instance_ctrl_t

BLE mesh health client instance control block. DO NOT INITIALIZE. Initialization occurs when RM_MESH_HEALTH_CLIENT_Open() is called.

Function Documentation

◆ RM_MESH_HEALTH_CLIENT_Open()

fsp_err_t RM_MESH_HEALTH_CLIENT_Open ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
rm_ble_mesh_model_client_cfg_t const *const  p_cfg 
)

Open Health Client middleware. This is to initialize Health Client model and to register with Access layer.

Implements rm_ble_mesh_model_client_api_t::open.

Example:

/* Open the module. */
err = RM_MESH_HEALTH_CLIENT_Open(&g_mesh_health_clt0_ctrl, &g_mesh_health_clt0_cfg);
Return values
FSP_SUCCESSModel opened successfully.
FSP_ERR_ASSERTIONPointer to control block or configuration structure is NULL.
FSP_ERR_ALREADY_OPENModel is already open.
FSP_ERR_NOT_FOUNDThe number of models has exceeded the limit.
FSP_ERR_ABORTEDModel initialization is failed.

◆ RM_MESH_HEALTH_CLIENT_Close()

fsp_err_t RM_MESH_HEALTH_CLIENT_Close ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl)

Close Health Client middleware.

Implements rm_ble_mesh_model_client_api_t::close.

Example:

/* Close the module. */
err = RM_MESH_HEALTH_CLIENT_Close(&g_mesh_health_clt0_ctrl);
Return values
FSP_SUCCESSModel successfully closed.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.

◆ RM_MESH_HEALTH_CLIENT_GetModelHandle()

fsp_err_t RM_MESH_HEALTH_CLIENT_GetModelHandle ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
rm_ble_mesh_access_model_handle_t *const  p_model_handle 
)

This is to get the handle of Health client model.

Implements rm_ble_mesh_model_client_api_t::getModelHandle.

Example:

/* Get the handle of health client model. */
err = RM_MESH_HEALTH_CLIENT_GetModelHandle(&g_mesh_health_clt0_ctrl, &model_handle);
Return values
FSP_SUCCESSGot model handle successfully.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_POINTERThe parameter p_model_handle is NULL.

◆ RM_MESH_HEALTH_CLIENT_SendReliablePdu()

fsp_err_t RM_MESH_HEALTH_CLIENT_SendReliablePdu ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
uint32_t  req_opcode,
void const *const  p_parameter,
uint32_t  rsp_opcode 
)

This is to set the handle of Health client model.

Implements rm_ble_mesh_model_client_api_t::sendReliablePdu.

Example:

/* Initialize sending acknowledged commands. */
err = RM_MESH_HEALTH_CLIENT_SendReliablePdu(&g_mesh_health_clt0_ctrl, req_opcode, p_parameter, rsp_opcode);
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_FaultGet()

fsp_err_t RM_MESH_HEALTH_CLIENT_FaultGet ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Fault Get is an acknowledged message used to get the current Registered Fault state identified by Company ID of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_fault_get_clear_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_FaultClearUnacknowledged()

fsp_err_t RM_MESH_HEALTH_CLIENT_FaultClearUnacknowledged ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Fault Clear Unacknowledged is an unacknowledged message used to clear the current Registered Fault state identified by Company ID of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_fault_get_clear_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_FaultClear()

fsp_err_t RM_MESH_HEALTH_CLIENT_FaultClear ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Fault Clear is an acknowledged message used to clear the current Registered Fault state identified by Company ID of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_fault_get_clear_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_FaultTest()

fsp_err_t RM_MESH_HEALTH_CLIENT_FaultTest ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Fault Test is an acknowledged message used to invoke a self-test procedure of an element. The procedure is implementation specific and may result in changing the Health Fault state of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_fault_test_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_FaultTestUnacknowledged()

fsp_err_t RM_MESH_HEALTH_CLIENT_FaultTestUnacknowledged ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Fault Test Unacknowledged is an unacknowledged message used to invoke a self-test procedure of an element. The procedure is implementation specific and may result in changing the Health Fault state of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_fault_test_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_PeriodGet()

fsp_err_t RM_MESH_HEALTH_CLIENT_PeriodGet ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl)

The Health Period Get is an acknowledged message used to get the current Health Period state of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_PeriodSetUnacknowledged()

fsp_err_t RM_MESH_HEALTH_CLIENT_PeriodSetUnacknowledged ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Period Set Unacknowledged is an unacknowledged message used to set the current Health Period state of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_period_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_PeriodSet()

fsp_err_t RM_MESH_HEALTH_CLIENT_PeriodSet ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Period Set is an acknowledged message used to set the current Health Period state of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_period_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_AttentionGet()

fsp_err_t RM_MESH_HEALTH_CLIENT_AttentionGet ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl)

The Health Attention Get is an acknowledged message used to get the current Attention Timer state of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_AttentionSet()

fsp_err_t RM_MESH_HEALTH_CLIENT_AttentionSet ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Attention Set is an acknowledged message used to set the Attention Timer state of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_attention_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.

◆ RM_MESH_HEALTH_CLIENT_AttentionSetUnacknowledged()

fsp_err_t RM_MESH_HEALTH_CLIENT_AttentionSetUnacknowledged ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl,
void const *const  p_parameter 
)

The Health Attention Set Unacknowledged is an unacknowledged message used to set the Attention Timer state of an element.

Parameters
[in]p_ctrlrm_mesh_health_clt control block.
[in]p_parameterPointer to the structure populated as in rm_mesh_health_clt_attention_info_t.
Return values
FSP_SUCCESSOperation succeeded.
FSP_ERR_ASSERTIONThe parameter p_ctrl is NULL.
FSP_ERR_NOT_OPENModel is not open.
FSP_ERR_INVALID_ARGUMENTInput parameter is invalid.
FSP_ERR_INVALID_POINTERThe parameter p_parameter is NULL.
FSP_ERR_APPROXIMATIONLower layer is invalid state.
FSP_ERR_NOT_FOUNDInput parameter is not found.
FSP_ERR_INVALID_ADDRESSInvalid source address.
FSP_ERR_OUT_OF_MEMORYMemory allocation is failed.
FSP_ERR_OVERFLOWTX queue is full.
FSP_ERR_UNDERFLOWTX queue is empty.
FSP_ERR_ABORTEDOperation is failed.