Zephyr API Documentation 4.0.0-rc2
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
Configuration Client Model

Configuration Client Model . More...

Data Structures

struct  bt_mesh_cfg_cli_cb
 Mesh Configuration Client Status messages callback. More...
 
struct  bt_mesh_cfg_cli
 Mesh Configuration Client Model Context. More...
 
struct  bt_mesh_cfg_cli_mod_pub
 Model publication configuration parameters. More...
 
struct  bt_mesh_cfg_cli_hb_sub
 Heartbeat subscription configuration parameters. More...
 
struct  bt_mesh_cfg_cli_hb_pub
 Heartbeat publication configuration parameters. More...
 
struct  bt_mesh_comp_p0
 Parsed Composition data page 0 representation. More...
 
struct  bt_mesh_comp_p0_elem
 Composition data page 0 element representation. More...
 
struct  bt_mesh_comp_p1_elem
 Composition data page 1 element representation. More...
 
struct  bt_mesh_comp_p1_model_item
 Composition data page 1 model item representation. More...
 
struct  bt_mesh_comp_p1_item_short
 Extended Model Item in short representation. More...
 
struct  bt_mesh_comp_p1_item_long
 Extended Model Item in long representation. More...
 
struct  bt_mesh_comp_p1_ext_item
 Extended Model Item. More...
 
struct  bt_mesh_comp_p2_record
 Composition data page 2 record parsing structure. More...
 

Macros

#define BT_MESH_MODEL_CFG_CLI(cli_data)
 Generic Configuration Client model composition data entry.
 
#define BT_MESH_PUB_PERIOD_100MS(steps)
 Helper macro to encode model publication period in units of 100ms.
 
#define BT_MESH_PUB_PERIOD_SEC(steps)
 Helper macro to encode model publication period in units of 1 second.
 
#define BT_MESH_PUB_PERIOD_10SEC(steps)
 Helper macro to encode model publication period in units of 10 seconds.
 
#define BT_MESH_PUB_PERIOD_10MIN(steps)
 Helper macro to encode model publication period in units of 10 minutes.
 

Functions

int bt_mesh_cfg_cli_node_reset (uint16_t net_idx, uint16_t addr, bool *status)
 Reset the target node and remove it from the network.
 
int bt_mesh_cfg_cli_comp_data_get (uint16_t net_idx, uint16_t addr, uint8_t page, uint8_t *rsp, struct net_buf_simple *comp)
 Get the target node's composition data.
 
int bt_mesh_cfg_cli_beacon_get (uint16_t net_idx, uint16_t addr, uint8_t *status)
 Get the target node's network beacon state.
 
int bt_mesh_cfg_cli_krp_get (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint8_t *status, uint8_t *phase)
 Get the target node's network key refresh phase state.
 
int bt_mesh_cfg_cli_krp_set (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint8_t transition, uint8_t *status, uint8_t *phase)
 Set the target node's network key refresh phase parameters.
 
int bt_mesh_cfg_cli_beacon_set (uint16_t net_idx, uint16_t addr, uint8_t val, uint8_t *status)
 Set the target node's network beacon state.
 
int bt_mesh_cfg_cli_ttl_get (uint16_t net_idx, uint16_t addr, uint8_t *ttl)
 Get the target node's Time To Live value.
 
int bt_mesh_cfg_cli_ttl_set (uint16_t net_idx, uint16_t addr, uint8_t val, uint8_t *ttl)
 Set the target node's Time To Live value.
 
int bt_mesh_cfg_cli_friend_get (uint16_t net_idx, uint16_t addr, uint8_t *status)
 Get the target node's Friend feature status.
 
int bt_mesh_cfg_cli_friend_set (uint16_t net_idx, uint16_t addr, uint8_t val, uint8_t *status)
 Set the target node's Friend feature state.
 
int bt_mesh_cfg_cli_gatt_proxy_get (uint16_t net_idx, uint16_t addr, uint8_t *status)
 Get the target node's Proxy feature state.
 
int bt_mesh_cfg_cli_gatt_proxy_set (uint16_t net_idx, uint16_t addr, uint8_t val, uint8_t *status)
 Set the target node's Proxy feature state.
 
int bt_mesh_cfg_cli_net_transmit_get (uint16_t net_idx, uint16_t addr, uint8_t *transmit)
 Get the target node's network_transmit state.
 
int bt_mesh_cfg_cli_net_transmit_set (uint16_t net_idx, uint16_t addr, uint8_t val, uint8_t *transmit)
 Set the target node's network transmit parameters.
 
int bt_mesh_cfg_cli_relay_get (uint16_t net_idx, uint16_t addr, uint8_t *status, uint8_t *transmit)
 Get the target node's Relay feature state.
 
int bt_mesh_cfg_cli_relay_set (uint16_t net_idx, uint16_t addr, uint8_t new_relay, uint8_t new_transmit, uint8_t *status, uint8_t *transmit)
 Set the target node's Relay parameters.
 
int bt_mesh_cfg_cli_net_key_add (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, const uint8_t net_key[16], uint8_t *status)
 Add a network key to the target node.
 
int bt_mesh_cfg_cli_net_key_get (uint16_t net_idx, uint16_t addr, uint16_t *keys, size_t *key_cnt)
 Get a list of the target node's network key indexes.
 
int bt_mesh_cfg_cli_net_key_del (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint8_t *status)
 Delete a network key from the target node.
 
int bt_mesh_cfg_cli_app_key_add (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint16_t key_app_idx, const uint8_t app_key[16], uint8_t *status)
 Add an application key to the target node.
 
int bt_mesh_cfg_cli_app_key_get (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint8_t *status, uint16_t *keys, size_t *key_cnt)
 Get a list of the target node's application key indexes for a specific network key.
 
int bt_mesh_cfg_cli_app_key_del (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint16_t key_app_idx, uint8_t *status)
 Delete an application key from the target node.
 
int bt_mesh_cfg_cli_mod_app_bind (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_app_idx, uint16_t mod_id, uint8_t *status)
 Bind an application to a SIG model on the target node.
 
int bt_mesh_cfg_cli_mod_app_unbind (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_app_idx, uint16_t mod_id, uint8_t *status)
 Unbind an application from a SIG model on the target node.
 
int bt_mesh_cfg_cli_mod_app_bind_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_app_idx, uint16_t mod_id, uint16_t cid, uint8_t *status)
 Bind an application to a vendor model on the target node.
 
int bt_mesh_cfg_cli_mod_app_unbind_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_app_idx, uint16_t mod_id, uint16_t cid, uint8_t *status)
 Unbind an application from a vendor model on the target node.
 
int bt_mesh_cfg_cli_mod_app_get (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, uint8_t *status, uint16_t *apps, size_t *app_cnt)
 Get a list of all applications bound to a SIG model on the target node.
 
int bt_mesh_cfg_cli_mod_app_get_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, uint16_t cid, uint8_t *status, uint16_t *apps, size_t *app_cnt)
 Get a list of all applications bound to a vendor model on the target node.
 
int bt_mesh_cfg_cli_mod_pub_get (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, struct bt_mesh_cfg_cli_mod_pub *pub, uint8_t *status)
 Get publish parameters for a SIG model on the target node.
 
int bt_mesh_cfg_cli_mod_pub_get_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, uint16_t cid, struct bt_mesh_cfg_cli_mod_pub *pub, uint8_t *status)
 Get publish parameters for a vendor model on the target node.
 
int bt_mesh_cfg_cli_mod_pub_set (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, struct bt_mesh_cfg_cli_mod_pub *pub, uint8_t *status)
 Set publish parameters for a SIG model on the target node.
 
int bt_mesh_cfg_cli_mod_pub_set_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, uint16_t cid, struct bt_mesh_cfg_cli_mod_pub *pub, uint8_t *status)
 Set publish parameters for a vendor model on the target node.
 
int bt_mesh_cfg_cli_mod_sub_add (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t sub_addr, uint16_t mod_id, uint8_t *status)
 Add a group address to a SIG model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_add_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t sub_addr, uint16_t mod_id, uint16_t cid, uint8_t *status)
 Add a group address to a vendor model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_del (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t sub_addr, uint16_t mod_id, uint8_t *status)
 Delete a group address in a SIG model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_del_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t sub_addr, uint16_t mod_id, uint16_t cid, uint8_t *status)
 Delete a group address in a vendor model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_overwrite (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t sub_addr, uint16_t mod_id, uint8_t *status)
 Overwrite all addresses in a SIG model's subscription list with a group address.
 
int bt_mesh_cfg_cli_mod_sub_overwrite_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t sub_addr, uint16_t mod_id, uint16_t cid, uint8_t *status)
 Overwrite all addresses in a vendor model's subscription list with a group address.
 
int bt_mesh_cfg_cli_mod_sub_va_add (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, const uint8_t label[16], uint16_t mod_id, uint16_t *virt_addr, uint8_t *status)
 Add a virtual address to a SIG model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_va_add_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, const uint8_t label[16], uint16_t mod_id, uint16_t cid, uint16_t *virt_addr, uint8_t *status)
 Add a virtual address to a vendor model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_va_del (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, const uint8_t label[16], uint16_t mod_id, uint16_t *virt_addr, uint8_t *status)
 Delete a virtual address in a SIG model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_va_del_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, const uint8_t label[16], uint16_t mod_id, uint16_t cid, uint16_t *virt_addr, uint8_t *status)
 Delete a virtual address in a vendor model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_va_overwrite (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, const uint8_t label[16], uint16_t mod_id, uint16_t *virt_addr, uint8_t *status)
 Overwrite all addresses in a SIG model's subscription list with a virtual address.
 
int bt_mesh_cfg_cli_mod_sub_va_overwrite_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, const uint8_t label[16], uint16_t mod_id, uint16_t cid, uint16_t *virt_addr, uint8_t *status)
 Overwrite all addresses in a vendor model's subscription list with a virtual address.
 
int bt_mesh_cfg_cli_mod_sub_get (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, uint8_t *status, uint16_t *subs, size_t *sub_cnt)
 Get the subscription list of a SIG model on the target node.
 
int bt_mesh_cfg_cli_mod_sub_get_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, uint16_t cid, uint8_t *status, uint16_t *subs, size_t *sub_cnt)
 Get the subscription list of a vendor model on the target node.
 
int bt_mesh_cfg_cli_hb_sub_set (uint16_t net_idx, uint16_t addr, struct bt_mesh_cfg_cli_hb_sub *sub, uint8_t *status)
 Set the target node's Heartbeat subscription parameters.
 
int bt_mesh_cfg_cli_hb_sub_get (uint16_t net_idx, uint16_t addr, struct bt_mesh_cfg_cli_hb_sub *sub, uint8_t *status)
 Get the target node's Heartbeat subscription parameters.
 
int bt_mesh_cfg_cli_hb_pub_set (uint16_t net_idx, uint16_t addr, const struct bt_mesh_cfg_cli_hb_pub *pub, uint8_t *status)
 Set the target node's Heartbeat publication parameters.
 
int bt_mesh_cfg_cli_hb_pub_get (uint16_t net_idx, uint16_t addr, struct bt_mesh_cfg_cli_hb_pub *pub, uint8_t *status)
 Get the target node's Heartbeat publication parameters.
 
int bt_mesh_cfg_cli_mod_sub_del_all (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, uint8_t *status)
 Delete all group addresses in a SIG model's subscription list.
 
int bt_mesh_cfg_cli_mod_sub_del_all_vnd (uint16_t net_idx, uint16_t addr, uint16_t elem_addr, uint16_t mod_id, uint16_t cid, uint8_t *status)
 Delete all group addresses in a vendor model's subscription list.
 
int bt_mesh_cfg_cli_net_key_update (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, const uint8_t net_key[16], uint8_t *status)
 Update a network key to the target node.
 
int bt_mesh_cfg_cli_app_key_update (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint16_t key_app_idx, const uint8_t app_key[16], uint8_t *status)
 Update an application key to the target node.
 
int bt_mesh_cfg_cli_node_identity_set (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint8_t new_identity, uint8_t *status, uint8_t *identity)
 Set the Node Identity parameters.
 
int bt_mesh_cfg_cli_node_identity_get (uint16_t net_idx, uint16_t addr, uint16_t key_net_idx, uint8_t *status, uint8_t *identity)
 Get the Node Identity parameters.
 
int bt_mesh_cfg_cli_lpn_timeout_get (uint16_t net_idx, uint16_t addr, uint16_t unicast_addr, int32_t *polltimeout)
 Get the Low Power Node Polltimeout parameters.
 
int32_t bt_mesh_cfg_cli_timeout_get (void)
 Get the current transmission timeout value.
 
void bt_mesh_cfg_cli_timeout_set (int32_t timeout)
 Set the transmission timeout value.
 
int bt_mesh_comp_p0_get (struct bt_mesh_comp_p0 *comp, struct net_buf_simple *buf)
 Create a composition data page 0 representation from a buffer.
 
struct bt_mesh_comp_p0_elembt_mesh_comp_p0_elem_pull (const struct bt_mesh_comp_p0 *comp, struct bt_mesh_comp_p0_elem *elem)
 Pull a composition data page 0 element from a composition data page 0 instance.
 
uint16_t bt_mesh_comp_p0_elem_mod (struct bt_mesh_comp_p0_elem *elem, int idx)
 Get a SIG model from the given composition data page 0 element.
 
struct bt_mesh_mod_id_vnd bt_mesh_comp_p0_elem_mod_vnd (struct bt_mesh_comp_p0_elem *elem, int idx)
 Get a vendor model from the given composition data page 0 element.
 
struct bt_mesh_comp_p1_elembt_mesh_comp_p1_elem_pull (struct net_buf_simple *buf, struct bt_mesh_comp_p1_elem *elem)
 Pull a Composition Data Page 1 Element from a composition data page 1 instance.
 
struct bt_mesh_comp_p1_model_itembt_mesh_comp_p1_item_pull (struct bt_mesh_comp_p1_elem *elem, struct bt_mesh_comp_p1_model_item *item)
 Pull a Composition Data Page 1 Model Item from a Composition Data Page 1 Element.
 
struct bt_mesh_comp_p1_ext_itembt_mesh_comp_p1_pull_ext_item (struct bt_mesh_comp_p1_model_item *item, struct bt_mesh_comp_p1_ext_item *ext_item)
 Pull Extended Model Item contained in Model Item.
 
struct bt_mesh_comp_p2_recordbt_mesh_comp_p2_record_pull (struct net_buf_simple *buf, struct bt_mesh_comp_p2_record *record)
 Pull a Composition Data Page 2 Record from a composition data page 2 instance.
 
int bt_mesh_key_idx_unpack_list (struct net_buf_simple *buf, uint16_t *dst_arr, size_t *dst_cnt)
 Unpack a list of key index entries from a buffer.
 

Detailed Description

Configuration Client Model .

Macro Definition Documentation

◆ BT_MESH_MODEL_CFG_CLI

#define BT_MESH_MODEL_CFG_CLI ( cli_data)

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

Value:
bt_mesh_cfg_cli_op, NULL, \
cli_data, 1, 0, &bt_mesh_cfg_cli_cb)
#define BT_MESH_MODEL_ID_CFG_CLI
Configuration Client.
Definition access.h:181
#define BT_MESH_MODEL_CNT_CB(_id, _op, _pub, _user_data, _keys, _grps, _cb)
Composition data SIG model entry with callback functions with specific number of keys & groups.
Definition access.h:436
Mesh Configuration Client Status messages callback.
Definition cfg_cli.h:33

Generic Configuration Client model composition data entry.

Parameters
cli_dataPointer to a Configuration Client Model instance.

◆ BT_MESH_PUB_PERIOD_100MS

#define BT_MESH_PUB_PERIOD_100MS ( steps)

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

Value:
((steps) & BIT_MASK(6))
#define BIT_MASK(n)
Bit mask with bits 0 through n-1 (inclusive) set, or 0 if n is 0.
Definition util_macro.h:68

Helper macro to encode model publication period in units of 100ms.

Parameters
stepsNumber of 100ms steps.
Returns
Encoded value that can be assigned to bt_mesh_cfg_cli_mod_pub.period

◆ BT_MESH_PUB_PERIOD_10MIN

#define BT_MESH_PUB_PERIOD_10MIN ( steps)

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

Value:
(((steps) & BIT_MASK(6)) | (3 << 6))

Helper macro to encode model publication period in units of 10 minutes.

Parameters
stepsNumber of 10 minute steps.
Returns
Encoded value that can be assigned to bt_mesh_cfg_cli_mod_pub.period

◆ BT_MESH_PUB_PERIOD_10SEC

#define BT_MESH_PUB_PERIOD_10SEC ( steps)

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

Value:
(((steps) & BIT_MASK(6)) | (2 << 6))

Helper macro to encode model publication period in units of 10 seconds.

Parameters
stepsNumber of 10 second steps.
Returns
Encoded value that can be assigned to bt_mesh_cfg_cli_mod_pub.period

◆ BT_MESH_PUB_PERIOD_SEC

#define BT_MESH_PUB_PERIOD_SEC ( steps)

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

Value:
(((steps) & BIT_MASK(6)) | (1 << 6))

Helper macro to encode model publication period in units of 1 second.

Parameters
stepsNumber of 1 second steps.
Returns
Encoded value that can be assigned to bt_mesh_cfg_cli_mod_pub.period

Function Documentation

◆ bt_mesh_cfg_cli_app_key_add()

int bt_mesh_cfg_cli_app_key_add ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint16_t key_app_idx,
const uint8_t app_key[16],
uint8_t * status )

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

Add an application key to the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index the application key belongs to.
key_app_idxApplication key index.
app_keyApplication key.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_app_key_del()

int bt_mesh_cfg_cli_app_key_del ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint16_t key_app_idx,
uint8_t * status )

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

Delete an application key from the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index the application key belongs to.
key_app_idxApplication key index.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_app_key_get()

int bt_mesh_cfg_cli_app_key_get ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint8_t * status,
uint16_t * keys,
size_t * key_cnt )

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

Get a list of the target node's application key indexes for a specific network key.

This method can be used asynchronously by setting status and ( keys or key_cnt ) as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index to request the app key indexes of.
statusStatus response parameter.
keysApp key index list response parameter. Will be filled with all the returned application key indexes it can fill.
key_cntApp key index list length. Should be set to the capacity of the keys list when calling. Will return the number of returned application key indexes upon success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_app_key_update()

int bt_mesh_cfg_cli_app_key_update ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint16_t key_app_idx,
const uint8_t app_key[16],
uint8_t * status )

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

Update an application key to the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index the application key belongs to.
key_app_idxApplication key index.
app_keyApplication key.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_beacon_get()

int bt_mesh_cfg_cli_beacon_get ( uint16_t net_idx,
uint16_t addr,
uint8_t * status )

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

Get the target node's network beacon state.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
statusStatus response parameter, returns one of BT_MESH_BEACON_DISABLED or BT_MESH_BEACON_ENABLED on success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_beacon_set()

int bt_mesh_cfg_cli_beacon_set ( uint16_t net_idx,
uint16_t addr,
uint8_t val,
uint8_t * status )

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

Set the target node's network beacon state.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
valNew network beacon state, should be one of BT_MESH_BEACON_DISABLED or BT_MESH_BEACON_ENABLED.
statusStatus response parameter. Returns one of BT_MESH_BEACON_DISABLED or BT_MESH_BEACON_ENABLED on success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_comp_data_get()

int bt_mesh_cfg_cli_comp_data_get ( uint16_t net_idx,
uint16_t addr,
uint8_t page,
uint8_t * rsp,
struct net_buf_simple * comp )

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

Get the target node's composition data.

If the other device does not have the given composition data page, it will return the largest page number it supports that is less than the requested page index. The actual page the device responds with is returned in rsp.

This method can be used asynchronously by setting rsp and comp as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
pageComposition data page, or 0xff to request the first available page.
rspReturn parameter for the returned page number, or NULL.
compComposition data buffer to fill.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_friend_get()

int bt_mesh_cfg_cli_friend_get ( uint16_t net_idx,
uint16_t addr,
uint8_t * status )

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

Get the target node's Friend feature status.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
statusStatus response parameter. Returns one of BT_MESH_FRIEND_DISABLED, BT_MESH_FRIEND_ENABLED or BT_MESH_FRIEND_NOT_SUPPORTED on success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_friend_set()

int bt_mesh_cfg_cli_friend_set ( uint16_t net_idx,
uint16_t addr,
uint8_t val,
uint8_t * status )

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

Set the target node's Friend feature state.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
valNew Friend feature state. Should be one of BT_MESH_FRIEND_DISABLED or BT_MESH_FRIEND_ENABLED.
statusStatus response parameter. Returns one of BT_MESH_FRIEND_DISABLED, BT_MESH_FRIEND_ENABLED or BT_MESH_FRIEND_NOT_SUPPORTED on success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_gatt_proxy_get()

int bt_mesh_cfg_cli_gatt_proxy_get ( uint16_t net_idx,
uint16_t addr,
uint8_t * status )

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

Get the target node's Proxy feature state.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
statusStatus response parameter. Returns one of BT_MESH_GATT_PROXY_DISABLED, BT_MESH_GATT_PROXY_ENABLED or BT_MESH_GATT_PROXY_NOT_SUPPORTED on success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_gatt_proxy_set()

int bt_mesh_cfg_cli_gatt_proxy_set ( uint16_t net_idx,
uint16_t addr,
uint8_t val,
uint8_t * status )

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

Set the target node's Proxy feature state.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
valNew Proxy feature state. Must be one of BT_MESH_GATT_PROXY_DISABLED or BT_MESH_GATT_PROXY_ENABLED.
statusStatus response parameter. Returns one of BT_MESH_GATT_PROXY_DISABLED, BT_MESH_GATT_PROXY_ENABLED or BT_MESH_GATT_PROXY_NOT_SUPPORTED on success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_hb_pub_get()

int bt_mesh_cfg_cli_hb_pub_get ( uint16_t net_idx,
uint16_t addr,
struct bt_mesh_cfg_cli_hb_pub * pub,
uint8_t * status )

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

Get the target node's Heartbeat publication parameters.

This method can be used asynchronously by setting status and pub as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
pubHeartbeat publication parameter return buffer.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_hb_pub_set()

int bt_mesh_cfg_cli_hb_pub_set ( uint16_t net_idx,
uint16_t addr,
const struct bt_mesh_cfg_cli_hb_pub * pub,
uint8_t * status )

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

Set the target node's Heartbeat publication parameters.

Note
The target node must already have received the specified network key.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

pub shall not be NULL;

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
pubNew Heartbeat publication parameters.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_hb_sub_get()

int bt_mesh_cfg_cli_hb_sub_get ( uint16_t net_idx,
uint16_t addr,
struct bt_mesh_cfg_cli_hb_sub * sub,
uint8_t * status )

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

Get the target node's Heartbeat subscription parameters.

This method can be used asynchronously by setting status and sub as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
subHeartbeat subscription parameter return buffer.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_hb_sub_set()

int bt_mesh_cfg_cli_hb_sub_set ( uint16_t net_idx,
uint16_t addr,
struct bt_mesh_cfg_cli_hb_sub * sub,
uint8_t * status )

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

Set the target node's Heartbeat subscription parameters.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

sub shall not be null.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
subNew Heartbeat subscription parameters.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_krp_get()

int bt_mesh_cfg_cli_krp_get ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint8_t * status,
uint8_t * phase )

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

Get the target node's network key refresh phase state.

This method can be used asynchronously by setting status and phase as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index.
statusStatus response parameter.
phasePointer to the Key Refresh variable to fill.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_krp_set()

int bt_mesh_cfg_cli_krp_set ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint8_t transition,
uint8_t * status,
uint8_t * phase )

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

Set the target node's network key refresh phase parameters.

This method can be used asynchronously by setting status and phase as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index.
transitionTransition parameter.
statusStatus response parameter.
phasePointer to the new Key Refresh phase. Will return the actual Key Refresh phase after updating.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_lpn_timeout_get()

int bt_mesh_cfg_cli_lpn_timeout_get ( uint16_t net_idx,
uint16_t addr,
uint16_t unicast_addr,
int32_t * polltimeout )

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

Get the Low Power Node Polltimeout parameters.

This method can be used asynchronously by setting polltimeout as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
unicast_addrLPN unicast address.
polltimeoutPoll timeout response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_app_bind()

int bt_mesh_cfg_cli_mod_app_bind ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_app_idx,
uint16_t mod_id,
uint8_t * status )

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

Bind an application to a SIG model on the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_app_idxApplication index to bind.
mod_idModel ID.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_app_bind_vnd()

int bt_mesh_cfg_cli_mod_app_bind_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_app_idx,
uint16_t mod_id,
uint16_t cid,
uint8_t * status )

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

Bind an application to a vendor model on the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_app_idxApplication index to bind.
mod_idModel ID.
cidCompany ID of the model.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_app_get()

int bt_mesh_cfg_cli_mod_app_get ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
uint8_t * status,
uint16_t * apps,
size_t * app_cnt )

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

Get a list of all applications bound to a SIG model on the target node.

This method can be used asynchronously by setting status and ( apps or app_cnt ) as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
statusStatus response parameter.
appsApp index list response parameter. Will be filled with all the returned application key indexes it can fill.
app_cntApp index list length. Should be set to the capacity of the apps list when calling. Will return the number of returned application key indexes upon success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_app_get_vnd()

int bt_mesh_cfg_cli_mod_app_get_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
uint16_t cid,
uint8_t * status,
uint16_t * apps,
size_t * app_cnt )

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

Get a list of all applications bound to a vendor model on the target node.

This method can be used asynchronously by setting status and ( apps or app_cnt ) as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
cidCompany ID of the model.
statusStatus response parameter.
appsApp index list response parameter. Will be filled with all the returned application key indexes it can fill.
app_cntApp index list length. Should be set to the capacity of the apps list when calling. Will return the number of returned application key indexes upon success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_app_unbind()

int bt_mesh_cfg_cli_mod_app_unbind ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_app_idx,
uint16_t mod_id,
uint8_t * status )

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

Unbind an application from a SIG model on the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_app_idxApplication index to unbind.
mod_idModel ID.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_app_unbind_vnd()

int bt_mesh_cfg_cli_mod_app_unbind_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_app_idx,
uint16_t mod_id,
uint16_t cid,
uint8_t * status )

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

Unbind an application from a vendor model on the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_app_idxApplication index to unbind.
mod_idModel ID.
cidCompany ID of the model.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_pub_get()

int bt_mesh_cfg_cli_mod_pub_get ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
struct bt_mesh_cfg_cli_mod_pub * pub,
uint8_t * status )

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

Get publish parameters for a SIG model on the target node.

This method can be used asynchronously by setting status and pub as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
pubPublication parameter return buffer.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_pub_get_vnd()

int bt_mesh_cfg_cli_mod_pub_get_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
uint16_t cid,
struct bt_mesh_cfg_cli_mod_pub * pub,
uint8_t * status )

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

Get publish parameters for a vendor model on the target node.

This method can be used asynchronously by setting status and pub as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
cidCompany ID of the model.
pubPublication parameter return buffer.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_pub_set()

int bt_mesh_cfg_cli_mod_pub_set ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
struct bt_mesh_cfg_cli_mod_pub * pub,
uint8_t * status )

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

Set publish parameters for a SIG model on the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

pub shall not be NULL.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
pubPublication parameters.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_pub_set_vnd()

int bt_mesh_cfg_cli_mod_pub_set_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
uint16_t cid,
struct bt_mesh_cfg_cli_mod_pub * pub,
uint8_t * status )

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

Set publish parameters for a vendor model on the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

pub shall not be NULL.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
cidCompany ID of the model.
pubPublication parameters.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_add()

int bt_mesh_cfg_cli_mod_sub_add ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t sub_addr,
uint16_t mod_id,
uint8_t * status )

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

Add a group address to a SIG model's subscription list.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
sub_addrGroup address to add to the subscription list.
mod_idModel ID.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_add_vnd()

int bt_mesh_cfg_cli_mod_sub_add_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t sub_addr,
uint16_t mod_id,
uint16_t cid,
uint8_t * status )

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

Add a group address to a vendor model's subscription list.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
sub_addrGroup address to add to the subscription list.
mod_idModel ID.
cidCompany ID of the model.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_del()

int bt_mesh_cfg_cli_mod_sub_del ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t sub_addr,
uint16_t mod_id,
uint8_t * status )

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

Delete a group address in a SIG model's subscription list.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
sub_addrGroup address to add to the subscription list.
mod_idModel ID.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_del_all()

int bt_mesh_cfg_cli_mod_sub_del_all ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
uint8_t * status )

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

Delete all group addresses in a SIG model's subscription list.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_del_all_vnd()

int bt_mesh_cfg_cli_mod_sub_del_all_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
uint16_t cid,
uint8_t * status )

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

Delete all group addresses in a vendor model's subscription list.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
cidCompany ID of the model.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_del_vnd()

int bt_mesh_cfg_cli_mod_sub_del_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t sub_addr,
uint16_t mod_id,
uint16_t cid,
uint8_t * status )

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

Delete a group address in a vendor model's subscription list.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
sub_addrGroup address to add to the subscription list.
mod_idModel ID.
cidCompany ID of the model.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_get()

int bt_mesh_cfg_cli_mod_sub_get ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
uint8_t * status,
uint16_t * subs,
size_t * sub_cnt )

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

Get the subscription list of a SIG model on the target node.

This method can be used asynchronously by setting status and ( subs or sub_cnt ) as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
statusStatus response parameter.
subsSubscription list response parameter. Will be filled with all the returned subscriptions it can fill.
sub_cntSubscription list element count. Should be set to the capacity of the subs list when calling. Will return the number of returned subscriptions upon success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_get_vnd()

int bt_mesh_cfg_cli_mod_sub_get_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t mod_id,
uint16_t cid,
uint8_t * status,
uint16_t * subs,
size_t * sub_cnt )

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

Get the subscription list of a vendor model on the target node.

This method can be used asynchronously by setting status and ( subs or sub_cnt ) as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
mod_idModel ID.
cidCompany ID of the model.
statusStatus response parameter.
subsSubscription list response parameter. Will be filled with all the returned subscriptions it can fill.
sub_cntSubscription list element count. Should be set to the capacity of the subs list when calling. Will return the number of returned subscriptions upon success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_overwrite()

int bt_mesh_cfg_cli_mod_sub_overwrite ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t sub_addr,
uint16_t mod_id,
uint8_t * status )

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

Overwrite all addresses in a SIG model's subscription list with a group address.

Deletes all subscriptions in the model's subscription list, and adds a single group address instead.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
sub_addrGroup address to add to the subscription list.
mod_idModel ID.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_overwrite_vnd()

int bt_mesh_cfg_cli_mod_sub_overwrite_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
uint16_t sub_addr,
uint16_t mod_id,
uint16_t cid,
uint8_t * status )

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

Overwrite all addresses in a vendor model's subscription list with a group address.

Deletes all subscriptions in the model's subscription list, and adds a single group address instead.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
sub_addrGroup address to add to the subscription list.
mod_idModel ID.
cidCompany ID of the model.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_va_add()

int bt_mesh_cfg_cli_mod_sub_va_add ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
const uint8_t label[16],
uint16_t mod_id,
uint16_t * virt_addr,
uint8_t * status )

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

Add a virtual address to a SIG model's subscription list.

This method can be used asynchronously by setting status and virt_addr as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
labelVirtual address label to add to the subscription list.
mod_idModel ID.
virt_addrVirtual address response parameter.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_va_add_vnd()

int bt_mesh_cfg_cli_mod_sub_va_add_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
const uint8_t label[16],
uint16_t mod_id,
uint16_t cid,
uint16_t * virt_addr,
uint8_t * status )

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

Add a virtual address to a vendor model's subscription list.

This method can be used asynchronously by setting status and virt_addr as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
labelVirtual address label to add to the subscription list.
mod_idModel ID.
cidCompany ID of the model.
virt_addrVirtual address response parameter.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_va_del()

int bt_mesh_cfg_cli_mod_sub_va_del ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
const uint8_t label[16],
uint16_t mod_id,
uint16_t * virt_addr,
uint8_t * status )

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

Delete a virtual address in a SIG model's subscription list.

This method can be used asynchronously by setting status and virt_addr as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
labelVirtual address parameter to add to the subscription list.
mod_idModel ID.
virt_addrVirtual address response parameter.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_va_del_vnd()

int bt_mesh_cfg_cli_mod_sub_va_del_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
const uint8_t label[16],
uint16_t mod_id,
uint16_t cid,
uint16_t * virt_addr,
uint8_t * status )

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

Delete a virtual address in a vendor model's subscription list.

This method can be used asynchronously by setting status and virt_addr as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
labelVirtual address label to add to the subscription list.
mod_idModel ID.
cidCompany ID of the model.
virt_addrVirtual address response parameter.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_va_overwrite()

int bt_mesh_cfg_cli_mod_sub_va_overwrite ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
const uint8_t label[16],
uint16_t mod_id,
uint16_t * virt_addr,
uint8_t * status )

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

Overwrite all addresses in a SIG model's subscription list with a virtual address.

Deletes all subscriptions in the model's subscription list, and adds a single group address instead.

This method can be used asynchronously by setting status and virt_addr as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
labelVirtual address label to add to the subscription list.
mod_idModel ID.
virt_addrVirtual address response parameter.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_mod_sub_va_overwrite_vnd()

int bt_mesh_cfg_cli_mod_sub_va_overwrite_vnd ( uint16_t net_idx,
uint16_t addr,
uint16_t elem_addr,
const uint8_t label[16],
uint16_t mod_id,
uint16_t cid,
uint16_t * virt_addr,
uint8_t * status )

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

Overwrite all addresses in a vendor model's subscription list with a virtual address.

Deletes all subscriptions in the model's subscription list, and adds a single group address instead.

This method can be used asynchronously by setting status and virt_addr as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
elem_addrElement address the model is in.
labelVirtual address label to add to the subscription list.
mod_idModel ID.
cidCompany ID of the model.
virt_addrVirtual address response parameter.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_net_key_add()

int bt_mesh_cfg_cli_net_key_add ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
const uint8_t net_key[16],
uint8_t * status )

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

Add a network key to the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index.
net_keyNetwork key.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_net_key_del()

int bt_mesh_cfg_cli_net_key_del ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint8_t * status )

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

Delete a network key from the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_net_key_get()

int bt_mesh_cfg_cli_net_key_get ( uint16_t net_idx,
uint16_t addr,
uint16_t * keys,
size_t * key_cnt )

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

Get a list of the target node's network key indexes.

This method can be used asynchronously by setting keys or key_cnt as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
keysNet key index list response parameter. Will be filled with all the returned network key indexes it can fill.
key_cntNet key index list length. Should be set to the capacity of the keys list when calling. Will return the number of returned network key indexes upon success.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_net_key_update()

int bt_mesh_cfg_cli_net_key_update ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
const uint8_t net_key[16],
uint8_t * status )

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

Update a network key to the target node.

This method can be used asynchronously by setting status as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index.
net_keyNetwork key.
statusStatus response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_net_transmit_get()

int bt_mesh_cfg_cli_net_transmit_get ( uint16_t net_idx,
uint16_t addr,
uint8_t * transmit )

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

Get the target node's network_transmit state.

This method can be used asynchronously by setting transmit as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
transmitNetwork transmit response parameter. Returns the encoded network transmission parameters on success. Decoded with BT_MESH_TRANSMIT_COUNT and BT_MESH_TRANSMIT_INT.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_net_transmit_set()

int bt_mesh_cfg_cli_net_transmit_set ( uint16_t net_idx,
uint16_t addr,
uint8_t val,
uint8_t * transmit )

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

Set the target node's network transmit parameters.

This method can be used asynchronously by setting transmit as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
valNew encoded network transmit parameters.
See also
BT_MESH_TRANSMIT.
Parameters
transmitNetwork transmit response parameter. Returns the encoded network transmission parameters on success. Decoded with BT_MESH_TRANSMIT_COUNT and BT_MESH_TRANSMIT_INT.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_node_identity_get()

int bt_mesh_cfg_cli_node_identity_get ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint8_t * status,
uint8_t * identity )

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

Get the Node Identity parameters.

This method can be used asynchronously by setting status and identity as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
key_net_idxNetwork key index the application key belongs to.
statusStatus response parameter.
identityIdentity response parameter. Must be one of BT_MESH_NODE_IDENTITY_STOPPED or BT_MESH_NODE_IDENTITY_RUNNING
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_node_identity_set()

int bt_mesh_cfg_cli_node_identity_set ( uint16_t net_idx,
uint16_t addr,
uint16_t key_net_idx,
uint8_t new_identity,
uint8_t * status,
uint8_t * identity )

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

Set the Node Identity parameters.

This method can be used asynchronously by setting status and identity as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
new_identityNew identity state. Must be one of BT_MESH_NODE_IDENTITY_STOPPED or BT_MESH_NODE_IDENTITY_RUNNING
key_net_idxNetwork key index the application key belongs to.
statusStatus response parameter.
identityIdentity response parameter.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_node_reset()

int bt_mesh_cfg_cli_node_reset ( uint16_t net_idx,
uint16_t addr,
bool * status )

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

Reset the target node and remove it from the network.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
statusStatus response parameter
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_relay_get()

int bt_mesh_cfg_cli_relay_get ( uint16_t net_idx,
uint16_t addr,
uint8_t * status,
uint8_t * transmit )

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

Get the target node's Relay feature state.

This method can be used asynchronously by setting status and transmit as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
statusStatus response parameter. Returns one of BT_MESH_RELAY_DISABLED, BT_MESH_RELAY_ENABLED or BT_MESH_RELAY_NOT_SUPPORTED on success.
transmitTransmit response parameter. Returns the encoded relay transmission parameters on success. Decoded with BT_MESH_TRANSMIT_COUNT and BT_MESH_TRANSMIT_INT.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_relay_set()

int bt_mesh_cfg_cli_relay_set ( uint16_t net_idx,
uint16_t addr,
uint8_t new_relay,
uint8_t new_transmit,
uint8_t * status,
uint8_t * transmit )

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

Set the target node's Relay parameters.

This method can be used asynchronously by setting status and transmit as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
new_relayNew relay state. Must be one of BT_MESH_RELAY_DISABLED or BT_MESH_RELAY_ENABLED.
new_transmitNew encoded relay transmit parameters.
See also
BT_MESH_TRANSMIT.
Parameters
statusStatus response parameter. Returns one of BT_MESH_RELAY_DISABLED, BT_MESH_RELAY_ENABLED or BT_MESH_RELAY_NOT_SUPPORTED on success.
transmitTransmit response parameter. Returns the encoded relay transmission parameters on success. Decoded with BT_MESH_TRANSMIT_COUNT and BT_MESH_TRANSMIT_INT.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_timeout_get()

int32_t bt_mesh_cfg_cli_timeout_get ( void )

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

Get the current transmission timeout value.

Returns
The configured transmission timeout in milliseconds.

◆ bt_mesh_cfg_cli_timeout_set()

void bt_mesh_cfg_cli_timeout_set ( int32_t timeout)

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

Set the transmission timeout value.

Parameters
timeoutThe new transmission timeout.

◆ bt_mesh_cfg_cli_ttl_get()

int bt_mesh_cfg_cli_ttl_get ( uint16_t net_idx,
uint16_t addr,
uint8_t * ttl )

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

Get the target node's Time To Live value.

This method can be used asynchronously by setting ttl as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
ttlTTL response buffer.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_cfg_cli_ttl_set()

int bt_mesh_cfg_cli_ttl_set ( uint16_t net_idx,
uint16_t addr,
uint8_t val,
uint8_t * ttl )

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

Set the target node's Time To Live value.

This method can be used asynchronously by setting ttl as NULL. This way the method will not wait for response and will return immediately after sending the command.

Parameters
net_idxNetwork index to encrypt with.
addrTarget node address.
valNew Time To Live value.
ttlTTL response buffer.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_comp_p0_elem_mod()

uint16_t bt_mesh_comp_p0_elem_mod ( struct bt_mesh_comp_p0_elem * elem,
int idx )

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

Get a SIG model from the given composition data page 0 element.

Parameters
elemElement to read the model from.
idxIndex of the SIG model to read.
Returns
The Model ID of the SIG model at the given index, or 0xffff if the index is out of bounds.

◆ bt_mesh_comp_p0_elem_mod_vnd()

struct bt_mesh_mod_id_vnd bt_mesh_comp_p0_elem_mod_vnd ( struct bt_mesh_comp_p0_elem * elem,
int idx )

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

Get a vendor model from the given composition data page 0 element.

Parameters
elemElement to read the model from.
idxIndex of the vendor model to read.
Returns
The model ID of the vendor model at the given index, or {0xffff, 0xffff} if the index is out of bounds.

◆ bt_mesh_comp_p0_elem_pull()

struct bt_mesh_comp_p0_elem * bt_mesh_comp_p0_elem_pull ( const struct bt_mesh_comp_p0 * comp,
struct bt_mesh_comp_p0_elem * elem )

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

Pull a composition data page 0 element from a composition data page 0 instance.

Each call to this function will pull out a new element from the composition data page, until all elements have been pulled.

Parameters
compComposition data page
elemElement to fill.
Returns
A pointer to elem on success, or NULL if no more elements could be pulled.

◆ bt_mesh_comp_p0_get()

int bt_mesh_comp_p0_get ( struct bt_mesh_comp_p0 * comp,
struct net_buf_simple * buf )

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

Create a composition data page 0 representation from a buffer.

The composition data page object will take ownership over the buffer, which should not be manipulated directly after this call.

This function can be used in combination with bt_mesh_cfg_cli_comp_data_get to read out composition data page 0 from other devices:

struct bt_mesh_comp_p0 comp;
err = bt_mesh_cfg_cli_comp_data_get(net_idx, addr, 0, &page, &buf);
if (!err) {
bt_mesh_comp_p0_get(&comp, &buf);
}
#define BT_MESH_RX_SDU_MAX
Maximum possible payload size of an incoming access message (in octets).
Definition access.h:130
int bt_mesh_comp_p0_get(struct bt_mesh_comp_p0 *comp, struct net_buf_simple *buf)
Create a composition data page 0 representation from a buffer.
int bt_mesh_cfg_cli_comp_data_get(uint16_t net_idx, uint16_t addr, uint8_t page, uint8_t *rsp, struct net_buf_simple *comp)
Get the target node's composition data.
#define NET_BUF_SIMPLE_DEFINE(_name, _size)
Define a net_buf_simple stack variable.
Definition net_buf.h:48
Parsed Composition data page 0 representation.
Definition cfg_cli.h:1605
Parameters
bufNetwork buffer containing composition data.
compComposition data structure to fill.
Returns
0 on success, or (negative) error code on failure.

◆ bt_mesh_comp_p1_elem_pull()

struct bt_mesh_comp_p1_elem * bt_mesh_comp_p1_elem_pull ( struct net_buf_simple * buf,
struct bt_mesh_comp_p1_elem * elem )

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

Pull a Composition Data Page 1 Element from a composition data page 1 instance.

Each call to this function will pull out a new element from the composition data page, until all elements have been pulled.

Parameters
bufComposition data page 1 buffer
elemElement to fill.
Returns
A pointer to elem on success, or NULL if no more elements could be pulled.

◆ bt_mesh_comp_p1_item_pull()

struct bt_mesh_comp_p1_model_item * bt_mesh_comp_p1_item_pull ( struct bt_mesh_comp_p1_elem * elem,
struct bt_mesh_comp_p1_model_item * item )

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

Pull a Composition Data Page 1 Model Item from a Composition Data Page 1 Element.

Each call to this function will pull out a new item from the Composition Data Page 1 Element, until all items have been pulled.

Parameters
elemComposition data page 1 Element
itemModel Item to fill.
Returns
A pointer to item on success, or NULL if no more elements could be pulled.

◆ bt_mesh_comp_p1_pull_ext_item()

struct bt_mesh_comp_p1_ext_item * bt_mesh_comp_p1_pull_ext_item ( struct bt_mesh_comp_p1_model_item * item,
struct bt_mesh_comp_p1_ext_item * ext_item )

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

Pull Extended Model Item contained in Model Item.

Each call to this function will pull out a new element from the Extended Model Item, until all elements have been pulled.

Parameters
itemModel Item to pull Extended Model Items from
ext_itemExtended Model Item to fill
Returns
A pointer to ext_item on success, or NULL if item could not be pulled

◆ bt_mesh_comp_p2_record_pull()

struct bt_mesh_comp_p2_record * bt_mesh_comp_p2_record_pull ( struct net_buf_simple * buf,
struct bt_mesh_comp_p2_record * record )

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

Pull a Composition Data Page 2 Record from a composition data page 2 instance.

Each call to this function will pull out a new element from the composition data page, until all elements have been pulled.

Parameters
bufComposition data page 2 buffer
recordRecord to fill.
Returns
A pointer to record on success, or NULL if no more elements could be pulled.

◆ bt_mesh_key_idx_unpack_list()

int bt_mesh_key_idx_unpack_list ( struct net_buf_simple * buf,
uint16_t * dst_arr,
size_t * dst_cnt )

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

Unpack a list of key index entries from a buffer.

On success, dst_cnt is set to the amount of unpacked key index entries.

Parameters
bufMessage buffer containing encoded AppKey or NetKey Indexes.
dst_arrDestination array for the unpacked list.
dst_cntSize of the destination array.
Returns
0 on success.
-EMSGSIZE if dst_arr size is to small to parse full message.