MeshX 0.3
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
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_UNASSIGNED 0x0000
30#define MESHX_KEY_UNUSED 0XFFFF
31
32#define MESHX_MODEL_OP_1(b0) (b0)
33#define MESHX_MODEL_OP_2(b0, b1) (((b0) << 8) | (b1))
34#define MESHX_MODEL_OP_3(b0, cid) ((((b0) << 16) | 0xC00000) | (cid))
35
39
41#define MESHX_MODEL_ID_CONFIG_SRV 0x0000
42#define MESHX_MODEL_ID_CONFIG_CLI 0x0001
43#define MESHX_MODEL_ID_HEALTH_SRV 0x0002
44#define MESHX_MODEL_ID_HEALTH_CLI 0x0003
45#define MESHX_MODEL_ID_RPR_SRV 0x0004
46#define MESHX_MODEL_ID_RPR_CLI 0x0005
47#define MESHX_MODEL_ID_DF_SRV 0x0006
48#define MESHX_MODEL_ID_DF_CLI 0x0007
49#define MESHX_MODEL_ID_BRC_SRV 0x0008
50#define MESHX_MODEL_ID_BRC_CLI 0x0009
51#define MESHX_MODEL_ID_PRB_SRV 0x000A
52#define MESHX_MODEL_ID_PRB_CLI 0x000B
53#define MESHX_MODEL_ID_ODP_SRV 0x000C
54#define MESHX_MODEL_ID_ODP_CLI 0x000D
55#define MESHX_MODEL_ID_SAR_SRV 0x000E
56#define MESHX_MODEL_ID_SAR_CLI 0x000F
57#define MESHX_MODEL_ID_AGG_SRV 0x0010
58#define MESHX_MODEL_ID_AGG_CLI 0x0011
59#define MESHX_MODEL_ID_LCD_SRV 0x0012
60#define MESHX_MODEL_ID_LCD_CLI 0x0013
61#define MESHX_MODEL_ID_SRPL_SRV 0x0014
62#define MESHX_MODEL_ID_SRPL_CLI 0x0015
63
65#define MESHX_MODEL_ID_GEN_ONOFF_SRV 0x1000
66#define MESHX_MODEL_ID_GEN_ONOFF_CLI 0x1001
67#define MESHX_MODEL_ID_GEN_LEVEL_SRV 0x1002
68#define MESHX_MODEL_ID_GEN_LEVEL_CLI 0x1003
69#define MESHX_MODEL_ID_GEN_DEF_TRANS_TIME_SRV 0x1004
70#define MESHX_MODEL_ID_GEN_DEF_TRANS_TIME_CLI 0x1005
71#define MESHX_MODEL_ID_GEN_POWER_ONOFF_SRV 0x1006
72#define MESHX_MODEL_ID_GEN_POWER_ONOFF_SETUP_SRV 0x1007
73#define MESHX_MODEL_ID_GEN_POWER_ONOFF_CLI 0x1008
74#define MESHX_MODEL_ID_GEN_POWER_LEVEL_SRV 0x1009
75#define MESHX_MODEL_ID_GEN_POWER_LEVEL_SETUP_SRV 0x100a
76#define MESHX_MODEL_ID_GEN_POWER_LEVEL_CLI 0x100b
77#define MESHX_MODEL_ID_GEN_BATTERY_SRV 0x100c
78#define MESHX_MODEL_ID_GEN_BATTERY_CLI 0x100d
79#define MESHX_MODEL_ID_GEN_LOCATION_SRV 0x100e
80#define MESHX_MODEL_ID_GEN_LOCATION_SETUP_SRV 0x100f
81#define MESHX_MODEL_ID_GEN_LOCATION_CLI 0x1010
82#define MESHX_MODEL_ID_GEN_ADMIN_PROP_SRV 0x1011
83#define MESHX_MODEL_ID_GEN_MANUFACTURER_PROP_SRV 0x1012
84#define MESHX_MODEL_ID_GEN_USER_PROP_SRV 0x1013
85#define MESHX_MODEL_ID_GEN_CLIENT_PROP_SRV 0x1014
86#define MESHX_MODEL_ID_GEN_PROP_CLI 0x1015
87#define MESHX_MODEL_ID_SENSOR_SRV 0x1100
88#define MESHX_MODEL_ID_SENSOR_SETUP_SRV 0x1101
89#define MESHX_MODEL_ID_SENSOR_CLI 0x1102
90#define MESHX_MODEL_ID_TIME_SRV 0x1200
91#define MESHX_MODEL_ID_TIME_SETUP_SRV 0x1201
92#define MESHX_MODEL_ID_TIME_CLI 0x1202
93#define MESHX_MODEL_ID_SCENE_SRV 0x1203
94#define MESHX_MODEL_ID_SCENE_SETUP_SRV 0x1204
95#define MESHX_MODEL_ID_SCENE_CLI 0x1205
96#define MESHX_MODEL_ID_SCHEDULER_SRV 0x1206
97#define MESHX_MODEL_ID_SCHEDULER_SETUP_SRV 0x1207
98#define MESHX_MODEL_ID_SCHEDULER_CLI 0x1208
99#define MESHX_MODEL_ID_LIGHT_LIGHTNESS_SRV 0x1300
100#define MESHX_MODEL_ID_LIGHT_LIGHTNESS_SETUP_SRV 0x1301
101#define MESHX_MODEL_ID_LIGHT_LIGHTNESS_CLI 0x1302
102#define MESHX_MODEL_ID_LIGHT_CTL_SRV 0x1303
103#define MESHX_MODEL_ID_LIGHT_CTL_SETUP_SRV 0x1304
104#define MESHX_MODEL_ID_LIGHT_CTL_CLI 0x1305
105#define MESHX_MODEL_ID_LIGHT_CTL_TEMP_SRV 0x1306
106#define MESHX_MODEL_ID_LIGHT_HSL_SRV 0x1307
107#define MESHX_MODEL_ID_LIGHT_HSL_SETUP_SRV 0x1308
108#define MESHX_MODEL_ID_LIGHT_HSL_CLI 0x1309
109#define MESHX_MODEL_ID_LIGHT_HSL_HUE_SRV 0x130a
110#define MESHX_MODEL_ID_LIGHT_HSL_SAT_SRV 0x130b
111#define MESHX_MODEL_ID_LIGHT_XYL_SRV 0x130c
112#define MESHX_MODEL_ID_LIGHT_XYL_SETUP_SRV 0x130d
113#define MESHX_MODEL_ID_LIGHT_XYL_CLI 0x130e
114#define MESHX_MODEL_ID_LIGHT_LC_SRV 0x130f
115#define MESHX_MODEL_ID_LIGHT_LC_SETUP_SRV 0x1310
116#define MESHX_MODEL_ID_LIGHT_LC_CLI 0x1311
117#define MESHX_MODEL_ID_MBT_SRV 0x1400
118#define MESHX_MODEL_ID_MBT_CLI 0x1401
119
120#define MESHX_MODEL_OP_BEACON_GET MESHX_MODEL_OP_2(0x80, 0x09)
121#define MESHX_MODEL_OP_COMPOSITION_DATA_GET MESHX_MODEL_OP_2(0x80, 0x08)
122#define MESHX_MODEL_OP_DEFAULT_TTL_GET MESHX_MODEL_OP_2(0x80, 0x0C)
123#define MESHX_MODEL_OP_GATT_PROXY_GET MESHX_MODEL_OP_2(0x80, 0x12)
124#define MESHX_MODEL_OP_RELAY_GET MESHX_MODEL_OP_2(0x80, 0x26)
125#define MESHX_MODEL_OP_MODEL_PUB_GET MESHX_MODEL_OP_2(0x80, 0x18)
126#define MESHX_MODEL_OP_FRIEND_GET MESHX_MODEL_OP_2(0x80, 0x0F)
127#define MESHX_MODEL_OP_HEARTBEAT_PUB_GET MESHX_MODEL_OP_2(0x80, 0x38)
128#define MESHX_MODEL_OP_HEARTBEAT_SUB_GET MESHX_MODEL_OP_2(0x80, 0x3a)
129#define MESHX_MODEL_OP_NET_KEY_GET MESHX_MODEL_OP_2(0x80, 0x42)
130#define MESHX_MODEL_OP_APP_KEY_GET MESHX_MODEL_OP_2(0x80, 0x01)
131#define MESHX_MODEL_OP_NODE_IDENTITY_GET MESHX_MODEL_OP_2(0x80, 0x46)
132#define MESHX_MODEL_OP_SIG_MODEL_SUB_GET MESHX_MODEL_OP_2(0x80, 0x29)
133#define MESHX_MODEL_OP_VENDOR_MODEL_SUB_GET MESHX_MODEL_OP_2(0x80, 0x2B)
134#define MESHX_MODEL_OP_SIG_MODEL_APP_GET MESHX_MODEL_OP_2(0x80, 0x4B)
135#define MESHX_MODEL_OP_VENDOR_MODEL_APP_GET MESHX_MODEL_OP_2(0x80, 0x4D)
136#define MESHX_MODEL_OP_KEY_REFRESH_PHASE_GET MESHX_MODEL_OP_2(0x80, 0x15)
137#define MESHX_MODEL_OP_LPN_POLLTIMEOUT_GET MESHX_MODEL_OP_2(0x80, 0x2D)
138#define MESHX_MODEL_OP_NETWORK_TRANSMIT_GET MESHX_MODEL_OP_2(0x80, 0x23)
139
140#define MESHX_MODEL_OP_BEACON_SET MESHX_MODEL_OP_2(0x80, 0x0A)
141#define MESHX_MODEL_OP_DEFAULT_TTL_SET MESHX_MODEL_OP_2(0x80, 0x0D)
142#define MESHX_MODEL_OP_GATT_PROXY_SET MESHX_MODEL_OP_2(0x80, 0x13)
143#define MESHX_MODEL_OP_RELAY_SET MESHX_MODEL_OP_2(0x80, 0x27)
144#define MESHX_MODEL_OP_MODEL_PUB_SET MESHX_MODEL_OP_1(0x03)
145#define MESHX_MODEL_OP_MODEL_SUB_ADD MESHX_MODEL_OP_2(0x80, 0x1B)
146#define MESHX_MODEL_OP_MODEL_SUB_VIRTUAL_ADDR_ADD MESHX_MODEL_OP_2(0x80, 0x20)
147#define MESHX_MODEL_OP_MODEL_SUB_DELETE MESHX_MODEL_OP_2(0x80, 0x1C)
148#define MESHX_MODEL_OP_MODEL_SUB_VIRTUAL_ADDR_DELETE MESHX_MODEL_OP_2(0x80, 0x21)
149#define MESHX_MODEL_OP_MODEL_SUB_OVERWRITE MESHX_MODEL_OP_2(0x80, 0x1E)
150#define MESHX_MODEL_OP_MODEL_SUB_VIRTUAL_ADDR_OVERWRITE MESHX_MODEL_OP_2(0x80, 0x22)
151#define MESHX_MODEL_OP_NET_KEY_ADD MESHX_MODEL_OP_2(0x80, 0x40)
152#define MESHX_MODEL_OP_APP_KEY_ADD MESHX_MODEL_OP_1(0x00)
153#define MESHX_MODEL_OP_MODEL_APP_BIND MESHX_MODEL_OP_2(0x80, 0x3D)
154#define MESHX_MODEL_OP_NODE_RESET MESHX_MODEL_OP_2(0x80, 0x49)
155#define MESHX_MODEL_OP_FRIEND_SET MESHX_MODEL_OP_2(0x80, 0x10)
156#define MESHX_MODEL_OP_HEARTBEAT_PUB_SET MESHX_MODEL_OP_2(0x80, 0x39)
157#define MESHX_MODEL_OP_HEARTBEAT_SUB_SET MESHX_MODEL_OP_2(0x80, 0x3B)
158#define MESHX_MODEL_OP_NET_KEY_UPDATE MESHX_MODEL_OP_2(0x80, 0x45)
159#define MESHX_MODEL_OP_NET_KEY_DELETE MESHX_MODEL_OP_2(0x80, 0x41)
160#define MESHX_MODEL_OP_APP_KEY_UPDATE MESHX_MODEL_OP_1(0x01)
161#define MESHX_MODEL_OP_APP_KEY_DELETE MESHX_MODEL_OP_2(0x80, 0x00)
162#define MESHX_MODEL_OP_NODE_IDENTITY_SET MESHX_MODEL_OP_2(0x80, 0x47)
163#define MESHX_MODEL_OP_KEY_REFRESH_PHASE_SET MESHX_MODEL_OP_2(0x80, 0x16)
164#define MESHX_MODEL_OP_MODEL_PUB_VIRTUAL_ADDR_SET MESHX_MODEL_OP_2(0x80, 0x1A)
165#define MESHX_MODEL_OP_MODEL_SUB_DELETE_ALL MESHX_MODEL_OP_2(0x80, 0x1D)
166#define MESHX_MODEL_OP_MODEL_APP_UNBIND MESHX_MODEL_OP_2(0x80, 0x3F)
167#define MESHX_MODEL_OP_NETWORK_TRANSMIT_SET MESHX_MODEL_OP_2(0x80, 0x24)
168
169#define MESHX_MODEL_OP_BEACON_STATUS MESHX_MODEL_OP_2(0x80, 0x0B)
170#define MESHX_MODEL_OP_COMPOSITION_DATA_STATUS MESHX_MODEL_OP_1(0x02)
171#define MESHX_MODEL_OP_DEFAULT_TTL_STATUS MESHX_MODEL_OP_2(0x80, 0x0E)
172#define MESHX_MODEL_OP_GATT_PROXY_STATUS MESHX_MODEL_OP_2(0x80, 0x14)
173#define MESHX_MODEL_OP_RELAY_STATUS MESHX_MODEL_OP_2(0x80, 0x28)
174#define MESHX_MODEL_OP_MODEL_PUB_STATUS MESHX_MODEL_OP_2(0x80, 0x19)
175#define MESHX_MODEL_OP_MODEL_SUB_STATUS MESHX_MODEL_OP_2(0x80, 0x1F)
176#define MESHX_MODEL_OP_SIG_MODEL_SUB_LIST MESHX_MODEL_OP_2(0x80, 0x2A)
177#define MESHX_MODEL_OP_VENDOR_MODEL_SUB_LIST MESHX_MODEL_OP_2(0x80, 0x2C)
178#define MESHX_MODEL_OP_NET_KEY_STATUS MESHX_MODEL_OP_2(0x80, 0x44)
179#define MESHX_MODEL_OP_NET_KEY_LIST MESHX_MODEL_OP_2(0x80, 0x43)
180#define MESHX_MODEL_OP_APP_KEY_STATUS MESHX_MODEL_OP_2(0x80, 0x03)
181#define MESHX_MODEL_OP_APP_KEY_LIST MESHX_MODEL_OP_2(0x80, 0x02)
182#define MESHX_MODEL_OP_NODE_IDENTITY_STATUS MESHX_MODEL_OP_2(0x80, 0x48)
183#define MESHX_MODEL_OP_MODEL_APP_STATUS MESHX_MODEL_OP_2(0x80, 0x3E)
184#define MESHX_MODEL_OP_SIG_MODEL_APP_LIST MESHX_MODEL_OP_2(0x80, 0x4C)
185#define MESHX_MODEL_OP_VENDOR_MODEL_APP_LIST MESHX_MODEL_OP_2(0x80, 0x4E)
186#define MESHX_MODEL_OP_NODE_RESET_STATUS MESHX_MODEL_OP_2(0x80, 0x4A)
187#define MESHX_MODEL_OP_FRIEND_STATUS MESHX_MODEL_OP_2(0x80, 0x11)
188#define MESHX_MODEL_OP_KEY_REFRESH_PHASE_STATUS MESHX_MODEL_OP_2(0x80, 0x17)
189#define MESHX_MODEL_OP_HEARTBEAT_PUB_STATUS MESHX_MODEL_OP_1(0x06)
190#define MESHX_MODEL_OP_HEARTBEAT_SUB_STATUS MESHX_MODEL_OP_2(0x80, 0x3C)
191#define MESHX_MODEL_OP_LPN_POLLTIMEOUT_STATUS MESHX_MODEL_OP_2(0x80, 0x2E)
192#define MESHX_MODEL_OP_NETWORK_TRANSMIT_STATUS MESHX_MODEL_OP_2(0x80, 0x25)
193
194#define MESHX_CFG_STATUS_SUCCESS 0x00
195#define MESHX_CFG_STATUS_INVALID_ADDRESS 0x01
196#define MESHX_CFG_STATUS_INVALID_MODEL 0x02
197#define MESHX_CFG_STATUS_INVALID_APPKEY 0x03
198#define MESHX_CFG_STATUS_INVALID_NETKEY 0x04
199#define MESHX_CFG_STATUS_INSUFFICIENT_RESOURCES 0x05
200#define MESHX_CFG_STATUS_KEY_INDEX_ALREADY_STORED 0x06
201#define MESHX_CFG_STATUS_INVALID_PUBLISH_PARAMETERS 0x07
202#define MESHX_CFG_STATUS_NOT_A_SUBSCRIBE_MODEL 0x08
203#define MESHX_CFG_STATUS_STORAGE_FAILURE 0x09
204#define MESHX_CFG_STATUS_FEATURE_NOT_SUPPORTED 0x0A
205#define MESHX_CFG_STATUS_CANNOT_UPDATE 0x0B
206#define MESHX_CFG_STATUS_CANNOT_REMOVE 0x0C
207#define MESHX_CFG_STATUS_CANNOT_BIND 0x0D
208#define MESHX_CFG_STATUS_TEMP_UNABLE_TO_CHANGE_STATE 0x0E
209#define MESHX_CFG_STATUS_CANNOT_SET 0x0F
210#define MESHX_CFG_STATUS_UNSPECIFIED_ERROR 0x10
211#define MESHX_CFG_STATUS_INVALID_BINDING 0x11
212#define MESHX_CFG_STATUS_INVALID_PATH_ENTRY 0x12
213#define MESHX_CFG_STATUS_CANNOT_GET 0x13
214#define MESHX_CFG_STATUS_OBSOLETE_INFO 0x14
215#define MESHX_CFG_STATUS_INVALID_BEARER 0x15
216
217#define MESHX_MODEL_OP_HEALTH_FAULT_GET MESHX_MODEL_OP_2(0x80, 0x31)
218#define MESHX_MODEL_OP_HEALTH_PERIOD_GET MESHX_MODEL_OP_2(0x80, 0x34)
219#define MESHX_MODEL_OP_ATTENTION_GET MESHX_MODEL_OP_2(0x80, 0x04)
220
221#define MESHX_MODEL_OP_HEALTH_FAULT_CLEAR MESHX_MODEL_OP_2(0x80, 0x2F)
222#define MESHX_MODEL_OP_HEALTH_FAULT_CLEAR_UNACK MESHX_MODEL_OP_2(0x80, 0x30)
223#define MESHX_MODEL_OP_HEALTH_FAULT_TEST MESHX_MODEL_OP_2(0x80, 0x32)
224#define MESHX_MODEL_OP_HEALTH_FAULT_TEST_UNACK MESHX_MODEL_OP_2(0x80, 0x33)
225#define MESHX_MODEL_OP_HEALTH_PERIOD_SET MESHX_MODEL_OP_2(0x80, 0x35)
226#define MESHX_MODEL_OP_HEALTH_PERIOD_SET_UNACK MESHX_MODEL_OP_2(0x80, 0x36)
227#define MESHX_MODEL_OP_ATTENTION_SET MESHX_MODEL_OP_2(0x80, 0x05)
228#define MESHX_MODEL_OP_ATTENTION_SET_UNACK MESHX_MODEL_OP_2(0x80, 0x06)
229
230#define MESHX_MODEL_OP_HEALTH_CURRENT_STATUS MESHX_MODEL_OP_1(0x04)
231#define MESHX_MODEL_OP_HEALTH_FAULT_STATUS MESHX_MODEL_OP_1(0x05)
232#define MESHX_MODEL_OP_HEALTH_PERIOD_STATUS MESHX_MODEL_OP_2(0x80, 0x37)
233#define MESHX_MODEL_OP_ATTENTION_STATUS MESHX_MODEL_OP_2(0x80, 0x07)
234
236#define MESHX_MODEL_OP_GEN_ONOFF_GET MESHX_MODEL_OP_2(0x82, 0x01)
237#define MESHX_MODEL_OP_GEN_ONOFF_SET MESHX_MODEL_OP_2(0x82, 0x02)
238#define MESHX_MODEL_OP_GEN_ONOFF_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x03)
239#define MESHX_MODEL_OP_GEN_ONOFF_STATUS MESHX_MODEL_OP_2(0x82, 0x04)
240
242#define MESHX_MODEL_OP_GEN_LEVEL_GET MESHX_MODEL_OP_2(0x82, 0x05)
243#define MESHX_MODEL_OP_GEN_LEVEL_SET MESHX_MODEL_OP_2(0x82, 0x06)
244#define MESHX_MODEL_OP_GEN_LEVEL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x07)
245#define MESHX_MODEL_OP_GEN_LEVEL_STATUS MESHX_MODEL_OP_2(0x82, 0x08)
246#define MESHX_MODEL_OP_GEN_DELTA_SET MESHX_MODEL_OP_2(0x82, 0x09)
247#define MESHX_MODEL_OP_GEN_DELTA_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x0A)
248#define MESHX_MODEL_OP_GEN_MOVE_SET MESHX_MODEL_OP_2(0x82, 0x0B)
249#define MESHX_MODEL_OP_GEN_MOVE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x0C)
250
252#define MESHX_MODEL_OP_GEN_DEF_TRANS_TIME_GET MESHX_MODEL_OP_2(0x82, 0x0D)
253#define MESHX_MODEL_OP_GEN_DEF_TRANS_TIME_SET MESHX_MODEL_OP_2(0x82, 0x0E)
254#define MESHX_MODEL_OP_GEN_DEF_TRANS_TIME_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x0F)
255#define MESHX_MODEL_OP_GEN_DEF_TRANS_TIME_STATUS MESHX_MODEL_OP_2(0x82, 0x10)
256
258#define MESHX_MODEL_OP_GEN_ONPOWERUP_GET MESHX_MODEL_OP_2(0x82, 0x11)
259#define MESHX_MODEL_OP_GEN_ONPOWERUP_STATUS MESHX_MODEL_OP_2(0x82, 0x12)
260
262#define MESHX_MODEL_OP_GEN_ONPOWERUP_SET MESHX_MODEL_OP_2(0x82, 0x13)
263#define MESHX_MODEL_OP_GEN_ONPOWERUP_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x14)
264
266#define MESHX_MODEL_OP_GEN_POWER_LEVEL_GET MESHX_MODEL_OP_2(0x82, 0x15)
267#define MESHX_MODEL_OP_GEN_POWER_LEVEL_SET MESHX_MODEL_OP_2(0x82, 0x16)
268#define MESHX_MODEL_OP_GEN_POWER_LEVEL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x17)
269#define MESHX_MODEL_OP_GEN_POWER_LEVEL_STATUS MESHX_MODEL_OP_2(0x82, 0x18)
270#define MESHX_MODEL_OP_GEN_POWER_LAST_GET MESHX_MODEL_OP_2(0x82, 0x19)
271#define MESHX_MODEL_OP_GEN_POWER_LAST_STATUS MESHX_MODEL_OP_2(0x82, 0x1A)
272#define MESHX_MODEL_OP_GEN_POWER_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x1B)
273#define MESHX_MODEL_OP_GEN_POWER_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x1C)
274#define MESHX_MODEL_OP_GEN_POWER_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x1D)
275#define MESHX_MODEL_OP_GEN_POWER_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x1E)
276
278#define MESHX_MODEL_OP_GEN_POWER_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x1F)
279#define MESHX_MODEL_OP_GEN_POWER_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x20)
280#define MESHX_MODEL_OP_GEN_POWER_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x21)
281#define MESHX_MODEL_OP_GEN_POWER_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x22)
282
284#define MESHX_MODEL_OP_GEN_BATTERY_GET MESHX_MODEL_OP_2(0x82, 0x23)
285#define MESHX_MODEL_OP_GEN_BATTERY_STATUS MESHX_MODEL_OP_2(0x82, 0x24)
286
288#define MESHX_MODEL_OP_GEN_LOC_GLOBAL_GET MESHX_MODEL_OP_2(0x82, 0x25)
289#define MESHX_MODEL_OP_GEN_LOC_GLOBAL_STATUS MESHX_MODEL_OP_1(0x40)
290#define MESHX_MODEL_OP_GEN_LOC_LOCAL_GET MESHX_MODEL_OP_2(0x82, 0x26)
291#define MESHX_MODEL_OP_GEN_LOC_LOCAL_STATUS MESHX_MODEL_OP_2(0x82, 0x27)
292
294#define MESHX_MODEL_OP_GEN_LOC_GLOBAL_SET MESHX_MODEL_OP_1(0x41)
295#define MESHX_MODEL_OP_GEN_LOC_GLOBAL_SET_UNACK MESHX_MODEL_OP_1(0x42)
296#define MESHX_MODEL_OP_GEN_LOC_LOCAL_SET MESHX_MODEL_OP_2(0x82, 0x28)
297#define MESHX_MODEL_OP_GEN_LOC_LOCAL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x29)
298
300#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTIES_GET MESHX_MODEL_OP_2(0x82, 0x2A)
301#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTIES_STATUS MESHX_MODEL_OP_1(0x43)
302#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTY_GET MESHX_MODEL_OP_2(0x82, 0x2B)
303#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTY_SET MESHX_MODEL_OP_1(0x44)
304#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTY_SET_UNACK MESHX_MODEL_OP_1(0x45)
305#define MESHX_MODEL_OP_GEN_MANUFACTURER_PROPERTY_STATUS MESHX_MODEL_OP_1(0x46)
306
308#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTIES_GET MESHX_MODEL_OP_2(0x82, 0x2C)
309#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTIES_STATUS MESHX_MODEL_OP_1(0x47)
310#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTY_GET MESHX_MODEL_OP_2(0x82, 0x2D)
311#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTY_SET MESHX_MODEL_OP_1(0x48)
312#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTY_SET_UNACK MESHX_MODEL_OP_1(0x49)
313#define MESHX_MODEL_OP_GEN_ADMIN_PROPERTY_STATUS MESHX_MODEL_OP_1(0x4A)
314
316#define MESHX_MODEL_OP_GEN_USER_PROPERTIES_GET MESHX_MODEL_OP_2(0x82, 0x2E)
317#define MESHX_MODEL_OP_GEN_USER_PROPERTIES_STATUS MESHX_MODEL_OP_1(0x4B)
318#define MESHX_MODEL_OP_GEN_USER_PROPERTY_GET MESHX_MODEL_OP_2(0x82, 0x2F)
319#define MESHX_MODEL_OP_GEN_USER_PROPERTY_SET MESHX_MODEL_OP_1(0x4C)
320#define MESHX_MODEL_OP_GEN_USER_PROPERTY_SET_UNACK MESHX_MODEL_OP_1(0x4D)
321#define MESHX_MODEL_OP_GEN_USER_PROPERTY_STATUS MESHX_MODEL_OP_1(0x4E)
322
324#define MESHX_MODEL_OP_GEN_CLIENT_PROPERTIES_GET MESHX_MODEL_OP_1(0x4F)
325#define MESHX_MODEL_OP_GEN_CLIENT_PROPERTIES_STATUS MESHX_MODEL_OP_1(0x50)
326
328#define MESHX_MODEL_OP_SENSOR_DESCRIPTOR_GET MESHX_MODEL_OP_2(0x82, 0x30)
329#define MESHX_MODEL_OP_SENSOR_DESCRIPTOR_STATUS MESHX_MODEL_OP_1(0x51)
330#define MESHX_MODEL_OP_SENSOR_GET MESHX_MODEL_OP_2(0x82, 0x31)
331#define MESHX_MODEL_OP_SENSOR_STATUS MESHX_MODEL_OP_1(0x52)
332#define MESHX_MODEL_OP_SENSOR_COLUMN_GET MESHX_MODEL_OP_2(0x82, 0x32)
333#define MESHX_MODEL_OP_SENSOR_COLUMN_STATUS MESHX_MODEL_OP_1(0x53)
334#define MESHX_MODEL_OP_SENSOR_SERIES_GET MESHX_MODEL_OP_2(0x82, 0x33)
335#define MESHX_MODEL_OP_SENSOR_SERIES_STATUS MESHX_MODEL_OP_1(0x54)
336
338#define MESHX_MODEL_OP_SENSOR_CADENCE_GET MESHX_MODEL_OP_2(0x82, 0x34)
339#define MESHX_MODEL_OP_SENSOR_CADENCE_SET MESHX_MODEL_OP_1(0x55)
340#define MESHX_MODEL_OP_SENSOR_CADENCE_SET_UNACK MESHX_MODEL_OP_1(0x56)
341#define MESHX_MODEL_OP_SENSOR_CADENCE_STATUS MESHX_MODEL_OP_1(0x57)
342#define MESHX_MODEL_OP_SENSOR_SETTINGS_GET MESHX_MODEL_OP_2(0x82, 0x35)
343#define MESHX_MODEL_OP_SENSOR_SETTINGS_STATUS MESHX_MODEL_OP_1(0x58)
344#define MESHX_MODEL_OP_SENSOR_SETTING_GET MESHX_MODEL_OP_2(0x82, 0x36)
345#define MESHX_MODEL_OP_SENSOR_SETTING_SET MESHX_MODEL_OP_1(0x59)
346#define MESHX_MODEL_OP_SENSOR_SETTING_SET_UNACK MESHX_MODEL_OP_1(0x5A)
347#define MESHX_MODEL_OP_SENSOR_SETTING_STATUS MESHX_MODEL_OP_1(0x5B)
348
350#define MESHX_MODEL_OP_TIME_GET MESHX_MODEL_OP_2(0x82, 0x37)
351#define MESHX_MODEL_OP_TIME_SET MESHX_MODEL_OP_1(0x5C)
352#define MESHX_MODEL_OP_TIME_STATUS MESHX_MODEL_OP_1(0x5D)
353#define MESHX_MODEL_OP_TIME_ROLE_GET MESHX_MODEL_OP_2(0x82, 0x38)
354#define MESHX_MODEL_OP_TIME_ROLE_SET MESHX_MODEL_OP_2(0x82, 0x39)
355#define MESHX_MODEL_OP_TIME_ROLE_STATUS MESHX_MODEL_OP_2(0x82, 0x3A)
356#define MESHX_MODEL_OP_TIME_ZONE_GET MESHX_MODEL_OP_2(0x82, 0x3B)
357#define MESHX_MODEL_OP_TIME_ZONE_SET MESHX_MODEL_OP_2(0x82, 0x3C)
358#define MESHX_MODEL_OP_TIME_ZONE_STATUS MESHX_MODEL_OP_2(0x82, 0x3D)
359#define MESHX_MODEL_OP_TAI_UTC_DELTA_GET MESHX_MODEL_OP_2(0x82, 0x3E)
360#define MESHX_MODEL_OP_TAI_UTC_DELTA_SET MESHX_MODEL_OP_2(0x82, 0x3F)
361#define MESHX_MODEL_OP_TAI_UTC_DELTA_STATUS MESHX_MODEL_OP_2(0x82, 0x40)
362
364#define MESHX_MODEL_OP_SCENE_GET MESHX_MODEL_OP_2(0x82, 0x41)
365#define MESHX_MODEL_OP_SCENE_RECALL MESHX_MODEL_OP_2(0x82, 0x42)
366#define MESHX_MODEL_OP_SCENE_RECALL_UNACK MESHX_MODEL_OP_2(0x82, 0x43)
367#define MESHX_MODEL_OP_SCENE_STATUS MESHX_MODEL_OP_1(0x5E)
368#define MESHX_MODEL_OP_SCENE_REGISTER_GET MESHX_MODEL_OP_2(0x82, 0x44)
369#define MESHX_MODEL_OP_SCENE_REGISTER_STATUS MESHX_MODEL_OP_2(0x82, 0x45)
370
372#define MESHX_MODEL_OP_SCENE_STORE MESHX_MODEL_OP_2(0x82, 0x46)
373#define MESHX_MODEL_OP_SCENE_STORE_UNACK MESHX_MODEL_OP_2(0x82, 0x47)
374#define MESHX_MODEL_OP_SCENE_DELETE MESHX_MODEL_OP_2(0x82, 0x9E)
375#define MESHX_MODEL_OP_SCENE_DELETE_UNACK MESHX_MODEL_OP_2(0x82, 0x9F)
376
378#define MESHX_MODEL_OP_SCHEDULER_ACT_GET MESHX_MODEL_OP_2(0x82, 0x48)
379#define MESHX_MODEL_OP_SCHEDULER_ACT_STATUS MESHX_MODEL_OP_1(0x5F)
380#define MESHX_MODEL_OP_SCHEDULER_GET MESHX_MODEL_OP_2(0x82, 0x49)
381#define MESHX_MODEL_OP_SCHEDULER_STATUS MESHX_MODEL_OP_2(0x82, 0x4A)
382
384#define MESHX_MODEL_OP_SCHEDULER_ACT_SET MESHX_MODEL_OP_1(0x60)
385#define MESHX_MODEL_OP_SCHEDULER_ACT_SET_UNACK MESHX_MODEL_OP_1(0x61)
386
388#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_GET MESHX_MODEL_OP_2(0x82, 0x4B)
389#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_SET MESHX_MODEL_OP_2(0x82, 0x4C)
390#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x4D)
391#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_STATUS MESHX_MODEL_OP_2(0x82, 0x4E)
392#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LINEAR_GET MESHX_MODEL_OP_2(0x82, 0x4F)
393#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LINEAR_SET MESHX_MODEL_OP_2(0x82, 0x50)
394#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LINEAR_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x51)
395#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LINEAR_STATUS MESHX_MODEL_OP_2(0x82, 0x52)
396#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LAST_GET MESHX_MODEL_OP_2(0x82, 0x53)
397#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_LAST_STATUS MESHX_MODEL_OP_2(0x82, 0x54)
398#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x55)
399#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x56)
400#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x57)
401#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x58)
402
404#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x59)
405#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x5A)
406#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x5B)
407#define MESHX_MODEL_OP_LIGHT_LIGHTNESS_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x5C)
408
410#define MESHX_MODEL_OP_LIGHT_CTL_GET MESHX_MODEL_OP_2(0x82, 0x5D)
411#define MESHX_MODEL_OP_LIGHT_CTL_SET MESHX_MODEL_OP_2(0x82, 0x5E)
412#define MESHX_MODEL_OP_LIGHT_CTL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x5F)
413#define MESHX_MODEL_OP_LIGHT_CTL_STATUS MESHX_MODEL_OP_2(0x82, 0x60)
414#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_GET MESHX_MODEL_OP_2(0x82, 0x61)
415#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x62)
416#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x63)
417#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_SET MESHX_MODEL_OP_2(0x82, 0x64)
418#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x65)
419#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_STATUS MESHX_MODEL_OP_2(0x82, 0x66)
420#define MESHX_MODEL_OP_LIGHT_CTL_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x67)
421#define MESHX_MODEL_OP_LIGHT_CTL_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x68)
422
424#define MESHX_MODEL_OP_LIGHT_CTL_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x69)
425#define MESHX_MODEL_OP_LIGHT_CTL_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x6A)
426#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x6B)
427#define MESHX_MODEL_OP_LIGHT_CTL_TEMPERATURE_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x6C)
428
430#define MESHX_MODEL_OP_LIGHT_HSL_GET MESHX_MODEL_OP_2(0x82, 0x6D)
431#define MESHX_MODEL_OP_LIGHT_HSL_HUE_GET MESHX_MODEL_OP_2(0x82, 0x6E)
432#define MESHX_MODEL_OP_LIGHT_HSL_HUE_SET MESHX_MODEL_OP_2(0x82, 0x6F)
433#define MESHX_MODEL_OP_LIGHT_HSL_HUE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x70)
434#define MESHX_MODEL_OP_LIGHT_HSL_HUE_STATUS MESHX_MODEL_OP_2(0x82, 0x71)
435#define MESHX_MODEL_OP_LIGHT_HSL_SATURATION_GET MESHX_MODEL_OP_2(0x82, 0x72)
436#define MESHX_MODEL_OP_LIGHT_HSL_SATURATION_SET MESHX_MODEL_OP_2(0x82, 0x73)
437#define MESHX_MODEL_OP_LIGHT_HSL_SATURATION_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x74)
438#define MESHX_MODEL_OP_LIGHT_HSL_SATURATION_STATUS MESHX_MODEL_OP_2(0x82, 0x75)
439#define MESHX_MODEL_OP_LIGHT_HSL_SET MESHX_MODEL_OP_2(0x82, 0x76)
440#define MESHX_MODEL_OP_LIGHT_HSL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x77)
441#define MESHX_MODEL_OP_LIGHT_HSL_STATUS MESHX_MODEL_OP_2(0x82, 0x78)
442#define MESHX_MODEL_OP_LIGHT_HSL_TARGET_GET MESHX_MODEL_OP_2(0x82, 0x79)
443#define MESHX_MODEL_OP_LIGHT_HSL_TARGET_STATUS MESHX_MODEL_OP_2(0x82, 0x7A)
444#define MESHX_MODEL_OP_LIGHT_HSL_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x7B)
445#define MESHX_MODEL_OP_LIGHT_HSL_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x7C)
446#define MESHX_MODEL_OP_LIGHT_HSL_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x7D)
447#define MESHX_MODEL_OP_LIGHT_HSL_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x7E)
448
450#define MESHX_MODEL_OP_LIGHT_HSL_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x7F)
451#define MESHX_MODEL_OP_LIGHT_HSL_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x80)
452#define MESHX_MODEL_OP_LIGHT_HSL_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x81)
453#define MESHX_MODEL_OP_LIGHT_HSL_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x82)
454
456#define MESHX_MODEL_OP_LIGHT_XYL_GET MESHX_MODEL_OP_2(0x82, 0x83)
457#define MESHX_MODEL_OP_LIGHT_XYL_SET MESHX_MODEL_OP_2(0x82, 0x84)
458#define MESHX_MODEL_OP_LIGHT_XYL_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x85)
459#define MESHX_MODEL_OP_LIGHT_XYL_STATUS MESHX_MODEL_OP_2(0x82, 0x86)
460#define MESHX_MODEL_OP_LIGHT_XYL_TARGET_GET MESHX_MODEL_OP_2(0x82, 0x87)
461#define MESHX_MODEL_OP_LIGHT_XYL_TARGET_STATUS MESHX_MODEL_OP_2(0x82, 0x88)
462#define MESHX_MODEL_OP_LIGHT_XYL_DEFAULT_GET MESHX_MODEL_OP_2(0x82, 0x89)
463#define MESHX_MODEL_OP_LIGHT_XYL_DEFAULT_STATUS MESHX_MODEL_OP_2(0x82, 0x8A)
464#define MESHX_MODEL_OP_LIGHT_XYL_RANGE_GET MESHX_MODEL_OP_2(0x82, 0x8B)
465#define MESHX_MODEL_OP_LIGHT_XYL_RANGE_STATUS MESHX_MODEL_OP_2(0x82, 0x8C)
466
468#define MESHX_MODEL_OP_LIGHT_XYL_DEFAULT_SET MESHX_MODEL_OP_2(0x82, 0x8D)
469#define MESHX_MODEL_OP_LIGHT_XYL_DEFAULT_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x8E)
470#define MESHX_MODEL_OP_LIGHT_XYL_RANGE_SET MESHX_MODEL_OP_2(0x82, 0x8F)
471#define MESHX_MODEL_OP_LIGHT_XYL_RANGE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x90)
472
474#define MESHX_MODEL_OP_LIGHT_LC_MODE_GET MESHX_MODEL_OP_2(0x82, 0x91)
475#define MESHX_MODEL_OP_LIGHT_LC_MODE_SET MESHX_MODEL_OP_2(0x82, 0x92)
476#define MESHX_MODEL_OP_LIGHT_LC_MODE_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x93)
477#define MESHX_MODEL_OP_LIGHT_LC_MODE_STATUS MESHX_MODEL_OP_2(0x82, 0x94)
478#define MESHX_MODEL_OP_LIGHT_LC_OM_GET MESHX_MODEL_OP_2(0x82, 0x95)
479#define MESHX_MODEL_OP_LIGHT_LC_OM_SET MESHX_MODEL_OP_2(0x82, 0x96)
480#define MESHX_MODEL_OP_LIGHT_LC_OM_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x97)
481#define MESHX_MODEL_OP_LIGHT_LC_OM_STATUS MESHX_MODEL_OP_2(0x82, 0x98)
482#define MESHX_MODEL_OP_LIGHT_LC_LIGHT_ONOFF_GET MESHX_MODEL_OP_2(0x82, 0x99)
483#define MESHX_MODEL_OP_LIGHT_LC_LIGHT_ONOFF_SET MESHX_MODEL_OP_2(0x82, 0x9A)
484#define MESHX_MODEL_OP_LIGHT_LC_LIGHT_ONOFF_SET_UNACK MESHX_MODEL_OP_2(0x82, 0x9B)
485#define MESHX_MODEL_OP_LIGHT_LC_LIGHT_ONOFF_STATUS MESHX_MODEL_OP_2(0x82, 0x9C)
486#define MESHX_MODEL_OP_LIGHT_LC_PROPERTY_GET MESHX_MODEL_OP_2(0x82, 0x9D)
487#define MESHX_MODEL_OP_LIGHT_LC_PROPERTY_SET MESHX_MODEL_OP_1(0x62)
488#define MESHX_MODEL_OP_LIGHT_LC_PROPERTY_SET_UNACK MESHX_MODEL_OP_1(0x63)
489#define MESHX_MODEL_OP_LIGHT_LC_PROPERTY_STATUS MESHX_MODEL_OP_1(0x64)
490
491#define MESHX_SETTINGS_UID_SIZE 20
492
494typedef enum {
592
603
611
621
630
631typedef void* meshx_ptr_t;
632typedef const void* meshx_cptr_t;
633typedef unsigned char meshx_addr_type_t;
634
635#ifndef MESHX_BD_ADDR_LEN
636#define MESHX_BD_ADDR_LEN 6
637#endif
638
639#ifndef MESHX_UUID_ADDR_LEN
640#define MESHX_UUID_ADDR_LEN 16
641#endif
642
645
646#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_ENTER_NUMBER
@ MESHX_ENTER_STRING
void * meshx_ptr_t
@ MESHX_TYPE_PROV_CB
@ MESHX_TYPE_LINK_CLOSE_CB
@ MESHX_TYPE_OUTPUT_STR_CB
@ MESHX_TYPE_OUTPUT_NUM_CB
@ MESHX_TYPE_COMPLETE_CB
@ MESHX_TYPE_RESET_CB
@ MESHX_TYPE_INTPUT_CB
@ MESHX_TYPE_LINK_OPEN_CB
const void * meshx_cptr_t
@ MESHX_NODE_PROXY_GATT_ENABLE_COMP_EVT
@ MESHX_MODEL_SUBSCRIBE_GROUP_ADDR_COMP_EVT
@ MESHX_NODE_PROV_DISABLE_COMP_EVT
@ MESHX_SET_FAST_PROV_INFO_COMP_EVT
@ MESHX_PROVISIONER_DELETE_NODE_WITH_UUID_COMP_EVT
@ MESHX_PROXY_CLIENT_CONNECTED_EVT
@ MESHX_PROVISIONER_DELETE_SETTINGS_WITH_INDEX_COMP_EVT
@ MESHX_PROVISIONER_PROV_READ_OOB_PUB_KEY_COMP_EVT
@ MESHX_PROVISIONER_PROV_ENABLE_COMP_EVT
@ MESHX_PROXY_CLIENT_SEND_SOLIC_PDU_COMP_EVT
@ MESHX_PROVISIONER_SET_NODE_NAME_COMP_EVT
@ MESHX_PROVISIONER_SEND_PROV_INVITE_EVT
@ MESHX_NODE_PROV_COMPLETE_EVT
@ MESHX_PROVISIONER_DIRECT_ERASE_SETTINGS_COMP_EVT
@ MESHX_PROVISIONER_CLOSE_SETTINGS_WITH_INDEX_COMP_EVT
@ MESHX_PROXY_CLIENT_SET_FILTER_TYPE_COMP_EVT
@ MESHX_PROVISIONER_PROV_LINK_CLOSE_EVT
@ MESHX_NODE_PROV_OOB_PUB_KEY_EVT
@ MESHX_PROXY_CLIENT_ADD_FILTER_ADDR_COMP_EVT
@ MESHX_PROVISIONER_SEND_PROV_RECORDS_GET_EVT
@ MESHX_NODE_PROV_OUTPUT_NUMBER_EVT
@ MESHX_PROXY_CLIENT_CONNECT_COMP_EVT
@ MESHX_NODE_PROV_INPUT_STRING_COMP_EVT
@ MESHX_PROVISIONER_PROV_INPUT_STRING_COMP_EVT
@ MESHX_PROVISIONER_SET_HEARTBEAT_FILTER_INFO_COMP_EVT
@ MESHX_PROV_EVT_MAX
@ MESHX_NODE_ADD_LOCAL_NET_KEY_COMP_EVT
@ MESHX_LPN_FRIENDSHIP_ESTABLISH_EVT
@ MESHX_PROVISIONER_PROV_COMPLETE_EVT
@ MESHX_PROVISIONER_SET_PRIMARY_ELEM_ADDR_COMP_EVT
@ MESHX_PROVISIONER_SET_DEV_UUID_MATCH_COMP_EVT
@ MESHX_PROVISIONER_OPEN_SETTINGS_WITH_INDEX_COMP_EVT
@ MESHX_PROXY_CLIENT_DISCONNECTED_EVT
@ MESHX_PROVISIONER_ADD_LOCAL_NET_KEY_COMP_EVT
@ MESHX_PROVISIONER_PROV_READ_OOB_PUB_KEY_EVT
@ MESHX_PROXY_SERVER_CONNECTED_EVT
@ MESHX_NODE_BIND_APP_KEY_TO_MODEL_COMP_EVT
@ MESHX_PROVISIONER_PROV_DISABLE_COMP_EVT
@ MESHX_LPN_POLL_COMP_EVT
@ MESHX_PROXY_CLIENT_RECV_ADV_PKT_EVT
@ MESHX_LPN_DISABLE_COMP_EVT
@ MESHX_NODE_PRIVATE_PROXY_IDENTITY_ENABLE_COMP_EVT
@ MESHX_NODE_PRIVATE_PROXY_IDENTITY_DISABLE_COMP_EVT
@ MESHX_SET_FAST_PROV_ACTION_COMP_EVT
@ MESHX_PROVISIONER_DELETE_DEV_COMP_EVT
@ MESHX_NODE_SET_UNPROV_DEV_NAME_COMP_EVT
@ MESHX_PROVISIONER_STORE_NODE_COMP_DATA_COMP_EVT
@ MESHX_PROVISIONER_ENABLE_HEARTBEAT_RECV_COMP_EVT
@ MESHX_NODE_PROV_RESET_EVT
@ MESHX_PROVISIONER_BIND_APP_KEY_TO_MODEL_COMP_EVT
@ MESHX_PROVISIONER_PROV_INPUT_EVT
@ MESHX_LPN_FRIENDSHIP_TERMINATE_EVT
@ MESHX_PROXY_CLIENT_RECV_FILTER_STATUS_EVT
@ MESHX_PROVISIONER_RECV_HEARTBEAT_MESSAGE_EVT
@ MESHX_PROV_REGISTER_COMP_EVT
@ MESHX_PROVISIONER_PROV_DEV_WITH_ADDR_COMP_EVT
@ MESHX_PROVISIONER_PROV_OUTPUT_EVT
@ MESHX_PROVISIONER_SEND_PROV_RECORD_REQUEST_EVT
@ MESHX_NODE_ADD_LOCAL_APP_KEY_COMP_EVT
@ MESHX_PROXY_SERVER_DISCONNECTED_EVT
@ MESHX_PROVISIONER_DELETE_SETTINGS_WITH_UID_COMP_EVT
@ MESHX_PROVISIONER_UPDATE_LOCAL_APP_KEY_COMP_EVT
@ MESHX_NODE_PROV_SET_OOB_PUB_KEY_COMP_EVT
@ MESHX_FRIEND_FRIENDSHIP_TERMINATE_EVT
@ MESHX_PROVISIONER_ADD_UNPROV_DEV_COMP_EVT
@ MESHX_NODE_PROV_LINK_OPEN_EVT
@ MESHX_PROVISIONER_PROV_RECORD_RECV_COMP_EVT
@ MESHX_NODE_PROV_INPUT_NUMBER_COMP_EVT
@ MESHX_PROVISIONER_PROV_INPUT_NUMBER_COMP_EVT
@ MESHX_HEARTBEAT_MESSAGE_RECV_EVT
@ MESHX_PROVISIONER_SET_STATIC_OOB_VALUE_COMP_EVT
@ MESHX_PROVISIONER_CERT_BASED_PROV_START_EVT
@ MESHX_NODE_PROXY_GATT_DISABLE_COMP_EVT
@ MESHX_PROVISIONER_CLOSE_SETTINGS_WITH_UID_COMP_EVT
@ MESHX_PROVISIONER_OPEN_SETTINGS_WITH_UID_COMP_EVT
@ MESHX_NODE_PROV_INPUT_EVT
@ MESHX_PROVISIONER_DELETE_NODE_WITH_ADDR_COMP_EVT
@ MESHX_NODE_PROV_LINK_CLOSE_EVT
@ MESHX_PROVISIONER_ADD_LOCAL_APP_KEY_COMP_EVT
@ MESHX_PROVISIONER_PROV_LINK_OPEN_EVT
@ MESHX_FRIEND_FRIENDSHIP_ESTABLISH_EVT
@ MESHX_PROXY_CLIENT_DISCONNECT_COMP_EVT
@ MESHX_PROXY_CLIENT_REMOVE_FILTER_ADDR_COMP_EVT
@ MESHX_PROVISIONER_SET_HEARTBEAT_FILTER_TYPE_COMP_EVT
@ MESHX_NODE_PROXY_IDENTITY_ENABLE_COMP_EVT
@ MESHX_PROVISIONER_UPDATE_LOCAL_NET_KEY_COMP_EVT
@ MESHX_PROVISIONER_SET_PROV_DATA_INFO_COMP_EVT
@ MESHX_DEINIT_MESH_COMP_EVT
@ MESHX_NODE_PROV_ENABLE_COMP_EVT
@ MESHX_PROXY_CLIENT_DIRECTED_PROXY_SET_COMP_EVT
@ MESHX_PROVISIONER_RECV_PROV_RECORDS_LIST_EVT
@ MESHX_PROVISIONER_SEND_LINK_CLOSE_EVT
@ MESHX_NODE_PROV_OUTPUT_STRING_EVT
@ MESHX_LPN_ENABLE_COMP_EVT
@ MESHX_PROVISIONER_RECV_UNPROV_ADV_PKT_EVT
@ MESHX_MODEL_UNSUBSCRIBE_GROUP_ADDR_COMP_EVT
unsigned char meshx_addr_type_t
uint8_t meshx_uuid_addr_t[MESHX_UUID_ADDR_LEN]
@ MESHX_DISPLAY_NUMBER
@ MESHX_DISPLAY_STRING
#define MESHX_UUID_ADDR_LEN
#define MESHX_BIT(nr)
#define MESHX_BD_ADDR_LEN
uint8_t meshx_bd_addr_t[MESHX_BD_ADDR_LEN]