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_light_ctl_client.h
Go to the documentation of this file.
1
16
17#ifndef __LIGHT_CTL_CLIENT_H__
18#define __LIGHT_CTL_CLIENT_H__
19
20#include "meshx_common.h"
21#include "meshx_control_task.h"
22#include "meshx_gen_light_cli.h"
23
24#if CONFIG_LIGHT_CTL_CLIENT_COUNT > 0
25
26#define MESHX_LIGHT_CTL_CLI_MSG_SET 0
27#define MESHX_LIGHT_CTL_CLI_MSG_GET 1
28#define MESHX_LIGHT_CTL_CLI_MSG_ACK 1
29#define MESHX_LIGHT_CTL_CLI_MSG_NO_ACK 0
30
34typedef struct meshx_ctl_el_state
35{
36 uint16_t lightness;
37 uint16_t temperature;
38 uint16_t delta_uv;
39 uint16_t temp_range_max;
40 uint16_t temp_range_min;
41 uint16_t temp_def;
42 uint16_t lightness_def;
43 uint16_t delta_uv_def;
45
56
64
83
96
111
125
138
151
164
177 const meshx_ctl_cli_el_msg_t *param,
178 meshx_ctl_el_state_t *p_ctl_prev_state,
179 const meshx_ctl_el_state_t *p_ctl_next_state
180);
181
182#endif /* CONFIG_LIGHT_CTL_CLIENT_COUNT > 0 */
183#endif /*__LIGHT_CTL_CLIENT_H__*/
struct meshx_model meshx_model_t
struct meshx_ctx meshx_ctx_t
Structure to hold context information for BLE Mesh operations.
Common application definitions and includes for BLE Mesh Node.
struct meshx_model_interface meshx_model_interface_t
Header file for the control task in the BLE mesh node application.
meshx_err_t
MeshX Error Codes.
Definition meshx_err.h:39
Implementation of the MeshX generic light client model for BLE mesh nodes. This file contains functio...
struct meshx_ctl_el_state meshx_ctl_el_state_t
Structure to hold arguments for sending Light CTL messages.
meshx_err_t meshx_light_ctl_client_delete(meshx_light_ctl_client_model_t **p_model)
Delete the Light client model instance.
struct meshx_ctl_cli_el_msg meshx_ctl_cli_el_msg_t
Structure to hold the On/Off Server to element message.
meshx_err_t meshx_light_ctl_state_change_handle(const meshx_ctl_cli_el_msg_t *param, meshx_ctl_el_state_t *p_ctl_prev_state, const meshx_ctl_el_state_t *p_ctl_next_state)
Handles state changes for the Light CTL client element.
meshx_err_t meshx_light_ctl_client_create(meshx_light_ctl_client_model_t **p_model, void *p_sig_model)
Creates and initializes a Generic Light Client model instance.
meshx_err_t meshx_light_ctl_temperature_client_send_msg(meshx_gen_ctl_send_params_t *params)
Sends a Light CTL Temperature message from the client model.
meshx_err_t meshx_light_ctl_client_init()
Initialize the Light CTL Client model.
meshx_err_t meshx_light_ctl_temp_range_client_send_msg(meshx_gen_ctl_send_params_t *params)
Sends a Light CTL Temperature Range message from the client model.
struct meshx_gen_ctl_send_params meshx_gen_ctl_send_params_t
Structure to hold the parameters for sending a Generic Ctl message.
meshx_err_t meshx_light_ctl_client_send_msg(meshx_gen_ctl_send_params_t *params)
Sends a Light CTL (Color Temperature Lightness) message from the Light CTL Client model.
meshx_model_interface_t meshx_light_ctl_client_model_t
Structure representing the Light CTL (Color Temperature Lightness) client model in MeshX.
Structure to hold the On/Off Server to element message.
meshx_ctl_el_state_t ctl_state
Structure to hold arguments for sending Light CTL messages.
Structure to hold the parameters for sending a Generic Ctl message.
meshx_light_ctl_client_model_t * model