NimBLE-Arduino 2.1.2
Loading...
Searching...
No Matches
access.h File Reference

Bluetooth Mesh Access Layer APIs. More...

Go to the source code of this file.

Classes

struct  bt_mesh_elem
 
struct  bt_mesh_model_pub
 
struct  bt_mesh_model_cb
 
struct  bt_mesh_mod_id_vnd
 
struct  bt_mesh_model
 
struct  bt_mesh_comp
 

Macros

#define BT_MESH_ELEM(_loc, _mods, _vnd_mods)
 
#define BT_MESH_LEN_EXACT(len)   (-len)
 
#define BT_MESH_LEN_MIN(len)   (len)
 
#define BT_MESH_MODEL_NONE   ((struct bt_mesh_model []){})
 
#define BT_MESH_MODEL_CB(_id, _op, _pub, _user_data, _cb)
 Composition data SIG model entry with callback functions.
 
#define BT_MESH_MODEL_VND_CB(_company, _id, _op, _pub, _user_data, _cb)
 Composition data vendor model entry with callback functions.
 
#define BT_MESH_MODEL(_id, _op, _pub, _user_data)    BT_MESH_MODEL_CB(_id, _op, _pub, _user_data, NULL)
 Composition data SIG model entry.
 
#define BT_MESH_MODEL_VND(_company, _id, _op, _pub, _user_data)    BT_MESH_MODEL_VND_CB(_company, _id, _op, _pub, _user_data, NULL)
 Composition data vendor model entry.
 
#define BT_MESH_TRANSMIT(count, int_ms)   ((count) | (((int_ms / 10) - 1) << 3))
 Encode transmission count & interval steps.
 
#define BT_MESH_TRANSMIT_COUNT(transmit)   (((transmit) & (uint8_t)BIT_MASK(3)))
 Decode transmit count from a transmit value.
 
#define BT_MESH_TRANSMIT_INT(transmit)   ((((transmit) >> 3) + 1) * 10)
 Decode transmit interval from a transmit value.
 
#define BT_MESH_PUB_TRANSMIT(count, int_ms)
 Encode Publish Retransmit count & interval steps.
 
#define BT_MESH_PUB_TRANSMIT_COUNT(transmit)   BT_MESH_TRANSMIT_COUNT(transmit)
 Decode Pubhlish Retransmit count from a given value.
 
#define BT_MESH_PUB_TRANSMIT_INT(transmit)   ((((transmit) >> 3) + 1) * 50)
 Decode Publish Retransmit interval from a given value.
 
#define BT_MESH_TTL_DEFAULT   0xff
 
#define BT_MESH_TTL_MAX   0x7f
 

Functions

int bt_mesh_model_send (struct bt_mesh_model *model, struct bt_mesh_msg_ctx *ctx, struct os_mbuf *msg, const struct bt_mesh_send_cb *cb, void *cb_data)
 Send an Access Layer message.
 
int bt_mesh_model_publish (struct bt_mesh_model *model)
 Send a model publication message.
 
struct bt_mesh_elembt_mesh_model_elem (struct bt_mesh_model *mod)
 Get the element that a model belongs to.
 
struct bt_mesh_modelbt_mesh_model_find (const struct bt_mesh_elem *elem, uint16_t id)
 Find a SIG model.
 
struct bt_mesh_modelbt_mesh_model_find_vnd (const struct bt_mesh_elem *elem, uint16_t company, uint16_t id)
 Find a vendor model.
 
int bt_mesh_model_data_store (struct bt_mesh_model *mod, bool vnd, const char *name, const void *data, size_t data_len)
 Immediately store the model's user data in persistent storage.
 
int bt_mesh_model_extend (struct bt_mesh_model *extending_mod, struct bt_mesh_model *base_mod)
 Let a model extend another.
 
bool bt_mesh_model_is_extended (struct bt_mesh_model *model)
 Check if model is extended by another model.
 

Detailed Description

Bluetooth Mesh Access Layer APIs.