mirror of
https://github.com/espressif/esp-nimble.git
synced 2026-08-12 04:57:55 +00:00
nimble/mesh: Fix Client model publishing
Shell did not have publish structures for Client models so Configuration Client could not configure them to publish messages. This patch adds those structures and fixes model definition macros to accept publish structures.
This commit is contained in:
@@ -22,16 +22,16 @@ struct bt_mesh_gen_model_cli {
|
||||
extern struct bt_mesh_gen_model_cli gen_onoff_cli;
|
||||
extern const struct bt_mesh_model_op gen_onoff_cli_op[];
|
||||
|
||||
#define BT_MESH_MODEL_GEN_ONOFF_CLI() \
|
||||
#define BT_MESH_MODEL_GEN_ONOFF_CLI(pub) \
|
||||
BT_MESH_MODEL(BT_MESH_MODEL_ID_GEN_ONOFF_CLI, \
|
||||
gen_onoff_cli_op, NULL, &gen_onoff_cli)
|
||||
gen_onoff_cli_op, pub, &gen_onoff_cli)
|
||||
|
||||
extern struct bt_mesh_gen_model_cli gen_level_cli;
|
||||
extern const struct bt_mesh_model_op gen_level_cli_op[];
|
||||
|
||||
#define BT_MESH_MODEL_GEN_LEVEL_CLI(pub) \
|
||||
BT_MESH_MODEL(BT_MESH_MODEL_ID_GEN_LEVEL_CLI, \
|
||||
gen_level_cli_op, NULL, &gen_level_cli)
|
||||
gen_level_cli_op, pub, &gen_level_cli)
|
||||
|
||||
|
||||
int bt_mesh_gen_onoff_get(u16_t net_idx, u16_t addr, u16_t app_idx,
|
||||
|
||||
@@ -222,8 +222,10 @@ static struct bt_mesh_health_cli health_cli = {
|
||||
#endif /* MYNEWT_VAL(BLE_MESH_HEALTH_CLI) */
|
||||
|
||||
#if MYNEWT_VAL(BLE_MESH_SHELL_MODELS)
|
||||
static struct bt_mesh_model_pub gen_onoff_pub;
|
||||
static struct bt_mesh_model_pub gen_level_pub;
|
||||
static struct bt_mesh_model_pub gen_onoff_cli_pub;
|
||||
static struct bt_mesh_model_pub gen_onoff_srv_pub;
|
||||
static struct bt_mesh_model_pub gen_level_cli_pub;
|
||||
static struct bt_mesh_model_pub gen_level_srv_pub;
|
||||
static struct bt_mesh_model_pub light_lightness_pub;
|
||||
static struct bt_mesh_gen_onoff_srv_cb gen_onoff_srv_cb = {
|
||||
.get = light_model_gen_onoff_get,
|
||||
@@ -265,10 +267,10 @@ static struct bt_mesh_model root_models[] = {
|
||||
BT_MESH_MODEL_HEALTH_CLI(&health_cli),
|
||||
#endif
|
||||
#if MYNEWT_VAL(BLE_MESH_SHELL_MODELS)
|
||||
BT_MESH_MODEL_GEN_ONOFF_SRV(&gen_onoff_srv_cb, &gen_onoff_pub),
|
||||
BT_MESH_MODEL_GEN_ONOFF_CLI(),
|
||||
BT_MESH_MODEL_GEN_LEVEL_SRV(&gen_level_srv_cb, &gen_level_pub),
|
||||
BT_MESH_MODEL_GEN_LEVEL_CLI(),
|
||||
BT_MESH_MODEL_GEN_ONOFF_SRV(&gen_onoff_srv_cb, &gen_onoff_srv_pub),
|
||||
BT_MESH_MODEL_GEN_ONOFF_CLI(&gen_onoff_cli_pub),
|
||||
BT_MESH_MODEL_GEN_LEVEL_SRV(&gen_level_srv_cb, &gen_level_srv_pub),
|
||||
BT_MESH_MODEL_GEN_LEVEL_CLI(&gen_level_cli_pub),
|
||||
BT_MESH_MODEL_LIGHT_LIGHTNESS_SRV(&light_lightness_srv_cb, &light_lightness_pub),
|
||||
#endif
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user