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_gen_srv.h
Go to the documentation of this file.
1/**
2 * Copyright (c) 2024 - 2025 MeshX
3 *
4 * @file meshx_ble_mesh_gen_srv.h
5 * @brief Header file for Generic Server Models in MeshX BLE Mesh.
6 *
7 * This file defines the structures, types, and APIs for implementing
8 * Generic Server Models in the MeshX BLE Mesh stack. It includes
9 * definitions for various state change events, server callbacks, and
10 * functions to create, delete, and manage the state of Generic Server Models.
11 *
12 * @author Pranjal Chanda
13 *
14 */
15
16#ifndef __MESHX_PLAT_GEN_SRV_H__
17#define __MESHX_PLAT_GEN_SRV_H__
18
20#include "meshx_control_task.h"
21
22/** Parameter of Generic OnOff Set state change event */
23typedef struct
24{
25 uint8_t onoff; /*!< The value of Generic OnOff state */
27
28/** Parameter of Generic Level Set state change event */
29typedef struct
30{
31 int16_t level; /*!< The value of Generic Level state */
33
34/** Parameter of Generic Delta Set state change event */
35typedef struct
36{
37 int16_t level; /*!< The value of Generic Level state */
39
40/** Parameter of Generic Move Set state change event */
41typedef struct
42{
43 int16_t level; /*!< The value of Generic Level state */
45
46/** Parameter of Generic Default Transition Time Set state change event */
47typedef struct
48{
49 uint8_t trans_time; /*!< The value of Generic Default Transition Time state */
51
52/** Parameter of Generic OnPowerUp Set state change event */
53typedef struct
54{
55 uint8_t onpowerup; /*!< The value of Generic OnPowerUp state */
57
58/** Parameter of Generic Power Level Set state change event */
59typedef struct
60{
61 uint16_t power; /*!< The value of Generic Power Actual state */
63
64/** Parameter of Generic Power Default Set state change event */
65typedef struct
66{
67 uint16_t power; /*!< The value of Generic Power Default state */
69
70/** Parameters of Generic Power Range Set state change event */
71typedef struct
72{
73 uint16_t range_min; /*!< The minimum value of Generic Power Range state */
74 uint16_t range_max; /*!< The maximum value of Generic Power Range state */
76
77/** Parameters of Generic Location Global Set state change event */
78typedef struct
79{
80 int32_t latitude; /*!< The Global Latitude value of Generic Location state */
81 int32_t longitude; /*!< The Global Longitude value of Generic Location state */
82 int16_t altitude; /*!< The Global Altitude value of Generic Location state */
84
85/** Parameters of Generic Location Local Set state change event */
86typedef struct
87{
88 int16_t north; /*!< The Local North value of Generic Location state */
89 int16_t east; /*!< The Local East value of Generic Location state */
90 int16_t altitude; /*!< The Local Altitude value of Generic Location state */
91 uint8_t floor_number; /*!< The Floor Number value of Generic Location state */
92 uint16_t uncertainty; /*!< The Uncertainty value of Generic Location state */
94
95/** Parameters of Generic User Property Set state change event */
96typedef struct
97{
98 uint16_t id; /*!< The property id of Generic User Property state */
99 void *value; /*!< The property value of Generic User Property state */
101
102/** Parameters of Generic Admin Property Set state change event */
103typedef struct
104{
105 uint16_t id; /*!< The property id of Generic Admin Property state */
106 uint8_t access; /*!< The property access of Generic Admin Property state */
107 void *value; /*!< The property value of Generic Admin Property state */
109
110/** Parameters of Generic Manufacturer Property Set state change event */
111typedef struct
112{
113 uint16_t id; /*!< The property id of Generic Manufacturer Property state */
114 uint8_t access; /*!< The property value of Generic Manufacturer Property state */
116
117typedef union
118{
119 /**
120 * The recv_op in ctx can be used to decide which state is changed.
121 */
126 meshx_state_change_gen_loc_local_set_t loc_local_set; /*!< Generic Location Local Set */
128 meshx_state_change_gen_loc_global_set_t loc_global_set; /*!< Generic Location Global Set */
132 meshx_state_change_gen_manu_property_set_t manu_property_set; /*!< Generic Manufacturer Property Set */
135 meshx_state_change_gen_def_trans_time_set_t def_trans_time_set; /*!< Generic Default Transition Time Set */
137
138/* Context of the received Generic Messages */
140{
141 meshx_ctx_t ctx; /**< Context of the received messages */
142 meshx_model_t model; /**< Pointer to Generic Server Models */
143 meshx_gen_srv_state_change_t state_change; /**< Value of the received Generic Messages */
145
146/* State of the Generic Server Models */
147typedef struct {
148 uint8_t onoff; /*!< The present value of the Generic OnOff state */
149 uint8_t target_onoff; /*!< The target value of the Generic OnOff state */
151
152/* State of the Generic Level Server Model */
153typedef struct {
154 int16_t level; /*!< The present value of the Generic Level state */
155 int16_t target_level; /*!< The target value of the Generic Level state */
156 int16_t last_level; /*!< The last value of the Generic Level state */
157 int32_t last_delta; /*!< The last delta change of the Generic Level state */
158
159 bool move_start; /*!< Indicate if the transition of the Generic Level state has been started */
160 bool positive; /*!< Indicate if the transition is positive or negative */
162
163/* State of the Generic Battery Server Model */
164typedef struct {
165 uint32_t battery_level : 8; /*!< The value of the Generic Battery Level state */
166 uint32_t time_to_discharge : 24; /*!< The value of the Generic Battery Time to Discharge state */
167 uint32_t time_to_charge : 24; /*!< The value of the Generic Battery Time to Charge state */
168 uint32_t battery_flags : 8; /*!< The value of the Generic Battery Flags state */
170
171/* State of the Generic Location Server Model */
172typedef struct {
173 int32_t global_latitude; /*!< The value of the Global Latitude field */
174 int32_t global_longitude; /*!< The value of the Global Longitude field */
175 int16_t global_altitude; /*!< The value of the Global Altitude field */
176 int16_t local_north; /*!< The value of the Local North field */
177 int16_t local_east; /*!< The value of the Local East field */
178 int16_t local_altitude; /*!< The value of the Local Altitude field */
179 uint8_t floor_number; /*!< The value of the Floor Number field */
180 uint16_t uncertainty; /*!< The value of the Uncertainty field */
182
183/* State of the Generic OnPowerUp Server Model */
184typedef struct {
185 uint8_t onpowerup; /*!< The value of the Generic OnPowerUp state */
187
188/* State of the Generic Power Level Server Model */
189typedef struct {
190 uint16_t power_actual; /*!< The present value of the Generic Power Actual state */
191 uint16_t target_power_actual; /*!< The target value of the Generic Power Actual state */
192
193 uint16_t power_last; /*!< The value of the Generic Power Last state */
194 uint16_t power_default; /*!< The value of the Generic Power Default state */
195
196 uint8_t status_code; /*!< The status code of setting Generic Power Range state */
197 uint16_t power_range_min; /*!< The minimum value of the Generic Power Range state */
198 uint16_t power_range_max; /*!< The maximum value of the Generic Power Range state */
200
201/* State of the Generic Default Transition Time Server Model */
202typedef struct {
203 uint8_t trans_time; /*!< The value of the Generic Default Transition Time state */
205
206/**
207 * @brief Generic Server Model state
208 * Used to set/restore the model state values internally
209 */
211{
212 meshx_gen_onoff_state_t onoff; /*!< Generic OnOff state */
213 meshx_gen_level_state_t level; /*!< Generic Level state */
214 meshx_gen_battery_state_t battery; /*!< Generic Battery state */
215 meshx_gen_location_state_t location; /*!< Generic Location state */
216 meshx_gen_onpowerup_state_t onpowerup; /*!< Generic OnPowerUp state */
217 meshx_gen_power_level_state_t power_level; /*!< Generic Power Level state */
218 meshx_gen_def_trans_time_state_t def_trans_time; /*!< Generic Default Transition Time state */
220
221/* Generic Server callback */
223
224/**
225 * @brief Creates a Generic OnOff Server model and its publication context.
226 *
227 * This function initializes the Generic OnOff Server model, its publication
228 * context, and allocates memory for the server instance. It checks for
229 * invalid arguments and handles memory allocation failures.
230 *
231 * @param[out] p_model Pointer to the model structure to be created.
232 * @param[out] p_pub Pointer to the publication context to be created.
233 * @param[out] p_onoff_srv Pointer to the OnOff server instance to be allocated.
234 *
235 * @return
236 * - MESHX_SUCCESS: Successfully created the model and publication context.
237 * - MESHX_INVALID_ARG: One or more arguments are invalid.
238 * - MESHX_NO_MEM: Memory allocation failed.
239 */
240meshx_err_t meshx_plat_on_off_gen_srv_create(void* p_model, void** p_pub, void** p_onoff_srv);
241
242/**
243 * @brief Creates a Generic Level Server model and its publication context.
244 *
245 * This function initializes the Generic Level Server model, its publication
246 * context, and allocates memory for the server instance. It checks for
247 * invalid arguments and handles memory allocation failures.
248 *
249 * @param[out] p_model Pointer to the model structure to be created.
250 * @param[out] p_pub Pointer to the publication context to be created.
251 * @param[out] p_level_srv Pointer to the Level server instance to be allocated.
252 *
253 * @return
254 * - MESHX_SUCCESS: Successfully created the model and publication context.
255 * - MESHX_INVALID_ARG: One or more arguments are invalid.
256 * - MESHX_NO_MEM: Memory allocation failed.
257 */
258meshx_err_t meshx_plat_level_gen_srv_create(void* p_model, void** p_pub, void** p_level_srv);
259
260/**
261 * @brief Creates a Generic Battery Server model and its publication context.
262 *
263 * This function initializes the Generic Battery Server model, its publication
264 * context, and allocates memory for the server instance. It checks for
265 * invalid arguments and handles memory allocation failures.
266 *
267 * @param[out] p_model Pointer to the model structure to be created.
268 * @param[out] p_pub Pointer to the publication context to be created.
269 * @param[out] p_battery_srv Pointer to the Battery server instance to be allocated.
270 *
271 * @return
272 * - MESHX_SUCCESS: Successfully created the model and publication context.
273 * - MESHX_INVALID_ARG: One or more arguments are invalid.
274 * - MESHX_NO_MEM: Memory allocation failed.
275 */
276meshx_err_t meshx_plat_battery_gen_srv_create(void* p_model, void** p_pub, void** p_battery_srv);
277
278/**
279 * @brief Creates a Generic Location Server model and its publication context.
280 *
281 * This function initializes the Generic Location Server model, its publication
282 * context, and allocates memory for the server instance. It checks for
283 * invalid arguments and handles memory allocation failures.
284 *
285 * @param[out] p_model Pointer to the model structure to be created.
286 * @param[out] p_pub Pointer to the publication context to be created.
287 * @param[out] p_location_srv Pointer to the Location server instance to be allocated.
288 *
289 * @return
290 * - MESHX_SUCCESS: Successfully created the model and publication context.
291 * - MESHX_INVALID_ARG: One or more arguments are invalid.
292 * - MESHX_NO_MEM: Memory allocation failed.
293 */
294meshx_err_t meshx_plat_location_gen_srv_create(void* p_model, void** p_pub, void** p_location_srv);
295
296/**
297 * @brief Creates a Generic Power OnOff Server model and its publication context.
298 *
299 * This function initializes the Generic Power OnOff Server model, its publication
300 * context, and allocates memory for the server instance. It checks for
301 * invalid arguments and handles memory allocation failures.
302 *
303 * @param[out] p_model Pointer to the model structure to be created.
304 * @param[out] p_pub Pointer to the publication context to be created.
305 * @param[out] p_power_onoff_srv Pointer to the Power OnOff server instance to be allocated.
306 *
307 * @return
308 * - MESHX_SUCCESS: Successfully created the model and publication context.
309 * - MESHX_INVALID_ARG: One or more arguments are invalid.
310 * - MESHX_NO_MEM: Memory allocation failed.
311 */
312meshx_err_t meshx_plat_power_onoff_gen_srv_create(void* p_model, void** p_pub, void** p_power_onoff_srv);
313
314/**
315 * @brief Creates a Generic Power OnOff Setup Server model and its publication context.
316 *
317 * This function initializes the Generic Power OnOff Setup Server model, its publication
318 * context, and allocates memory for the server instance. It checks for
319 * invalid arguments and handles memory allocation failures.
320 *
321 * @param[out] p_model Pointer to the model structure to be created.
322 * @param[out] p_pub Pointer to the publication context to be created.
323 * @param[out] p_power_onoff_setup_srv Pointer to the Power OnOff setup server instance to be allocated.
324 *
325 * @return
326 * - MESHX_SUCCESS: Successfully created the model and publication context.
327 * - MESHX_INVALID_ARG: One or more arguments are invalid.
328 * - MESHX_NO_MEM: Memory allocation failed.
329 */
330meshx_err_t meshx_plat_power_onoff_setup_gen_srv_create(void* p_model, void** p_pub, void** p_power_onoff_setup_srv);
331
332/**
333 * @brief Creates a Generic Power Level Server model and its publication context.
334 *
335 * This function initializes the Generic Power Level Server model, its publication
336 * context, and allocates memory for the server instance. It checks for
337 * invalid arguments and handles memory allocation failures.
338 *
339 * @param[out] p_model Pointer to the model structure to be created.
340 * @param[out] p_pub Pointer to the publication context to be created.
341 * @param[out] p_power_level_srv Pointer to the Power Level server instance to be allocated.
342 *
343 * @return
344 * - MESHX_SUCCESS: Successfully created the model and publication context.
345 * - MESHX_INVALID_ARG: One or more arguments are invalid.
346 * - MESHX_NO_MEM: Memory allocation failed.
347 */
348meshx_err_t meshx_plat_power_level_gen_srv_create(void* p_model, void** p_pub, void** p_power_level_srv);
349
350/**
351 * @brief Creates a Generic Default Transition Time Server model and its publication context.
352 *
353 * This function initializes the Generic Default Transition Time Server model, its publication
354 * context, and allocates memory for the server instance. It checks for
355 * invalid arguments and handles memory allocation failures.
356 *
357 * @param[out] p_model Pointer to the model structure to be created.
358 * @param[out] p_pub Pointer to the publication context to be created.
359 * @param[out] p_trans_time_srv Pointer to the Default Transition Time server instance to be allocated.
360 *
361 * @return
362 * - MESHX_SUCCESS: Successfully created the model and publication context.
363 * - MESHX_INVALID_ARG: One or more arguments are invalid.
364 * - MESHX_NO_MEM: Memory allocation failed.
365 */
366meshx_err_t meshx_plat_def_trans_time_gen_srv_create(void* p_model, void** p_pub, void** p_trans_time_srv);
367
368/**
369 * @brief Deletes the Generic OnOff Server model and its associated resources.
370 *
371 * This function frees the memory allocated for the Generic OnOff Server
372 * and sets the pointer to NULL. It also deletes the model publication
373 * resources associated with the server.
374 *
375 * @param[in,out] p_pub Pointer to the publication structure to be deleted.
376 * @param[in,out] p_srv Pointer to the Generic Server structure to be freed.
377 *
378 * @return
379 * - MESHX_SUCCESS: Model and publication deleted successfully.
380 * - MESHX_FAIL: Failed to delete the model or publication.
381 */
382meshx_err_t meshx_plat_gen_srv_delete(void** p_pub, void** p_srv);
383
384/**
385 * @brief Initialize the generic server model platform.
386 *
387 * @return MESHX_SUCCESS on success, or an appropriate error code on failure.
388 */
390
391/**
392 * @brief Set the state of a generic server model.
393 *
394 * This function updates the on/off state of a specified generic server model.
395 *
396 * @param[in] p_model Pointer to the model whose state is to be set.
397 * @param[in] state The desired on/off state to set for the model.
398 * @param[in] state_len The length of the state data.
399 *
400 * @return MESHX_SUCCESS on success, or an appropriate error code on failure.
401 */
402meshx_err_t meshx_plat_set_gen_srv_state(void * p_model, const meshx_gen_server_state_t *state, uint16_t state_len);
403
404/**
405 * @brief Restores the state of the Generic OnOff Server model.
406 *
407 * This function sets the user data of the specified model to the given state.
408 * It checks if the model pointer is valid before proceeding with the operation.
409 *
410 * @param[in] p_model Pointer to the model structure.
411 * @param[in] state The state to be restored in the model.
412 *
413 * @return
414 * - MESHX_SUCCESS: State restored successfully.
415 * - MESHX_INVALID_ARG: Invalid model pointer.
416 */
418
419/**
420 * @brief Send a status message from the Generic Server model.
421 *
422 * This function sends a status message to the specified context with the provided data.
423 *
424 * @param[in] p_model Pointer to the model instance.
425 * @param[in] p_ctx Pointer to the context structure containing destination address and other parameters.
426 * @param[in] p_data Pointer to the data to be sent.
427 * @param[in] data_len Length of the data to be sent.
428 *
429 * @return
430 * - MESHX_SUCCESS: Message sent successfully.
431 * - MESHX_NO_MEM: Memory allocation failed.
432 * - MESHX_ERR_PLAT: Platform error occurred while sending the message.
433 */
435 meshx_model_t *p_model,
436 meshx_ctx_t *p_ctx,
437 meshx_ptr_t p_data,
438 uint32_t data_len
439);
440
441#endif /* __MESHX_PLAT_GEN_SRV_H__ */
Common BLE Mesh interface definitions and utility functions.
struct meshx_model meshx_model_t
struct meshx_ctx meshx_ctx_t
Structure to hold context information for BLE Mesh operations.
void * meshx_ptr_t
Definition meshx_ble_mesh_cmn_def.h:636
meshx_err_t meshx_plat_gen_srv_delete(void **p_pub, void **p_srv)
Deletes the Generic OnOff Server model and its associated resources.
meshx_err_t meshx_plat_set_gen_srv_state(void *p_model, const meshx_gen_server_state_t *state, uint16_t state_len)
Set the state of a generic server model.
meshx_err_t meshx_plat_on_off_gen_srv_create(void *p_model, void **p_pub, void **p_onoff_srv)
Creates a Generic OnOff Server model and its publication context.
meshx_err_t meshx_plat_power_onoff_setup_gen_srv_create(void *p_model, void **p_pub, void **p_power_onoff_setup_srv)
Creates a Generic Power OnOff Setup Server model and its publication context.
meshx_err_t meshx_plat_level_gen_srv_create(void *p_model, void **p_pub, void **p_level_srv)
Creates a Generic Level Server model and its publication context.
meshx_err_t meshx_plat_gen_srv_init(void)
Initialize the generic server model platform.
control_task_msg_handle_t meshx_server_cb
Definition meshx_ble_mesh_gen_srv.h:222
meshx_err_t meshx_plat_battery_gen_srv_create(void *p_model, void **p_pub, void **p_battery_srv)
Creates a Generic Battery Server model and its publication context.
meshx_err_t meshx_plat_def_trans_time_gen_srv_create(void *p_model, void **p_pub, void **p_trans_time_srv)
Creates a Generic Default Transition Time Server model and its publication context.
meshx_err_t meshx_plat_location_gen_srv_create(void *p_model, void **p_pub, void **p_location_srv)
Creates a Generic Location Server model and its publication context.
struct meshx_gen_server_state meshx_gen_server_state_t
Generic Server Model state Used to set/restore the model state values internally.
meshx_err_t meshx_plat_power_level_gen_srv_create(void *p_model, void **p_pub, void **p_power_level_srv)
Creates a Generic Power Level Server model and its publication context.
meshx_err_t meshx_plat_gen_on_off_srv_restore(void *p_model, uint8_t state)
Restores the state of the Generic OnOff Server model.
struct meshx_gen_srv_cb_param meshx_gen_srv_cb_param_t
meshx_err_t meshx_plat_gen_srv_send_status(meshx_model_t *p_model, meshx_ctx_t *p_ctx, meshx_ptr_t p_data, uint32_t data_len)
Send a status message from the Generic Server model.
meshx_err_t meshx_plat_power_onoff_gen_srv_create(void *p_model, void **p_pub, void **p_power_onoff_srv)
Creates a Generic Power OnOff Server model and its publication context.
Header file for the control task in the BLE mesh node application.
meshx_err_t(* control_task_msg_handle_t)(dev_struct_t *pdev, control_task_msg_evt_t evt, void *params)
Function pointer type for control task message handler.
Definition meshx_control_task.h:188
meshx_err_t
MeshX Error Codes.
Definition meshx_err.h:43
uint8_t state
Definition meshx_serial.c:39
Definition meshx_ble_mesh_gen_srv.h:164
uint32_t battery_flags
Definition meshx_ble_mesh_gen_srv.h:168
uint32_t time_to_discharge
Definition meshx_ble_mesh_gen_srv.h:166
uint32_t battery_level
Definition meshx_ble_mesh_gen_srv.h:165
uint32_t time_to_charge
Definition meshx_ble_mesh_gen_srv.h:167
Definition meshx_ble_mesh_gen_srv.h:202
uint8_t trans_time
Definition meshx_ble_mesh_gen_srv.h:203
Definition meshx_ble_mesh_gen_srv.h:153
int32_t last_delta
Definition meshx_ble_mesh_gen_srv.h:157
bool move_start
Definition meshx_ble_mesh_gen_srv.h:159
int16_t target_level
Definition meshx_ble_mesh_gen_srv.h:155
int16_t level
Definition meshx_ble_mesh_gen_srv.h:154
int16_t last_level
Definition meshx_ble_mesh_gen_srv.h:156
bool positive
Definition meshx_ble_mesh_gen_srv.h:160
Definition meshx_ble_mesh_gen_srv.h:172
int32_t global_longitude
Definition meshx_ble_mesh_gen_srv.h:174
int32_t global_latitude
Definition meshx_ble_mesh_gen_srv.h:173
uint8_t floor_number
Definition meshx_ble_mesh_gen_srv.h:179
uint16_t uncertainty
Definition meshx_ble_mesh_gen_srv.h:180
int16_t global_altitude
Definition meshx_ble_mesh_gen_srv.h:175
int16_t local_north
Definition meshx_ble_mesh_gen_srv.h:176
int16_t local_altitude
Definition meshx_ble_mesh_gen_srv.h:178
int16_t local_east
Definition meshx_ble_mesh_gen_srv.h:177
Definition meshx_ble_mesh_gen_srv.h:147
uint8_t target_onoff
Definition meshx_ble_mesh_gen_srv.h:149
uint8_t onoff
Definition meshx_ble_mesh_gen_srv.h:148
Definition meshx_ble_mesh_gen_srv.h:184
uint8_t onpowerup
Definition meshx_ble_mesh_gen_srv.h:185
Definition meshx_ble_mesh_gen_srv.h:189
uint16_t target_power_actual
Definition meshx_ble_mesh_gen_srv.h:191
uint16_t power_last
Definition meshx_ble_mesh_gen_srv.h:193
uint16_t power_actual
Definition meshx_ble_mesh_gen_srv.h:190
uint16_t power_default
Definition meshx_ble_mesh_gen_srv.h:194
uint8_t status_code
Definition meshx_ble_mesh_gen_srv.h:196
uint16_t power_range_max
Definition meshx_ble_mesh_gen_srv.h:198
uint16_t power_range_min
Definition meshx_ble_mesh_gen_srv.h:197
Generic Server Model state Used to set/restore the model state values internally.
Definition meshx_ble_mesh_gen_srv.h:211
meshx_gen_def_trans_time_state_t def_trans_time
Definition meshx_ble_mesh_gen_srv.h:218
meshx_gen_battery_state_t battery
Definition meshx_ble_mesh_gen_srv.h:214
meshx_gen_onoff_state_t onoff
Definition meshx_ble_mesh_gen_srv.h:212
meshx_gen_level_state_t level
Definition meshx_ble_mesh_gen_srv.h:213
meshx_gen_location_state_t location
Definition meshx_ble_mesh_gen_srv.h:215
meshx_gen_onpowerup_state_t onpowerup
Definition meshx_ble_mesh_gen_srv.h:216
meshx_gen_power_level_state_t power_level
Definition meshx_ble_mesh_gen_srv.h:217
Definition meshx_ble_mesh_gen_srv.h:140
meshx_ctx_t ctx
Definition meshx_ble_mesh_gen_srv.h:141
meshx_model_t model
Definition meshx_ble_mesh_gen_srv.h:142
meshx_gen_srv_state_change_t state_change
Definition meshx_ble_mesh_gen_srv.h:143
Definition meshx_ble_mesh_gen_srv.h:104
uint16_t id
Definition meshx_ble_mesh_gen_srv.h:105
uint8_t access
Definition meshx_ble_mesh_gen_srv.h:106
void * value
Definition meshx_ble_mesh_gen_srv.h:107
Definition meshx_ble_mesh_gen_srv.h:48
uint8_t trans_time
Definition meshx_ble_mesh_gen_srv.h:49
Definition meshx_ble_mesh_gen_srv.h:36
int16_t level
Definition meshx_ble_mesh_gen_srv.h:37
Definition meshx_ble_mesh_gen_srv.h:30
int16_t level
Definition meshx_ble_mesh_gen_srv.h:31
Definition meshx_ble_mesh_gen_srv.h:79
int32_t longitude
Definition meshx_ble_mesh_gen_srv.h:81
int32_t latitude
Definition meshx_ble_mesh_gen_srv.h:80
int16_t altitude
Definition meshx_ble_mesh_gen_srv.h:82
Definition meshx_ble_mesh_gen_srv.h:87
uint16_t uncertainty
Definition meshx_ble_mesh_gen_srv.h:92
int16_t altitude
Definition meshx_ble_mesh_gen_srv.h:90
int16_t north
Definition meshx_ble_mesh_gen_srv.h:88
uint8_t floor_number
Definition meshx_ble_mesh_gen_srv.h:91
int16_t east
Definition meshx_ble_mesh_gen_srv.h:89
Definition meshx_ble_mesh_gen_srv.h:112
uint16_t id
Definition meshx_ble_mesh_gen_srv.h:113
uint8_t access
Definition meshx_ble_mesh_gen_srv.h:114
Definition meshx_ble_mesh_gen_srv.h:42
int16_t level
Definition meshx_ble_mesh_gen_srv.h:43
Definition meshx_ble_mesh_gen_srv.h:24
uint8_t onoff
Definition meshx_ble_mesh_gen_srv.h:25
Definition meshx_ble_mesh_gen_srv.h:54
uint8_t onpowerup
Definition meshx_ble_mesh_gen_srv.h:55
Definition meshx_ble_mesh_gen_srv.h:66
uint16_t power
Definition meshx_ble_mesh_gen_srv.h:67
Definition meshx_ble_mesh_gen_srv.h:60
uint16_t power
Definition meshx_ble_mesh_gen_srv.h:61
Definition meshx_ble_mesh_gen_srv.h:72
uint16_t range_max
Definition meshx_ble_mesh_gen_srv.h:74
uint16_t range_min
Definition meshx_ble_mesh_gen_srv.h:73
Definition meshx_ble_mesh_gen_srv.h:97
uint16_t id
Definition meshx_ble_mesh_gen_srv.h:98
void * value
Definition meshx_ble_mesh_gen_srv.h:99
Definition meshx_ble_mesh_gen_srv.h:118
meshx_state_change_gen_user_property_set_t user_property_set
Definition meshx_ble_mesh_gen_srv.h:133
meshx_state_change_gen_loc_global_set_t loc_global_set
Definition meshx_ble_mesh_gen_srv.h:128
meshx_state_change_gen_delta_set_t delta_set
Definition meshx_ble_mesh_gen_srv.h:125
meshx_state_change_gen_power_default_set_t power_default_set
Definition meshx_ble_mesh_gen_srv.h:131
meshx_state_change_gen_onpowerup_set_t onpowerup_set
Definition meshx_ble_mesh_gen_srv.h:127
meshx_state_change_gen_power_level_set_t power_level_set
Definition meshx_ble_mesh_gen_srv.h:129
meshx_state_change_gen_onoff_set_t onoff_set
Definition meshx_ble_mesh_gen_srv.h:123
meshx_state_change_gen_loc_local_set_t loc_local_set
Definition meshx_ble_mesh_gen_srv.h:126
meshx_state_change_gen_level_set_t level_set
Definition meshx_ble_mesh_gen_srv.h:124
meshx_state_change_gen_power_range_set_t power_range_set
Definition meshx_ble_mesh_gen_srv.h:130
meshx_state_change_gen_manu_property_set_t manu_property_set
Definition meshx_ble_mesh_gen_srv.h:132
meshx_state_change_gen_def_trans_time_set_t def_trans_time_set
Definition meshx_ble_mesh_gen_srv.h:135
meshx_state_change_gen_admin_property_set_t admin_property_set
Definition meshx_ble_mesh_gen_srv.h:134
meshx_state_change_gen_move_set_t move_set
Definition meshx_ble_mesh_gen_srv.h:122