MeshX 0.4
This repository provides an implementation for Bluetooth Low Energy (BLE) Mesh network nodes. The project allows you to create BLE mesh nodes that can communicate with each other, enabling the development of smart home solutions or other IoT-based applications.
Loading...
Searching...
No Matches
meshx_ble_mesh_cmn_def.h
Go to the documentation of this file.
1/**
2 * Copyright (c) 2024 - 2025 MeshX
3 *
4 * @file meshx_ble_mesh_cmn_def.h
5 * @brief Common definitions for BLE Mesh models and opcodes in the MeshX framework.
6 *
7 * This header file contains macros and definitions for BLE Mesh models, opcodes,
8 * and related constants used in the MeshX framework. It includes:
9 * - Address type checks and constants.
10 * - Model ID definitions for foundation and specification models.
11 * - Opcode definitions for various BLE Mesh operations.
12 * - Configuration status codes.
13 *
14 * These definitions are used to facilitate the implementation and interaction
15 * with BLE Mesh models and their associated operations.
16 *
17 * @note Ensure that this file is included only once in a compilation unit by using `#pragma once`.
18 */
19
20#pragma once
21
22#define MESHX_BIT(nr) (1UL << (nr))
23#define MESHX_ARRAY_SIZE(_arr) (sizeof(_arr) / sizeof((_arr)[0]))
24
25#define MESHX_ADDR_IS_UNICAST(_addr) ((_addr) && (_addr) < 0x8000)
26#define MESHX_ADDR_BROADCAST(_addr) (_addr == 0xFFFF)
27#define MESHX_ADDR_IS_GROUP(_addr) ((_addr) >= 0xC000 && (_addr) <= 0xFF00)
28
29#define MESHX_ADDR_GROUP_START 0xC000
30#define MESHX_ADDR_UNASSIGNED 0x0000
31#define MESHX_KEY_UNUSED 0XFFFF
32
33#define MESHX_MODEL_OP_1(b0) (b0)
34#define MESHX_MODEL_OP_2(b0, b1) (((b0) << 8) | (b1))
35#define MESHX_MODEL_OP_3(b0, cid) ((((b0) << 16) | 0xC00000) | (cid))
36
37/**
38 * @brief BLE Mesh models related Model ID and Opcode definitions
39 */
40
41#define MESHX_MODEL_ID_SIG_START 0x1000
42#define MESHX_CID_SIG 0xFFFF
43#define MESHX_VND_MODEL_CID_MESHX 0x02E5 // Example MeshX CID
44
45/*!< Foundation Models */
46#define MESHX_MODEL_ID_CONFIG_SRV 0x0000
47#define MESHX_MODEL_ID_CONFIG_CLI 0x0001
48#define MESHX_MODEL_ID_HEALTH_SRV 0x0002
49#define MESHX_MODEL_ID_HEALTH_CLI 0x0003
50#define MESHX_MODEL_ID_RPR_SRV 0x0004
51#define MESHX_MODEL_ID_RPR_CLI 0x0005
52#define MESHX_MODEL_ID_DF_SRV 0x0006
53#define MESHX_MODEL_ID_DF_CLI 0x0007
54#define MESHX_MODEL_ID_BRC_SRV 0x0008
55#define MESHX_MODEL_ID_BRC_CLI 0x0009
56#define MESHX_MODEL_ID_PRB_SRV 0x000A
57#define MESHX_MODEL_ID_PRB_CLI 0x000B
58#define MESHX_MODEL_ID_ODP_SRV 0x000C
59#define MESHX_MODEL_ID_ODP_CLI 0x000D
60#define MESHX_MODEL_ID_SAR_SRV 0x000E
61#define MESHX_MODEL_ID_SAR_CLI 0x000F
62#define MESHX_MODEL_ID_AGG_SRV 0x0010
63#define MESHX_MODEL_ID_AGG_CLI 0x0011
64#define MESHX_MODEL_ID_LCD_SRV 0x0012
65#define MESHX_MODEL_ID_LCD_CLI 0x0013
66#define MESHX_MODEL_ID_SRPL_SRV 0x0014
67#define MESHX_MODEL_ID_SRPL_CLI 0x0015
68
69/*!< Models from the Mesh Model Specification */
70#define MESHX_MODEL_ID_GEN_ONOFF_SRV 0x1000
71#define MESHX_MODEL_ID_GEN_ONOFF_CLI 0x1001
72#define MESHX_MODEL_ID_GEN_LEVEL_SRV 0x1002
73#define MESHX_MODEL_ID_GEN_LEVEL_CLI 0x1003
74#define MESHX_MODEL_ID_GEN_DEF_TRANS_TIME_SRV 0x1004
75#define MESHX_MODEL_ID_GEN_DEF_TRANS_TIME_CLI 0x1005
76#define MESHX_MODEL_ID_GEN_POWER_ONOFF_SRV 0x1006
77#define MESHX_MODEL_ID_GEN_POWER_ONOFF_SETUP_SRV 0x1007
78#define MESHX_MODEL_ID_GEN_POWER_ONOFF_CLI 0x1008
79#define MESHX_MODEL_ID_GEN_POWER_LEVEL_SRV 0x1009
80#define MESHX_MODEL_ID_GEN_POWER_LEVEL_SETUP_SRV 0x100a
81#define MESHX_MODEL_ID_GEN_POWER_LEVEL_CLI 0x100b
82#define MESHX_MODEL_ID_GEN_BATTERY_SRV 0x100c
83#define MESHX_MODEL_ID_GEN_BATTERY_CLI 0x100d
84#define MESHX_MODEL_ID_GEN_LOCATION_SRV 0x100e
85#define MESHX_MODEL_ID_GEN_LOCATION_SETUP_SRV 0x100f
86#define MESHX_MODEL_ID_GEN_LOCATION_CLI 0x1010
87#define MESHX_MODEL_ID_GEN_ADMIN_PROP_SRV 0x1011
88#define MESHX_MODEL_ID_GEN_MANUFACTURER_PROP_SRV 0x1012
89#define MESHX_MODEL_ID_GEN_USER_PROP_SRV 0x1013
90#define MESHX_MODEL_ID_GEN_CLIENT_PROP_SRV 0x1014
91#define MESHX_MODEL_ID_GEN_PROP_CLI 0x1015
92#define MESHX_MODEL_ID_SENSOR_SRV 0x1100
93#define MESHX_MODEL_ID_SENSOR_SETUP_SRV 0x1101
94#define MESHX_MODEL_ID_SENSOR_CLI 0x1102
95#define MESHX_MODEL_ID_TIME_SRV 0x1200
96#define MESHX_MODEL_ID_TIME_SETUP_SRV 0x1201
97#define MESHX_MODEL_ID_TIME_CLI 0x1202
98#define MESHX_MODEL_ID_SCENE_SRV 0x1203
99#define MESHX_MODEL_ID_SCENE_SETUP_SRV 0x1204
100#define MESHX_MODEL_ID_SCENE_CLI 0x1205
101#define MESHX_MODEL_ID_SCHEDULER_SRV 0x1206
102#define MESHX_MODEL_ID_SCHEDULER_SETUP_SRV 0x1207
103#define MESHX_MODEL_ID_SCHEDULER_CLI 0x1208
104#define MESHX_MODEL_ID_LIGHT_LIGHTNESS_SRV 0x1300
105#define MESHX_MODEL_ID_LIGHT_LIGHTNESS_SETUP_SRV 0x1301
106#define MESHX_MODEL_ID_LIGHT_LIGHTNESS_CLI 0x1302
107#define MESHX_MODEL_ID_LIGHT_CTL_SRV 0x1303
108#define MESHX_MODEL_ID_LIGHT_CTL_SETUP_SRV 0x1304
109#define MESHX_MODEL_ID_LIGHT_CTL_CLI 0x1305
110#define MESHX_MODEL_ID_LIGHT_CTL_TEMP_SRV 0x1306
111#define MESHX_MODEL_ID_LIGHT_HSL_SRV 0x1307
112#define MESHX_MODEL_ID_LIGHT_HSL_SETUP_SRV 0x1308
113#define MESHX_MODEL_ID_LIGHT_HSL_CLI 0x1309
114#define MESHX_MODEL_ID_LIGHT_HSL_HUE_SRV 0x130a
115#define MESHX_MODEL_ID_LIGHT_HSL_SAT_SRV 0x130b
116#define MESHX_MODEL_ID_LIGHT_XYL_SRV 0x130c
117#define MESHX_MODEL_ID_LIGHT_XYL_SETUP_SRV 0x130d
118#define MESHX_MODEL_ID_LIGHT_XYL_CLI 0x130e
119#define MESHX_MODEL_ID_LIGHT_LC_SRV 0x130f
120#define MESHX_MODEL_ID_LIGHT_LC_SETUP_SRV 0x1310
121#define MESHX_MODEL_ID_LIGHT_LC_CLI 0x1311
122#define MESHX_MODEL_ID_MBT_SRV 0x1400
123#define MESHX_MODEL_ID_MBT_CLI 0x1401
124
125#define MESHX_MODEL_OP_BEACON_GET MESHX_MODEL_OP_2(0x80, 0x09) /*!< Config Beacon Get */
126#define MESHX_MODEL_OP_COMPOSITION_DATA_GET MESHX_MODEL_OP_2(0x80, 0x08) /*!< Config Composition Data Get */
127#define MESHX_MODEL_OP_DEFAULT_TTL_GET MESHX_MODEL_OP_2(0x80, 0x0C) /*!< Config Default TTL Get */
128#define MESHX_MODEL_OP_GATT_PROXY_GET MESHX_MODEL_OP_2(0x80, 0x12) /*!< Config GATT Proxy Get */
129#define MESHX_MODEL_OP_RELAY_GET MESHX_MODEL_OP_2(0x80, 0x26) /*!< Config Relay Get */
130#define MESHX_MODEL_OP_MODEL_PUB_GET MESHX_MODEL_OP_2(0x80, 0x18) /*!< Config Model Publication Get */
131#define MESHX_MODEL_OP_FRIEND_GET MESHX_MODEL_OP_2(0x80, 0x0F) /*!< Config Friend Get */
132#define MESHX_MODEL_OP_HEARTBEAT_PUB_GET MESHX_MODEL_OP_2(0x80, 0x38) /*!< Config Heartbeat Publication Get */
133#define MESHX_MODEL_OP_HEARTBEAT_SUB_GET MESHX_MODEL_OP_2(0x80, 0x3a) /*!< Config Heartbeat Subscription Get */
134#define MESHX_MODEL_OP_NET_KEY_GET MESHX_MODEL_OP_2(0x80, 0x42) /*!< Config NetKey Get */
135#define MESHX_MODEL_OP_APP_KEY_GET MESHX_MODEL_OP_2(0x80, 0x01) /*!< Config AppKey Get */
136#define MESHX_MODEL_OP_NODE_IDENTITY_GET MESHX_MODEL_OP_2(0x80, 0x46) /*!< Config Node Identity Get */
137#define MESHX_MODEL_OP_SIG_MODEL_SUB_GET MESHX_MODEL_OP_2(0x80, 0x29) /*!< Config SIG Model Subscription Get */
138#define MESHX_MODEL_OP_VENDOR_MODEL_SUB_GET MESHX_MODEL_OP_2(0x80, 0x2B) /*!< Config Vendor Model Subscription Get */
139#define MESHX_MODEL_OP_SIG_MODEL_APP_GET MESHX_MODEL_OP_2(0x80, 0x4B) /*!< Config SIG Model App Get */
140#define MESHX_MODEL_OP_VENDOR_MODEL_APP_GET MESHX_MODEL_OP_2(0x80, 0x4D) /*!< Config Vendor Model App Get */
141#define MESHX_MODEL_OP_KEY_REFRESH_PHASE_GET MESHX_MODEL_OP_2(0x80, 0x15) /*!< Config Key Refresh Phase Get */
142#define MESHX_MODEL_OP_LPN_POLLTIMEOUT_GET MESHX_MODEL_OP_2(0x80, 0x2D) /*!< Config Low Power Node PollTimeout Get */
143#define MESHX_MODEL_OP_NETWORK_TRANSMIT_GET MESHX_MODEL_OP_2(0x80, 0x23) /*!< Config Network Transmit Get */
144
145#define MESHX_MODEL_OP_BEACON_SET MESHX_MODEL_OP_2(0x80, 0x0A) /*!< Config Beacon Set */
146#define MESHX_MODEL_OP_DEFAULT_TTL_SET MESHX_MODEL_OP_2(0x80, 0x0D) /*!< Config Default TTL Set */
147#define MESHX_MODEL_OP_GATT_PROXY_SET MESHX_MODEL_OP_2(0x80, 0x13) /*!< Config GATT Proxy Set */
148#define MESHX_MODEL_OP_RELAY_SET MESHX_MODEL_OP_2(0x80, 0x27) /*!< Config Relay Set */
149#define MESHX_MODEL_OP_MODEL_PUB_SET MESHX_MODEL_OP_1(0x03) /*!< Config Model Publication Set */
150#define MESHX_MODEL_OP_MODEL_SUB_ADD MESHX_MODEL_OP_2(0x80, 0x1B) /*!< Config Model Subscription Add */
151#define MESHX_MODEL_OP_MODEL_SUB_VIRTUAL_ADDR_ADD MESHX_MODEL_OP_2(0x80, 0x20) /*!< Config Model Subscription Virtual Address Add */
152#define MESHX_MODEL_OP_MODEL_SUB_DELETE MESHX_MODEL_OP_2(0x80, 0x1C) /*!< Config Model Subscription Delete */
153#define MESHX_MODEL_OP_MODEL_SUB_VIRTUAL_ADDR_DELETE MESHX_MODEL_OP_2(0x80, 0x21) /*!< Config Model Subscription Virtual Address Delete */
154#define MESHX_MODEL_OP_MODEL_SUB_OVERWRITE MESHX_MODEL_OP_2(0x80, 0x1E) /*!< Config Model Subscription Overwrite */
155#define MESHX_MODEL_OP_MODEL_SUB_VIRTUAL_ADDR_OVERWRITE MESHX_MODEL_OP_2(0x80, 0x22) /*!< Config Model Subscription Virtual Address Overwrite */
156#define MESHX_MODEL_OP_NET_KEY_ADD MESHX_MODEL_OP_2(0x80, 0x40) /*!< Config NetKey Add */
157#define MESHX_MODEL_OP_APP_KEY_ADD MESHX_MODEL_OP_1(0x00) /*!< Config AppKey Add */
158#define MESHX_MODEL_OP_MODEL_APP_BIND MESHX_MODEL_OP_2(0x80, 0x3D) /*!< Config Model App Bind */
159#define MESHX_MODEL_OP_NODE_RESET MESHX_MODEL_OP_2(0x80, 0x49) /*!< Config Node Reset */
160#define MESHX_MODEL_OP_FRIEND_SET MESHX_MODEL_OP_2(0x80, 0x10) /*!< Config Friend Set */
161#define MESHX_MODEL_OP_HEARTBEAT_PUB_SET MESHX_MODEL_OP_2(0x80, 0x39) /*!< Config Heartbeat Publication Set */
162#define MESHX_MODEL_OP_HEARTBEAT_SUB_SET MESHX_MODEL_OP_2(0x80, 0x3B) /*!< Config Heartbeat Subscription Set */
163#define MESHX_MODEL_OP_NET_KEY_UPDATE MESHX_MODEL_OP_2(0x80, 0x45) /*!< Config NetKey Update */
164#define MESHX_MODEL_OP_NET_KEY_DELETE MESHX_MODEL_OP_2(0x80, 0x41) /*!< Config NetKey Delete */
165#define MESHX_MODEL_OP_APP_KEY_UPDATE MESHX_MODEL_OP_1(0x01) /*!< Config AppKey Update */
166#define MESHX_MODEL_OP_APP_KEY_DELETE MESHX_MODEL_OP_2(0x80, 0x00) /*!< Config AppKey Delete */
167#define MESHX_MODEL_OP_NODE_IDENTITY_SET MESHX_MODEL_OP_2(0x80, 0x47) /*!< Config Node Identity Set */
168#define MESHX_MODEL_OP_KEY_REFRESH_PHASE_SET MESHX_MODEL_OP_2(0x80, 0x16) /*!< Config Key Refresh Phase Set */
169#define MESHX_MODEL_OP_MODEL_PUB_VIRTUAL_ADDR_SET MESHX_MODEL_OP_2(0x80, 0x1A) /*!< Config Model Publication Virtual Address Set */
170#define MESHX_MODEL_OP_MODEL_SUB_DELETE_ALL MESHX_MODEL_OP_2(0x80, 0x1D) /*!< Config Model Subscription Delete All */
171#define MESHX_MODEL_OP_MODEL_APP_UNBIND MESHX_MODEL_OP_2(0x80, 0x3F) /*!< Config Model App Unbind */
172#define MESHX_MODEL_OP_NETWORK_TRANSMIT_SET MESHX_MODEL_OP_2(0x80, 0x24) /*!< Config Network Transmit Set */
173
174#define MESHX_MODEL_OP_BEACON_STATUS MESHX_MODEL_OP_2(0x80, 0x0B)
175#define MESHX_MODEL_OP_COMPOSITION_DATA_STATUS MESHX_MODEL_OP_1(0x02)
176#define MESHX_MODEL_OP_DEFAULT_TTL_STATUS MESHX_MODEL_OP_2(0x80, 0x0E)
177#define MESHX_MODEL_OP_GATT_PROXY_STATUS MESHX_MODEL_OP_2(0x80, 0x14)
178#define MESHX_MODEL_OP_RELAY_STATUS MESHX_MODEL_OP_2(0x80, 0x28)
179#define MESHX_MODEL_OP_MODEL_PUB_STATUS MESHX_MODEL_OP_2(0x80, 0x19)
180#define MESHX_MODEL_OP_MODEL_SUB_STATUS MESHX_MODEL_OP_2(0x80, 0x1F)
181#define MESHX_MODEL_OP_SIG_MODEL_SUB_LIST MESHX_MODEL_OP_2(0x80, 0x2A)
182#define MESHX_MODEL_OP_VENDOR_MODEL_SUB_LIST MESHX_MODEL_OP_2(0x80, 0x2C)
183#define MESHX_MODEL_OP_NET_KEY_STATUS MESHX_MODEL_OP_2(0x80, 0x44)
184#define MESHX_MODEL_OP_NET_KEY_LIST MESHX_MODEL_OP_2(0x80, 0x43)
185#define MESHX_MODEL_OP_APP_KEY_STATUS MESHX_MODEL_OP_2(0x80, 0x03)
186#define MESHX_MODEL_OP_APP_KEY_LIST MESHX_MODEL_OP_2(0x80, 0x02)
187#define MESHX_MODEL_OP_NODE_IDENTITY_STATUS MESHX_MODEL_OP_2(0x80, 0x48)
188#define MESHX_MODEL_OP_MODEL_APP_STATUS MESHX_MODEL_OP_2(0x80, 0x3E)
189#define MESHX_MODEL_OP_SIG_MODEL_APP_LIST MESHX_MODEL_OP_2(0x80, 0x4C)
190#define MESHX_MODEL_OP_VENDOR_MODEL_APP_LIST MESHX_MODEL_OP_2(0x80, 0x4E)
191#define MESHX_MODEL_OP_NODE_RESET_STATUS MESHX_MODEL_OP_2(0x80, 0x4A)
192#define MESHX_MODEL_OP_FRIEND_STATUS MESHX_MODEL_OP_2(0x80, 0x11)
193#define MESHX_MODEL_OP_KEY_REFRESH_PHASE_STATUS MESHX_MODEL_OP_2(0x80, 0x17)
194#define MESHX_MODEL_OP_HEARTBEAT_PUB_STATUS MESHX_MODEL_OP_1(0x06)
195#define MESHX_MODEL_OP_HEARTBEAT_SUB_STATUS MESHX_MODEL_OP_2(0x80, 0x3C)
196#define MESHX_MODEL_OP_LPN_POLLTIMEOUT_STATUS MESHX_MODEL_OP_2(0x80, 0x2E)
197#define MESHX_MODEL_OP_NETWORK_TRANSMIT_STATUS MESHX_MODEL_OP_2(0x80, 0x25)
198
199#define MESHX_CFG_STATUS_SUCCESS 0x00
200#define MESHX_CFG_STATUS_INVALID_ADDRESS 0x01
201#define MESHX_CFG_STATUS_INVALID_MODEL 0x02
202#define MESHX_CFG_STATUS_INVALID_APPKEY 0x03
203#define MESHX_CFG_STATUS_INVALID_NETKEY 0x04
204#define MESHX_CFG_STATUS_INSUFFICIENT_RESOURCES 0x05
205#define MESHX_CFG_STATUS_KEY_INDEX_ALREADY_STORED 0x06
206#define MESHX_CFG_STATUS_INVALID_PUBLISH_PARAMETERS 0x07
207#define MESHX_CFG_STATUS_NOT_A_SUBSCRIBE_MODEL 0x08
208#define MESHX_CFG_STATUS_STORAGE_FAILURE 0x09
209#define MESHX_CFG_STATUS_FEATURE_NOT_SUPPORTED 0x0A
210#define MESHX_CFG_STATUS_CANNOT_UPDATE 0x0B
211#define MESHX_CFG_STATUS_CANNOT_REMOVE 0x0C
212#define MESHX_CFG_STATUS_CANNOT_BIND 0x0D
213#define MESHX_CFG_STATUS_TEMP_UNABLE_TO_CHANGE_STATE 0x0E
214#define MESHX_CFG_STATUS_CANNOT_SET 0x0F
215#define MESHX_CFG_STATUS_UNSPECIFIED_ERROR 0x10
216#define MESHX_CFG_STATUS_INVALID_BINDING 0x11
217#define MESHX_CFG_STATUS_INVALID_PATH_ENTRY 0x12
218#define MESHX_CFG_STATUS_CANNOT_GET 0x13
219#define MESHX_CFG_STATUS_OBSOLETE_INFO 0x14
220#define MESHX_CFG_STATUS_INVALID_BEARER 0x15
221
222#define MESHX_MODEL_OP_HEALTH_FAULT_GET MESHX_MODEL_OP_2(0x80, 0x31) /*!< Health Fault Get */
223#define MESHX_MODEL_OP_HEALTH_PERIOD_GET MESHX_MODEL_OP_2(0x80, 0x34) /*!< Health Period Get */
224#define MESHX_MODEL_OP_ATTENTION_GET MESHX_MODEL_OP_2(0x80, 0x04) /*!< Health Attention Get */
225
226#define MESHX_MODEL_OP_HEALTH_FAULT_CLEAR MESHX_MODEL_OP_2(0x80, 0x2F) /*!< Health Fault Clear */
227#define MESHX_MODEL_OP_HEALTH_FAULT_CLEAR_UNACK MESHX_MODEL_OP_2(0x80, 0x30) /*!< Health Fault Clear Unacknowledged */
228#define MESHX_MODEL_OP_HEALTH_FAULT_TEST MESHX_MODEL_OP_2(0x80, 0x32) /*!< Health Fault Test */
229#define MESHX_MODEL_OP_HEALTH_FAULT_TEST_UNACK MESHX_MODEL_OP_2(0x80, 0x33) /*!< Health Fault Test Unacknowledged */
230#define MESHX_MODEL_OP_HEALTH_PERIOD_SET MESHX_MODEL_OP_2(0x80, 0x35) /*!< Health Period Set */
231#define MESHX_MODEL_OP_HEALTH_PERIOD_SET_UNACK MESHX_MODEL_OP_2(0x80, 0x36) /*!< Health Period Set Unacknowledged */
232#define MESHX_MODEL_OP_ATTENTION_SET MESHX_MODEL_OP_2(0x80, 0x05) /*!< Health Attention Set */
233#define MESHX_MODEL_OP_ATTENTION_SET_UNACK MESHX_MODEL_OP_2(0x80, 0x06) /*!< Health Attention Set Unacknowledged */
234
235#define MESHX_MODEL_OP_HEALTH_CURRENT_STATUS MESHX_MODEL_OP_1(0x04)
236#define MESHX_MODEL_OP_HEALTH_FAULT_STATUS MESHX_MODEL_OP_1(0x05)
237#define MESHX_MODEL_OP_HEALTH_PERIOD_STATUS MESHX_MODEL_OP_2(0x80, 0x37)
238#define MESHX_MODEL_OP_ATTENTION_STATUS MESHX_MODEL_OP_2(0x80, 0x07)
239
240/*!< Generic OnOff Message Opcode */
241#define MESHX_MODEL_OP_GEN_ONOFF_GET MESHX_MODEL_OP_2(0x82, 0x01)
242#define MESHX_MODEL_OP_GEN_ONOFF_SET MESHX_MODEL_OP_2(0x82, 0x02)
243#define MESHX_MODEL_OP_GEN_ONOFF_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x03)
244#define MESHX_MODEL_OP_GEN_ONOFF_STATUS MESHX_MODEL_OP_2(0x82, 0x04)
245
246/*!< Generic Level Message Opcode */
247#define MESHX_MODEL_OP_GEN_LEVEL_GET MESHX_MODEL_OP_2(0x82, 0x05)
248#define MESHX_MODEL_OP_GEN_LEVEL_SET MESHX_MODEL_OP_2(0x82, 0x06)
249#define MESHX_MODEL_OP_GEN_LEVEL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x07)
250#define MESHX_MODEL_OP_GEN_LEVEL_STATUS MESHX_MODEL_OP_2(0x82, 0x08)
251#define MESHX_MODEL_OP_GEN_DELTA_SET MESHX_MODEL_OP_2(0x82, 0x09)
252#define MESHX_MODEL_OP_GEN_DELTA_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x0A)
253#define MESHX_MODEL_OP_GEN_MOVE_SET MESHX_MODEL_OP_2(0x82, 0x0B)
254#define MESHX_MODEL_OP_GEN_MOVE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x0C)
255
256/*!< Generic Default Transition Time Message Opcode */
257#define MESHX_MODEL_OP_GEN_DEF_TRANS_TIME_GET MESHX_MODEL_OP_2(0x82, 0x0D)
258#define MESHX_MODEL_OP_GEN_DEF_TRANS_TIME_SET MESHX_MODEL_OP_2(0x82, 0x0E)
259#define MESHX_MODEL_OP_GEN_DEF_TRANS_TIME_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x0F)
260#define MESHX_MODEL_OP_GEN_DEF_TRANS_TIME_STATUS MESHX_MODEL_OP_2(0x82, 0x10)
261
262/*!< Generic Power OnOff Message Opcode */
263#define MESHX_MODEL_OP_GEN_ONPOWERUP_GET MESHX_MODEL_OP_2(0x82, 0x11)
264#define MESHX_MODEL_OP_GEN_ONPOWERUP_STATUS MESHX_MODEL_OP_2(0x82, 0x12)
265
266/*!< Generic Power OnOff Setup Message Opcode */
267#define MESHX_MODEL_OP_GEN_ONPOWERUP_SET MESHX_MODEL_OP_2(0x82, 0x13)
268#define MESHX_MODEL_OP_GEN_ONPOWERUP_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x14)
269
270/*!< Generic Power Level Message Opcode */
271#define MESHX_MODEL_OP_GEN_POWER_LEVEL_GET MESHX_MODEL_OP_2(0x82, 0x15)
272#define MESHX_MODEL_OP_GEN_POWER_LEVEL_SET MESHX_MODEL_OP_2(0x82, 0x16)
273#define MESHX_MODEL_OP_GEN_POWER_LEVEL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x17)
274#define MESHX_MODEL_OP_GEN_POWER_LEVEL_STATUS MESHX_MODEL_OP_2(0x82, 0x18)
275#define MESHX_MODEL_OP_GEN_POWER_LAST_GET MESHX_MODEL_OP_2(0x82, 0x19)
276#define MESHX_MODEL_OP_GEN_POWER_LAST_STATUS MESHX_MODEL_OP_2(0x82, 0x1A)
277#define MESHX_MODEL_OP_GEN_POWER_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x1B)
278#define MESHX_MODEL_OP_GEN_POWER_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x1C)
279#define MESHX_MODEL_OP_GEN_POWER_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x1D)
280#define MESHX_MODEL_OP_GEN_POWER_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x1E)
281
282/*!< Generic Power Level Setup Message Opcode */
283#define MESHX_MODEL_OP_GEN_POWER_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x1F)
284#define MESHX_MODEL_OP_GEN_POWER_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x20)
285#define MESHX_MODEL_OP_GEN_POWER_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x21)
286#define MESHX_MODEL_OP_GEN_POWER_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x22)
287
288/*!< Generic Battery Message Opcode */
289#define MESHX_MODEL_OP_GEN_BATTERY_GET MESHX_MODEL_OP_2(0x82, 0x23)
290#define MESHX_MODEL_OP_GEN_BATTERY_STATUS MESHX_MODEL_OP_2(0x82, 0x24)
291
292/*!< Generic Location Message Opcode */
293#define MESHX_MODEL_OP_GEN_LOC_GLOBAL_GET MESHX_MODEL_OP_2(0x82, 0x25)
294#define MESHX_MODEL_OP_GEN_LOC_GLOBAL_STATUS MESHX_MODEL_OP_1(0x40)
295#define MESHX_MODEL_OP_GEN_LOC_LOCAL_GET MESHX_MODEL_OP_2(0x82, 0x26)
296#define MESHX_MODEL_OP_GEN_LOC_LOCAL_STATUS MESHX_MODEL_OP_2(0x82, 0x27)
297
298/*!< Generic Location Setup Message Opcode */
299#define MESHX_MODEL_OP_GEN_LOC_GLOBAL_SET MESHX_MODEL_OP_1(0x41)
300#define MESHX_MODEL_OP_GEN_LOC_GLOBAL_SET_UNACK MESHX_MODEL_OP_1(0x42)
301#define MESHX_MODEL_OP_GEN_LOC_LOCAL_SET MESHX_MODEL_OP_2(0x82, 0x28)
302#define MESHX_MODEL_OP_GEN_LOC_LOCAL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x29)
303
304/*!< Generic Manufacturer Property Message Opcode */
305#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTIES_GET MESHX_MODEL_OP_2(0x82, 0x2A)
306#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTIES_STATUS MESHX_MODEL_OP_1(0x43)
307#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTY_GET MESHX_MODEL_OP_2(0x82, 0x2B)
308#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTY_SET MESHX_MODEL_OP_1(0x44)
309#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTY_SET_UNACK MESHX_MODEL_OP_1(0x45)
310#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTY_STATUS MESHX_MODEL_OP_1(0x46)
311
312/*!< Generic Admin Property Message Opcode */
313#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTIES_GET MESHX_MODEL_OP_2(0x82, 0x2C)
314#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTIES_STATUS MESHX_MODEL_OP_1(0x47)
315#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTY_GET MESHX_MODEL_OP_2(0x82, 0x2D)
316#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTY_SET MESHX_MODEL_OP_1(0x48)
317#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTY_SET_UNACK MESHX_MODEL_OP_1(0x49)
318#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTY_STATUS MESHX_MODEL_OP_1(0x4A)
319
320/*!< Generic User Property Message Opcode */
321#define MESHX_MODEL_OP_GEN_USER_PROPERTIES_GET MESHX_MODEL_OP_2(0x82, 0x2E)
322#define MESHX_MODEL_OP_GEN_USER_PROPERTIES_STATUS MESHX_MODEL_OP_1(0x4B)
323#define MESHX_MODEL_OP_GEN_USER_PROPERTY_GET MESHX_MODEL_OP_2(0x82, 0x2F)
324#define MESHX_MODEL_OP_GEN_USER_PROPERTY_SET MESHX_MODEL_OP_1(0x4C)
325#define MESHX_MODEL_OP_GEN_USER_PROPERTY_SET_UNACK MESHX_MODEL_OP_1(0x4D)
326#define MESHX_MODEL_OP_GEN_USER_PROPERTY_STATUS MESHX_MODEL_OP_1(0x4E)
327
328/*!< Generic Client Property Message Opcode */
329#define MESHX_MODEL_OP_GEN_CLIENT_PROPERTIES_GET MESHX_MODEL_OP_1(0x4F)
330#define MESHX_MODEL_OP_GEN_CLIENT_PROPERTIES_STATUS MESHX_MODEL_OP_1(0x50)
331
332/*!< Sensor Message Opcode */
333#define MESHX_MODEL_OP_SENSOR_DESCRIPTOR_GET MESHX_MODEL_OP_2(0x82, 0x30)
334#define MESHX_MODEL_OP_SENSOR_DESCRIPTOR_STATUS MESHX_MODEL_OP_1(0x51)
335#define MESHX_MODEL_OP_SENSOR_GET MESHX_MODEL_OP_2(0x82, 0x31)
336#define MESHX_MODEL_OP_SENSOR_STATUS MESHX_MODEL_OP_1(0x52)
337#define MESHX_MODEL_OP_SENSOR_COLUMN_GET MESHX_MODEL_OP_2(0x82, 0x32)
338#define MESHX_MODEL_OP_SENSOR_COLUMN_STATUS MESHX_MODEL_OP_1(0x53)
339#define MESHX_MODEL_OP_SENSOR_SERIES_GET MESHX_MODEL_OP_2(0x82, 0x33)
340#define MESHX_MODEL_OP_SENSOR_SERIES_STATUS MESHX_MODEL_OP_1(0x54)
341
342/*!< Sensor Setup Message Opcode */
343#define MESHX_MODEL_OP_SENSOR_CADENCE_GET MESHX_MODEL_OP_2(0x82, 0x34)
344#define MESHX_MODEL_OP_SENSOR_CADENCE_SET MESHX_MODEL_OP_1(0x55)
345#define MESHX_MODEL_OP_SENSOR_CADENCE_SET_UNACK MESHX_MODEL_OP_1(0x56)
346#define MESHX_MODEL_OP_SENSOR_CADENCE_STATUS MESHX_MODEL_OP_1(0x57)
347#define MESHX_MODEL_OP_SENSOR_SETTINGS_GET MESHX_MODEL_OP_2(0x82, 0x35)
348#define MESHX_MODEL_OP_SENSOR_SETTINGS_STATUS MESHX_MODEL_OP_1(0x58)
349#define MESHX_MODEL_OP_SENSOR_SETTING_GET MESHX_MODEL_OP_2(0x82, 0x36)
350#define MESHX_MODEL_OP_SENSOR_SETTING_SET MESHX_MODEL_OP_1(0x59)
351#define MESHX_MODEL_OP_SENSOR_SETTING_SET_UNACK MESHX_MODEL_OP_1(0x5A)
352#define MESHX_MODEL_OP_SENSOR_SETTING_STATUS MESHX_MODEL_OP_1(0x5B)
353
354/*!< Time Message Opcode */
355#define MESHX_MODEL_OP_TIME_GET MESHX_MODEL_OP_2(0x82, 0x37)
356#define MESHX_MODEL_OP_TIME_SET MESHX_MODEL_OP_1(0x5C)
357#define MESHX_MODEL_OP_TIME_STATUS MESHX_MODEL_OP_1(0x5D)
358#define MESHX_MODEL_OP_TIME_ROLE_GET MESHX_MODEL_OP_2(0x82, 0x38)
359#define MESHX_MODEL_OP_TIME_ROLE_SET MESHX_MODEL_OP_2(0x82, 0x39)
360#define MESHX_MODEL_OP_TIME_ROLE_STATUS MESHX_MODEL_OP_2(0x82, 0x3A)
361#define MESHX_MODEL_OP_TIME_ZONE_GET MESHX_MODEL_OP_2(0x82, 0x3B)
362#define MESHX_MODEL_OP_TIME_ZONE_SET MESHX_MODEL_OP_2(0x82, 0x3C)
363#define MESHX_MODEL_OP_TIME_ZONE_STATUS MESHX_MODEL_OP_2(0x82, 0x3D)
364#define MESHX_MODEL_OP_TAI_UTC_DELTA_GET MESHX_MODEL_OP_2(0x82, 0x3E)
365#define MESHX_MODEL_OP_TAI_UTC_DELTA_SET MESHX_MODEL_OP_2(0x82, 0x3F)
366#define MESHX_MODEL_OP_TAI_UTC_DELTA_STATUS MESHX_MODEL_OP_2(0x82, 0x40)
367
368/*!< Scene Message Opcode */
369#define MESHX_MODEL_OP_SCENE_GET MESHX_MODEL_OP_2(0x82, 0x41)
370#define MESHX_MODEL_OP_SCENE_RECALL MESHX_MODEL_OP_2(0x82, 0x42)
371#define MESHX_MODEL_OP_SCENE_RECALL_UNACK MESHX_MODEL_OP_2(0x82, 0x43)
372#define MESHX_MODEL_OP_SCENE_STATUS MESHX_MODEL_OP_1(0x5E)
373#define MESHX_MODEL_OP_SCENE_REGISTER_GET MESHX_MODEL_OP_2(0x82, 0x44)
374#define MESHX_MODEL_OP_SCENE_REGISTER_STATUS MESHX_MODEL_OP_2(0x82, 0x45)
375
376/*!< Scene Setup Message Opcode */
377#define MESHX_MODEL_OP_SCENE_STORE MESHX_MODEL_OP_2(0x82, 0x46)
378#define MESHX_MODEL_OP_SCENE_STORE_UNACK MESHX_MODEL_OP_2(0x82, 0x47)
379#define MESHX_MODEL_OP_SCENE_DELETE MESHX_MODEL_OP_2(0x82, 0x9E)
380#define MESHX_MODEL_OP_SCENE_DELETE_UNACK MESHX_MODEL_OP_2(0x82, 0x9F)
381
382/*!< Scheduler Message Opcode */
383#define MESHX_MODEL_OP_SCHEDULER_ACT_GET MESHX_MODEL_OP_2(0x82, 0x48)
384#define MESHX_MODEL_OP_SCHEDULER_ACT_STATUS MESHX_MODEL_OP_1(0x5F)
385#define MESHX_MODEL_OP_SCHEDULER_GET MESHX_MODEL_OP_2(0x82, 0x49)
386#define MESHX_MODEL_OP_SCHEDULER_STATUS MESHX_MODEL_OP_2(0x82, 0x4A)
387
388/*!< Scheduler Setup Message Opcode */
389#define MESHX_MODEL_OP_SCHEDULER_ACT_SET MESHX_MODEL_OP_1(0x60)
390#define MESHX_MODEL_OP_SCHEDULER_ACT_SET_UNACK MESHX_MODEL_OP_1(0x61)
391
392/*!< Light Lightness Message Opcode */
393#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_GET MESHX_MODEL_OP_2(0x82, 0x4B)
394#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_SET MESHX_MODEL_OP_2(0x82, 0x4C)
395#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x4D)
396#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_STATUS MESHX_MODEL_OP_2(0x82, 0x4E)
397#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LINEAR_GET MESHX_MODEL_OP_2(0x82, 0x4F)
398#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LINEAR_SET MESHX_MODEL_OP_2(0x82, 0x50)
399#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LINEAR_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x51)
400#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LINEAR_STATUS MESHX_MODEL_OP_2(0x82, 0x52)
401#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LAST_GET MESHX_MODEL_OP_2(0x82, 0x53)
402#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LAST_STATUS MESHX_MODEL_OP_2(0x82, 0x54)
403#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x55)
404#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x56)
405#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x57)
406#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x58)
407
408/*!< Light Lightness Setup Message Opcode */
409#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x59)
410#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x5A)
411#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x5B)
412#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x5C)
413
414/*!< Light CTL Message Opcode */
415#define MESHX_MODEL_OP_LIGHT_CTL_GET MESHX_MODEL_OP_2(0x82, 0x5D)
416#define MESHX_MODEL_OP_LIGHT_CTL_SET MESHX_MODEL_OP_2(0x82, 0x5E)
417#define MESHX_MODEL_OP_LIGHT_CTL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x5F)
418#define MESHX_MODEL_OP_LIGHT_CTL_STATUS MESHX_MODEL_OP_2(0x82, 0x60)
419#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_GET MESHX_MODEL_OP_2(0x82, 0x61)
420#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x62)
421#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x63)
422#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_SET MESHX_MODEL_OP_2(0x82, 0x64)
423#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x65)
424#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_STATUS MESHX_MODEL_OP_2(0x82, 0x66)
425#define MESHX_MODEL_OP_LIGHT_CTL_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x67)
426#define MESHX_MODEL_OP_LIGHT_CTL_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x68)
427
428/*!< Light CTL Setup Message Opcode */
429#define MESHX_MODEL_OP_LIGHT_CTL_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x69)
430#define MESHX_MODEL_OP_LIGHT_CTL_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x6A)
431#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x6B)
432#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x6C)
433
434/*!< Light HSL Message Opcode */
435#define MESHX_MODEL_OP_LIGHT_HSL_GET MESHX_MODEL_OP_2(0x82, 0x6D)
436#define MESHX_MODEL_OP_LIGHT_HSL_HUE_GET MESHX_MODEL_OP_2(0x82, 0x6E)
437#define MESHX_MODEL_OP_LIGHT_HSL_HUE_SET MESHX_MODEL_OP_2(0x82, 0x6F)
438#define MESHX_MODEL_OP_LIGHT_HSL_HUE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x70)
439#define MESHX_MODEL_OP_LIGHT_HSL_HUE_STATUS MESHX_MODEL_OP_2(0x82, 0x71)
440#define MESHX_MODEL_OP_LIGHT_HSL_SATURATION_GET MESHX_MODEL_OP_2(0x82, 0x72)
441#define MESHX_MODEL_OP_LIGHT_HSL_SATURATION_SET MESHX_MODEL_OP_2(0x82, 0x73)
442#define MESHX_MODEL_OP_LIGHT_HSL_SATURATION_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x74)
443#define MESHX_MODEL_OP_LIGHT_HSL_SATURATION_STATUS MESHX_MODEL_OP_2(0x82, 0x75)
444#define MESHX_MODEL_OP_LIGHT_HSL_SET MESHX_MODEL_OP_2(0x82, 0x76)
445#define MESHX_MODEL_OP_LIGHT_HSL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x77)
446#define MESHX_MODEL_OP_LIGHT_HSL_STATUS MESHX_MODEL_OP_2(0x82, 0x78)
447#define MESHX_MODEL_OP_LIGHT_HSL_TARGET_GET MESHX_MODEL_OP_2(0x82, 0x79)
448#define MESHX_MODEL_OP_LIGHT_HSL_TARGET_STATUS MESHX_MODEL_OP_2(0x82, 0x7A)
449#define MESHX_MODEL_OP_LIGHT_HSL_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x7B)
450#define MESHX_MODEL_OP_LIGHT_HSL_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x7C)
451#define MESHX_MODEL_OP_LIGHT_HSL_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x7D)
452#define MESHX_MODEL_OP_LIGHT_HSL_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x7E)
453
454/*!< Light HSL Setup Message Opcode */
455#define MESHX_MODEL_OP_LIGHT_HSL_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x7F)
456#define MESHX_MODEL_OP_LIGHT_HSL_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x80)
457#define MESHX_MODEL_OP_LIGHT_HSL_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x81)
458#define MESHX_MODEL_OP_LIGHT_HSL_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x82)
459
460/*!< Light xyL Message Opcode */
461#define MESHX_MODEL_OP_LIGHT_XYL_GET MESHX_MODEL_OP_2(0x82, 0x83)
462#define MESHX_MODEL_OP_LIGHT_XYL_SET MESHX_MODEL_OP_2(0x82, 0x84)
463#define MESHX_MODEL_OP_LIGHT_XYL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x85)
464#define MESHX_MODEL_OP_LIGHT_XYL_STATUS MESHX_MODEL_OP_2(0x82, 0x86)
465#define MESHX_MODEL_OP_LIGHT_XYL_TARGET_GET MESHX_MODEL_OP_2(0x82, 0x87)
466#define MESHX_MODEL_OP_LIGHT_XYL_TARGET_STATUS MESHX_MODEL_OP_2(0x82, 0x88)
467#define MESHX_MODEL_OP_LIGHT_XYL_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x89)
468#define MESHX_MODEL_OP_LIGHT_XYL_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x8A)
469#define MESHX_MODEL_OP_LIGHT_XYL_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x8B)
470#define MESHX_MODEL_OP_LIGHT_XYL_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x8C)
471
472/*!< Light xyL Setup Message Opcode */
473#define MESHX_MODEL_OP_LIGHT_XYL_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x8D)
474#define MESHX_MODEL_OP_LIGHT_XYL_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x8E)
475#define MESHX_MODEL_OP_LIGHT_XYL_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x8F)
476#define MESHX_MODEL_OP_LIGHT_XYL_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x90)
477
478/*!< Light Control Message Opcode */
479#define MESHX_MODEL_OP_LIGHT_LC_MODE_GET MESHX_MODEL_OP_2(0x82, 0x91)
480#define MESHX_MODEL_OP_LIGHT_LC_MODE_SET MESHX_MODEL_OP_2(0x82, 0x92)
481#define MESHX_MODEL_OP_LIGHT_LC_MODE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x93)
482#define MESHX_MODEL_OP_LIGHT_LC_MODE_STATUS MESHX_MODEL_OP_2(0x82, 0x94)
483#define MESHX_MODEL_OP_LIGHT_LC_OM_GET MESHX_MODEL_OP_2(0x82, 0x95)
484#define MESHX_MODEL_OP_LIGHT_LC_OM_SET MESHX_MODEL_OP_2(0x82, 0x96)
485#define MESHX_MODEL_OP_LIGHT_LC_OM_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x97)
486#define MESHX_MODEL_OP_LIGHT_LC_OM_STATUS MESHX_MODEL_OP_2(0x82, 0x98)
487#define MESHX_MODEL_OP_LIGHT_LC_LIGHT_ONOFF_GET MESHX_MODEL_OP_2(0x82, 0x99)
488#define MESHX_MODEL_OP_LIGHT_LC_LIGHT_ONOFF_SET MESHX_MODEL_OP_2(0x82, 0x9A)
489#define MESHX_MODEL_OP_LIGHT_LC_LIGHT_ONOFF_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x9B)
490#define MESHX_MODEL_OP_LIGHT_LC_LIGHT_ONOFF_STATUS MESHX_MODEL_OP_2(0x82, 0x9C)
491#define MESHX_MODEL_OP_LIGHT_LC_PROPERTY_GET MESHX_MODEL_OP_2(0x82, 0x9D)
492#define MESHX_MODEL_OP_LIGHT_LC_PROPERTY_SET MESHX_MODEL_OP_1(0x62)
493#define MESHX_MODEL_OP_LIGHT_LC_PROPERTY_SET_UNACK MESHX_MODEL_OP_1(0x63)
494#define MESHX_MODEL_OP_LIGHT_LC_PROPERTY_STATUS MESHX_MODEL_OP_1(0x64)
495
496#define MESHX_SETTINGS_UID_SIZE 20
497
498/*!< This enum value is the event of node/provisioner/fast provisioning */
499typedef enum {
500 MESHX_PROV_REGISTER_COMP_EVT, /*!< Initialize BLE Mesh provisioning capabilities and internal data information completion event */
501 MESHX_NODE_SET_UPROV_NAME_COMP_EVT, /*!< Set the unprovisioned device name completion event */
502 MESHX_NODE_PROV_ENABLE_COMP_EVT, /*!< Enable node provisioning functionality completion event */
503 MESHX_NODE_PROV_DISABLE_COMP_EVT, /*!< Disable node provisioning functionality completion event */
504 MESHX_NODE_PROV_LINK_OPEN_EVT, /*!< Establish a BLE Mesh link event */
505 MESHX_NODE_PROV_LINK_CLOSE_EVT, /*!< Close a BLE Mesh link event */
506 MESHX_NODE_PROV_OOB_PUB_KEY_EVT, /*!< Generate Node input OOB public key event */
507 MESHX_NODE_PROV_OUTPUT_NUMBER_EVT, /*!< Generate Node Output Number event */
508 MESHX_NODE_PROV_OUTPUT_STRING_EVT, /*!< Generate Node Output String event */
509 MESHX_NODE_PROV_INPUT_EVT, /*!< Event requiring the user to input a number or string */
510 MESHX_NODE_PROV_COMPLETE_EVT, /*!< Provisioning done event */
511 MESHX_NODE_PROV_RESET_EVT, /*!< Provisioning reset event */
512 MESHX_NODE_PROV_SET_OOB_PUB_KEY_COMP_EVT, /*!< Node set oob public key completion event */
513 MESHX_NODE_PROV_INPUT_NUMBER_COMP_EVT, /*!< Node input number completion event */
514 MESHX_NODE_PROV_INPUT_STRING_COMP_EVT, /*!< Node input string completion event */
515 MESHX_NODE_PROXY_IDENTITY_ENABLE_COMP_EVT, /*!< Enable BLE Mesh Proxy Identity advertising completion event */
516 MESHX_NODE_PRIVATE_PROXY_IDENTITY_ENABLE_COMP_EVT, /*!< Enable BLE Mesh Private Proxy Identity advertising completion event */
517 MESHX_NODE_PRIVATE_PROXY_IDENTITY_DISABLE_COMP_EVT, /*!< Disable BLE Mesh Private Proxy Identity advertising completion event */
518 MESHX_NODE_PROXY_GATT_ENABLE_COMP_EVT, /*!< Enable BLE Mesh GATT Proxy Service completion event */
519 MESHX_NODE_PROXY_GATT_DISABLE_COMP_EVT, /*!< Disable BLE Mesh GATT Proxy Service completion event */
520 MESHX_NODE_ADD_LOCAL_NET_KEY_COMP_EVT, /*!< Node add NetKey locally completion event */
521 MESHX_NODE_ADD_LOCAL_APP_KEY_COMP_EVT, /*!< Node add AppKey locally completion event */
522 MESHX_NODE_BIND_APP_KEY_TO_MODEL_COMP_EVT, /*!< Node bind AppKey to model locally completion event */
523 MESHX_PROVISIONER_PROV_ENABLE_COMP_EVT, /*!< Provisioner enable provisioning functionality completion event */
524 MESHX_PROVISIONER_PROV_DISABLE_COMP_EVT, /*!< Provisioner disable provisioning functionality completion event */
525 MESHX_PROVISIONER_RECV_UNPROV_ADV_PKT_EVT, /*!< Provisioner receives unprovisioned device beacon event */
526 MESHX_PROVISIONER_PROV_READ_OOB_PUB_KEY_EVT, /*!< Provisioner read unprovisioned device OOB public key event */
527 MESHX_PROVISIONER_PROV_INPUT_EVT, /*!< Provisioner input value for provisioning procedure event */
528 MESHX_PROVISIONER_PROV_OUTPUT_EVT, /*!< Provisioner output value for provisioning procedure event */
529 MESHX_PROVISIONER_PROV_LINK_OPEN_EVT, /*!< Provisioner establish a BLE Mesh link event */
530 MESHX_PROVISIONER_PROV_LINK_CLOSE_EVT, /*!< Provisioner close a BLE Mesh link event */
531 MESHX_PROVISIONER_PROV_COMPLETE_EVT, /*!< Provisioner provisioning done event */
532 MESHX_PROVISIONER_CERT_BASED_PROV_START_EVT, /*!< Provisioner initiate a certificate based provisioning */
533 MESHX_PROVISIONER_RECV_PROV_RECORDS_LIST_EVT, /*!< Provisioner receive provisioning records list event */
534 MESHX_PROVISIONER_PROV_RECORD_RECV_COMP_EVT, /*!< Provisioner receive provisioning record complete event */
535 MESHX_PROVISIONER_SEND_PROV_RECORDS_GET_EVT, /*!< Provisioner send provisioning records get to device event */
536 MESHX_PROVISIONER_SEND_PROV_RECORD_REQUEST_EVT, /*!< Provisioner send provisioning record request to device event */
537 MESHX_PROVISIONER_SEND_PROV_INVITE_EVT, /*!< Provisioner send provisioning invite to device event */
538 MESHX_PROVISIONER_SEND_LINK_CLOSE_EVT, /*!< Provisioner send link close to device event */
539 MESHX_PROVISIONER_ADD_UNPROV_DEV_COMP_EVT, /*!< Provisioner add a device to the list which contains devices that are waiting/going to be provisioned completion event */
540 MESHX_PROVISIONER_PROV_DEV_WITH_ADDR_COMP_EVT, /*!< Provisioner start to provision an unprovisioned device completion event */
541 MESHX_PROVISIONER_DELETE_DEV_COMP_EVT, /*!< Provisioner delete a device from the list, close provisioning link with the device completion event */
542 MESHX_PROVISIONER_SET_DEV_UUID_MATCH_COMP_EVT, /*!< Provisioner set the value to be compared with part of the unprovisioned device UUID completion event */
543 MESHX_PROVISIONER_SET_PROV_DATA_INFO_COMP_EVT, /*!< Provisioner set net_idx/flags/iv_index used for provisioning completion event */
544 MESHX_PROVISIONER_SET_STATIC_OOB_VALUE_COMP_EVT, /*!< Provisioner set static oob value used for provisioning completion event */
545 MESHX_PROVISIONER_SET_PRIMARY_ELEM_ADDR_COMP_EVT, /*!< Provisioner set unicast address of primary element completion event */
546 MESHX_PROVISIONER_PROV_READ_OOB_PUB_KEY_COMP_EVT, /*!< Provisioner read unprovisioned device OOB public key completion event */
547 MESHX_PROVISIONER_PROV_INPUT_NUMBER_COMP_EVT, /*!< Provisioner input number completion event */
548 MESHX_PROVISIONER_PROV_INPUT_STRING_COMP_EVT, /*!< Provisioner input string completion event */
549 MESHX_PROVISIONER_SET_NODE_NAME_COMP_EVT, /*!< Provisioner set node name completion event */
550 MESHX_PROVISIONER_ADD_LOCAL_APP_KEY_COMP_EVT, /*!< Provisioner add local app key completion event */
551 MESHX_PROVISIONER_UPDATE_LOCAL_APP_KEY_COMP_EVT, /*!< Provisioner update local app key completion event */
552 MESHX_PROVISIONER_BIND_APP_KEY_TO_MODEL_COMP_EVT, /*!< Provisioner bind local model with local app key completion event */
553 MESHX_PROVISIONER_ADD_LOCAL_NET_KEY_COMP_EVT, /*!< Provisioner add local network key completion event */
554 MESHX_PROVISIONER_UPDATE_LOCAL_NET_KEY_COMP_EVT, /*!< Provisioner update local network key completion event */
555 MESHX_PROVISIONER_STORE_NODE_COMP_DATA_COMP_EVT, /*!< Provisioner store node composition data completion event */
556 MESHX_PROVISIONER_DELETE_NODE_WITH_UUID_COMP_EVT, /*!< Provisioner delete node with uuid completion event */
557 MESHX_PROVISIONER_DELETE_NODE_WITH_ADDR_COMP_EVT, /*!< Provisioner delete node with unicast address completion event */
558 MESHX_PROVISIONER_ENABLE_HEARTBEAT_RECV_COMP_EVT, /*!< Provisioner start to receive heartbeat message completion event */
559 MESHX_PROVISIONER_SET_HEARTBEAT_FILTER_TYPE_COMP_EVT, /*!< Provisioner set the heartbeat filter type completion event */
560 MESHX_PROVISIONER_SET_HEARTBEAT_FILTER_INFO_COMP_EVT, /*!< Provisioner set the heartbeat filter information completion event */
561 MESHX_PROVISIONER_RECV_HEARTBEAT_MESSAGE_EVT, /*!< Provisioner receive heartbeat message event */
562 MESHX_PROVISIONER_DIRECT_ERASE_SETTINGS_COMP_EVT, /*!< Provisioner directly erase settings completion event */
563 MESHX_PROVISIONER_OPEN_SETTINGS_WITH_INDEX_COMP_EVT, /*!< Provisioner open settings with index completion event */
564 MESHX_PROVISIONER_OPEN_SETTINGS_WITH_UID_COMP_EVT, /*!< Provisioner open settings with user id completion event */
565 MESHX_PROVISIONER_CLOSE_SETTINGS_WITH_INDEX_COMP_EVT, /*!< Provisioner close settings with index completion event */
566 MESHX_PROVISIONER_CLOSE_SETTINGS_WITH_UID_COMP_EVT, /*!< Provisioner close settings with user id completion event */
567 MESHX_PROVISIONER_DELETE_SETTINGS_WITH_INDEX_COMP_EVT, /*!< Provisioner delete settings with index completion event */
568 MESHX_PROVISIONER_DELETE_SETTINGS_WITH_UID_COMP_EVT, /*!< Provisioner delete settings with user id completion event */
569 MESHX_SET_FAST_PROV_INFO_COMP_EVT, /*!< Set fast provisioning information (e.g. unicast address range, net_idx, etc.) completion event */
570 MESHX_SET_FAST_PROV_ACTION_COMP_EVT, /*!< Set fast provisioning action completion event */
571 MESHX_HEARTBEAT_MESSAGE_RECV_EVT, /*!< Receive Heartbeat message event */
572 MESHX_LPN_ENABLE_COMP_EVT, /*!< Enable Low Power Node completion event */
573 MESHX_LPN_DISABLE_COMP_EVT, /*!< Disable Low Power Node completion event */
574 MESHX_LPN_POLL_COMP_EVT, /*!< Low Power Node send Friend Poll completion event */
575 MESHX_LPN_FRIENDSHIP_ESTABLISH_EVT, /*!< Low Power Node establishes friendship event */
576 MESHX_LPN_FRIENDSHIP_TERMINATE_EVT, /*!< Low Power Node terminates friendship event */
577 MESHX_FRIEND_FRIENDSHIP_ESTABLISH_EVT, /*!< Friend Node establishes friendship event */
578 MESHX_FRIEND_FRIENDSHIP_TERMINATE_EVT, /*!< Friend Node terminates friendship event */
579 MESHX_PROXY_CLIENT_RECV_ADV_PKT_EVT, /*!< Proxy Client receives Network ID advertising packet event */
580 MESHX_PROXY_CLIENT_CONNECTED_EVT, /*!< Proxy Client establishes connection successfully event */
581 MESHX_PROXY_CLIENT_DISCONNECTED_EVT, /*!< Proxy Client terminates connection successfully event */
582 MESHX_PROXY_CLIENT_RECV_FILTER_STATUS_EVT, /*!< Proxy Client receives Proxy Filter Status event */
583 MESHX_PROXY_CLIENT_CONNECT_COMP_EVT, /*!< Proxy Client connect completion event */
584 MESHX_PROXY_CLIENT_DISCONNECT_COMP_EVT, /*!< Proxy Client disconnect completion event */
585 MESHX_PROXY_CLIENT_SET_FILTER_TYPE_COMP_EVT, /*!< Proxy Client set filter type completion event */
586 MESHX_PROXY_CLIENT_ADD_FILTER_ADDR_COMP_EVT, /*!< Proxy Client add filter address completion event */
587 MESHX_PROXY_CLIENT_REMOVE_FILTER_ADDR_COMP_EVT, /*!< Proxy Client remove filter address completion event */
588 MESHX_PROXY_CLIENT_DIRECTED_PROXY_SET_COMP_EVT, /*!< Proxy Client directed proxy set completion event */
589 MESHX_PROXY_SERVER_CONNECTED_EVT, /*!< Proxy Server establishes connection successfully event */
590 MESHX_PROXY_SERVER_DISCONNECTED_EVT, /*!< Proxy Server terminates connection successfully event */
591 MESHX_PROXY_CLIENT_SEND_SOLIC_PDU_COMP_EVT, /*!< Proxy Client send Solicitation PDU completion event */
592 MESHX_MODEL_SUBSCRIBE_GROUP_ADDR_COMP_EVT, /*!< Local model subscribes group address completion event */
593 MESHX_MODEL_UNSUBSCRIBE_GROUP_ADDR_COMP_EVT, /*!< Local model unsubscribes group address completion event */
594 MESHX_DEINIT_MESH_COMP_EVT, /*!< De-initialize BLE Mesh stack completion event */
597
608
609/*!< This enum value is provisioning authentication oob method */
616
617/*!< This enum value is associated with bt_mesh_output_action_t in mesh_main.h */
626
627/*!< This enum value is associated with bt_mesh_input_action_t in mesh_main.h */
635
636typedef void* meshx_ptr_t;
637typedef const void* meshx_cptr_t;
638typedef unsigned char meshx_addr_type_t;
639
640#ifndef MESHX_BD_ADDR_LEN
641#define MESHX_BD_ADDR_LEN 6
642#endif
643
644#ifndef MESHX_UUID_ADDR_LEN
645#define MESHX_UUID_ADDR_LEN 16
646#endif
647
650
651#define MESHX_UUID_EMPTY (meshx_uuid_addr_t){0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
meshx_input_action_t
Definition meshx_ble_mesh_cmn_def.h:628
@ MESHX_ENTER_NUMBER
Definition meshx_ble_mesh_cmn_def.h:632
@ MESHX_TWIST
Definition meshx_ble_mesh_cmn_def.h:631
@ MESHX_ENTER_STRING
Definition meshx_ble_mesh_cmn_def.h:633
@ MESHX_NO_INPUT
Definition meshx_ble_mesh_cmn_def.h:629
@ MESHX_PUSH
Definition meshx_ble_mesh_cmn_def.h:630
void * meshx_ptr_t
Definition meshx_ble_mesh_cmn_def.h:636
meshx_cb_type_t
Definition meshx_ble_mesh_cmn_def.h:598
@ MESHX_TYPE_PROV_CB
Definition meshx_ble_mesh_cmn_def.h:599
@ MESHX_TYPE_LINK_CLOSE_CB
Definition meshx_ble_mesh_cmn_def.h:604
@ MESHX_TYPE_OUTPUT_STR_CB
Definition meshx_ble_mesh_cmn_def.h:601
@ MESHX_TYPE_OUTPUT_NUM_CB
Definition meshx_ble_mesh_cmn_def.h:600
@ MESHX_TYPE_COMPLETE_CB
Definition meshx_ble_mesh_cmn_def.h:605
@ MESHX_TYPE_RESET_CB
Definition meshx_ble_mesh_cmn_def.h:606
@ MESHX_TYPE_INTPUT_CB
Definition meshx_ble_mesh_cmn_def.h:602
@ MESHX_TYPE_LINK_OPEN_CB
Definition meshx_ble_mesh_cmn_def.h:603
uint8_t meshx_uuid_addr_t[16]
Definition meshx_ble_mesh_cmn_def.h:649
const void * meshx_cptr_t
Definition meshx_ble_mesh_cmn_def.h:637
meshx_prov_cb_event_t
Definition meshx_ble_mesh_cmn_def.h:499
@ MESHX_NODE_PROXY_GATT_ENABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:518
@ MESHX_MODEL_SUBSCRIBE_GROUP_ADDR_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:592
@ MESHX_NODE_PROV_DISABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:503
@ MESHX_SET_FAST_PROV_INFO_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:569
@ MESHX_PROVISIONER_DELETE_NODE_WITH_UUID_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:556
@ MESHX_PROXY_CLIENT_CONNECTED_EVT
Definition meshx_ble_mesh_cmn_def.h:580
@ MESHX_PROVISIONER_DELETE_SETTINGS_WITH_INDEX_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:567
@ MESHX_PROVISIONER_PROV_READ_OOB_PUB_KEY_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:546
@ MESHX_PROVISIONER_PROV_ENABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:523
@ MESHX_PROXY_CLIENT_SEND_SOLIC_PDU_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:591
@ MESHX_PROVISIONER_SET_NODE_NAME_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:549
@ MESHX_PROVISIONER_SEND_PROV_INVITE_EVT
Definition meshx_ble_mesh_cmn_def.h:537
@ MESHX_NODE_PROV_COMPLETE_EVT
Definition meshx_ble_mesh_cmn_def.h:510
@ MESHX_PROVISIONER_DIRECT_ERASE_SETTINGS_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:562
@ MESHX_PROVISIONER_CLOSE_SETTINGS_WITH_INDEX_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:565
@ MESHX_PROXY_CLIENT_SET_FILTER_TYPE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:585
@ MESHX_PROVISIONER_PROV_LINK_CLOSE_EVT
Definition meshx_ble_mesh_cmn_def.h:530
@ MESHX_NODE_PROV_OOB_PUB_KEY_EVT
Definition meshx_ble_mesh_cmn_def.h:506
@ MESHX_PROXY_CLIENT_ADD_FILTER_ADDR_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:586
@ MESHX_PROVISIONER_SEND_PROV_RECORDS_GET_EVT
Definition meshx_ble_mesh_cmn_def.h:535
@ MESHX_NODE_PROV_OUTPUT_NUMBER_EVT
Definition meshx_ble_mesh_cmn_def.h:507
@ MESHX_PROXY_CLIENT_CONNECT_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:583
@ MESHX_NODE_PROV_INPUT_STRING_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:514
@ MESHX_PROVISIONER_PROV_INPUT_STRING_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:548
@ MESHX_PROVISIONER_SET_HEARTBEAT_FILTER_INFO_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:560
@ MESHX_PROV_EVT_MAX
Definition meshx_ble_mesh_cmn_def.h:595
@ MESHX_NODE_ADD_LOCAL_NET_KEY_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:520
@ MESHX_LPN_FRIENDSHIP_ESTABLISH_EVT
Definition meshx_ble_mesh_cmn_def.h:575
@ MESHX_PROVISIONER_PROV_COMPLETE_EVT
Definition meshx_ble_mesh_cmn_def.h:531
@ MESHX_PROVISIONER_SET_PRIMARY_ELEM_ADDR_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:545
@ MESHX_PROVISIONER_SET_DEV_UUID_MATCH_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:542
@ MESHX_PROVISIONER_OPEN_SETTINGS_WITH_INDEX_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:563
@ MESHX_PROXY_CLIENT_DISCONNECTED_EVT
Definition meshx_ble_mesh_cmn_def.h:581
@ MESHX_PROVISIONER_ADD_LOCAL_NET_KEY_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:553
@ MESHX_PROVISIONER_PROV_READ_OOB_PUB_KEY_EVT
Definition meshx_ble_mesh_cmn_def.h:526
@ MESHX_PROXY_SERVER_CONNECTED_EVT
Definition meshx_ble_mesh_cmn_def.h:589
@ MESHX_NODE_BIND_APP_KEY_TO_MODEL_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:522
@ MESHX_PROVISIONER_PROV_DISABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:524
@ MESHX_LPN_POLL_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:574
@ MESHX_PROXY_CLIENT_RECV_ADV_PKT_EVT
Definition meshx_ble_mesh_cmn_def.h:579
@ MESHX_LPN_DISABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:573
@ MESHX_NODE_PRIVATE_PROXY_IDENTITY_ENABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:516
@ MESHX_NODE_PRIVATE_PROXY_IDENTITY_DISABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:517
@ MESHX_SET_FAST_PROV_ACTION_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:570
@ MESHX_PROVISIONER_DELETE_DEV_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:541
@ MESHX_PROVISIONER_STORE_NODE_COMP_DATA_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:555
@ MESHX_PROVISIONER_ENABLE_HEARTBEAT_RECV_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:558
@ MESHX_NODE_PROV_RESET_EVT
Definition meshx_ble_mesh_cmn_def.h:511
@ MESHX_PROVISIONER_BIND_APP_KEY_TO_MODEL_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:552
@ MESHX_PROVISIONER_PROV_INPUT_EVT
Definition meshx_ble_mesh_cmn_def.h:527
@ MESHX_LPN_FRIENDSHIP_TERMINATE_EVT
Definition meshx_ble_mesh_cmn_def.h:576
@ MESHX_PROXY_CLIENT_RECV_FILTER_STATUS_EVT
Definition meshx_ble_mesh_cmn_def.h:582
@ MESHX_PROVISIONER_RECV_HEARTBEAT_MESSAGE_EVT
Definition meshx_ble_mesh_cmn_def.h:561
@ MESHX_PROV_REGISTER_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:500
@ MESHX_PROVISIONER_PROV_DEV_WITH_ADDR_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:540
@ MESHX_PROVISIONER_PROV_OUTPUT_EVT
Definition meshx_ble_mesh_cmn_def.h:528
@ MESHX_PROVISIONER_SEND_PROV_RECORD_REQUEST_EVT
Definition meshx_ble_mesh_cmn_def.h:536
@ MESHX_NODE_ADD_LOCAL_APP_KEY_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:521
@ MESHX_PROXY_SERVER_DISCONNECTED_EVT
Definition meshx_ble_mesh_cmn_def.h:590
@ MESHX_PROVISIONER_DELETE_SETTINGS_WITH_UID_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:568
@ MESHX_NODE_SET_UPROV_NAME_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:501
@ MESHX_PROVISIONER_UPDATE_LOCAL_APP_KEY_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:551
@ MESHX_NODE_PROV_SET_OOB_PUB_KEY_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:512
@ MESHX_FRIEND_FRIENDSHIP_TERMINATE_EVT
Definition meshx_ble_mesh_cmn_def.h:578
@ MESHX_PROVISIONER_ADD_UNPROV_DEV_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:539
@ MESHX_NODE_PROV_LINK_OPEN_EVT
Definition meshx_ble_mesh_cmn_def.h:504
@ MESHX_PROVISIONER_PROV_RECORD_RECV_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:534
@ MESHX_NODE_PROV_INPUT_NUMBER_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:513
@ MESHX_PROVISIONER_PROV_INPUT_NUMBER_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:547
@ MESHX_HEARTBEAT_MESSAGE_RECV_EVT
Definition meshx_ble_mesh_cmn_def.h:571
@ MESHX_PROVISIONER_SET_STATIC_OOB_VALUE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:544
@ MESHX_PROVISIONER_CERT_BASED_PROV_START_EVT
Definition meshx_ble_mesh_cmn_def.h:532
@ MESHX_NODE_PROXY_GATT_DISABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:519
@ MESHX_PROVISIONER_CLOSE_SETTINGS_WITH_UID_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:566
@ MESHX_PROVISIONER_OPEN_SETTINGS_WITH_UID_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:564
@ MESHX_NODE_PROV_INPUT_EVT
Definition meshx_ble_mesh_cmn_def.h:509
@ MESHX_PROVISIONER_DELETE_NODE_WITH_ADDR_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:557
@ MESHX_NODE_PROV_LINK_CLOSE_EVT
Definition meshx_ble_mesh_cmn_def.h:505
@ MESHX_PROVISIONER_ADD_LOCAL_APP_KEY_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:550
@ MESHX_PROVISIONER_PROV_LINK_OPEN_EVT
Definition meshx_ble_mesh_cmn_def.h:529
@ MESHX_FRIEND_FRIENDSHIP_ESTABLISH_EVT
Definition meshx_ble_mesh_cmn_def.h:577
@ MESHX_PROXY_CLIENT_DISCONNECT_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:584
@ MESHX_PROXY_CLIENT_REMOVE_FILTER_ADDR_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:587
@ MESHX_PROVISIONER_SET_HEARTBEAT_FILTER_TYPE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:559
@ MESHX_NODE_PROXY_IDENTITY_ENABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:515
@ MESHX_PROVISIONER_UPDATE_LOCAL_NET_KEY_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:554
@ MESHX_PROVISIONER_SET_PROV_DATA_INFO_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:543
@ MESHX_DEINIT_MESH_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:594
@ MESHX_NODE_PROV_ENABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:502
@ MESHX_PROXY_CLIENT_DIRECTED_PROXY_SET_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:588
@ MESHX_PROVISIONER_RECV_PROV_RECORDS_LIST_EVT
Definition meshx_ble_mesh_cmn_def.h:533
@ MESHX_PROVISIONER_SEND_LINK_CLOSE_EVT
Definition meshx_ble_mesh_cmn_def.h:538
@ MESHX_NODE_PROV_OUTPUT_STRING_EVT
Definition meshx_ble_mesh_cmn_def.h:508
@ MESHX_LPN_ENABLE_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:572
@ MESHX_PROVISIONER_RECV_UNPROV_ADV_PKT_EVT
Definition meshx_ble_mesh_cmn_def.h:525
@ MESHX_MODEL_UNSUBSCRIBE_GROUP_ADDR_COMP_EVT
Definition meshx_ble_mesh_cmn_def.h:593
uint8_t meshx_bd_addr_t[6]
Definition meshx_ble_mesh_cmn_def.h:648
unsigned char meshx_addr_type_t
Definition meshx_ble_mesh_cmn_def.h:638
meshx_output_action_t
Definition meshx_ble_mesh_cmn_def.h:618
@ MESHX_DISPLAY_NUMBER
Definition meshx_ble_mesh_cmn_def.h:623
@ MESHX_BEEP
Definition meshx_ble_mesh_cmn_def.h:621
@ MESHX_BLINK
Definition meshx_ble_mesh_cmn_def.h:620
@ MESHX_NO_OUTPUT
Definition meshx_ble_mesh_cmn_def.h:619
@ MESHX_DISPLAY_STRING
Definition meshx_ble_mesh_cmn_def.h:624
@ MESHX_VIBRATE
Definition meshx_ble_mesh_cmn_def.h:622
#define MESHX_UUID_ADDR_LEN
Definition meshx_ble_mesh_cmn_def.h:645
#define MESHX_BIT(nr)
Definition meshx_ble_mesh_cmn_def.h:22
meshx_oob_method_t
Definition meshx_ble_mesh_cmn_def.h:610
@ MESHX_NO_OOB
Definition meshx_ble_mesh_cmn_def.h:611
@ MESHX_STATIC_OOB
Definition meshx_ble_mesh_cmn_def.h:612
@ MESHX_INPUT_OOB
Definition meshx_ble_mesh_cmn_def.h:614
@ MESHX_OUTPUT_OOB
Definition meshx_ble_mesh_cmn_def.h:613
#define MESHX_BD_ADDR_LEN
Definition meshx_ble_mesh_cmn_def.h:641