RA Flexible Software Package Documentation  Release v5.2.0

 
BLE Mesh Network Generic Battery Client (rm_mesh_generic_battery_clt)

Functions

fsp_err_t RM_MESH_GENERIC_BATTERY_CLT_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_GENERIC_BATTERY_CLT_Close (rm_ble_mesh_model_client_ctrl_t *const p_ctrl)
 
fsp_err_t RM_MESH_GENERIC_BATTERY_CLT_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_GENERIC_BATTERY_CLT_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_GENERIC_BATTERY_CLT_Get (rm_ble_mesh_model_client_ctrl_t *const p_ctrl)
 

Detailed Description

Overview

Target Devices

The BLE Mesh Network Generic Battery Client module supports the following devices.

Configuration

Build Time Configurations for rm_mesh_generic_battery_clt

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

ConfigurationOptionsDefaultDescription

Configurations for Networking > BLE Mesh Network modules > BLE Mesh Model Generic Battery Client (rm_mesh_generic_battery_clt)

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

ConfigurationOptionsDefaultDescription
Interrupts
Callback Provided when Timeout OccursName Must Be a Valid C SymbolNULL Callback provided when mesh generic battery client ISR occurs
NameName Must Be a Valid C Symbolg_rm_mesh_generic_battery_clt0 Module name.

Data Structures

struct  rm_mesh_generic_battery_clt_instance_ctrl_t
 

Data Structure Documentation

◆ rm_mesh_generic_battery_clt_instance_ctrl_t

struct rm_mesh_generic_battery_clt_instance_ctrl_t

BLE mesh generic battery instance control block. DO NOT INITIALIZE. Initialization occurs when RM_MESH_GENERIC_BATTERY_CLT_Open() is called.

Function Documentation

◆ RM_MESH_GENERIC_BATTERY_CLT_Open()

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

Open Generic Battery Client middleware. This is to initialize Generic_Battery Client model and to register with Access layer.

Implements rm_ble_mesh_model_client_api_t::open.

Example:

/* Open the module. */
err = RM_MESH_GENERIC_BATTERY_CLT_Open(&g_mesh_generic_battery_clt0_ctrl, &g_mesh_generic_battery_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_GENERIC_BATTERY_CLT_Close()

fsp_err_t RM_MESH_GENERIC_BATTERY_CLT_Close ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl)

Close Generic Battery Client middleware.

Implements rm_ble_mesh_model_client_api_t::close.

Example:

/* Close the module. */
err = RM_MESH_GENERIC_BATTERY_CLT_Close(&g_mesh_generic_battery_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_GENERIC_BATTERY_CLT_GetModelHandle()

fsp_err_t RM_MESH_GENERIC_BATTERY_CLT_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 Generic_Battery client model.

Implements rm_ble_mesh_model_client_api_t::getModelHandle.

Example:

/* Get the handle of generic battery client model. */
err = RM_MESH_GENERIC_BATTERY_CLT_GetModelHandle(&g_mesh_generic_battery_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_GENERIC_BATTERY_CLT_SendReliablePdu()

fsp_err_t RM_MESH_GENERIC_BATTERY_CLT_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 initialize sending acknowledged commands.

Implements rm_ble_mesh_model_client_api_t::sendReliablePdu.

Example:

/* Initialize sending acknowledged commands. */
err = RM_MESH_GENERIC_BATTERY_CLT_SendReliablePdu(&g_mesh_generic_battery_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_GENERIC_BATTERY_CLT_Get()

fsp_err_t RM_MESH_GENERIC_BATTERY_CLT_Get ( rm_ble_mesh_model_client_ctrl_t *const  p_ctrl)

Generic Battery Get message is an acknowledged message used to get the Generic Battery state of an element. The response to the Generic Battery Get message is a Generic Battery Status message. There are no parameters for this message.

Parameters
[in]p_ctrlrm_mesh_generic_battery_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.