Multi Channel Command Class implementation.
More...
Multi Channel Command Class implementation.
This module implements the Multi Channel Command Class handler (control). The Multi Channel Transport is defined in Z-Wave Transports
The control of Multi Channel relies on the following Attribute Store system:
◆ ENDPOINT_MASK
| #define ENDPOINT_MASK 0x7F |
◆ MULTI_CHANNEL_VERSION
| #define MULTI_CHANNEL_VERSION MULTI_CHANNEL_VERSION_V4 |
◆ is_endpoint_aggregated()
| bool is_endpoint_aggregated |
( |
attribute_store_node_t |
endpoint_node | ) |
|
Checks if an endpoints is aggregated.
It verifies if an attribute of type ATTRIBUTE_COMMAND_CLASS_MULTI_CHANNEL_AGGREGATED_MEMBERS exists under the endpoint.
- Parameters
-
| endpoint_node | The attribute store node that represents the End Point ID |
- Returns
- false for individual endpoints and true for aggregated endpoints
◆ zwave_command_class_multi_channel_capability_get()
| sl_status_t zwave_command_class_multi_channel_capability_get |
( |
attribute_store_node_t |
node, |
|
|
uint8_t * |
frame, |
|
|
uint16_t * |
frame_length |
|
) |
| |
Resolves a Non-secure NIF for an Endpoint ID > 0.
Refer to attribute_resolver_function_t for details.
- Parameters
-
| node | The attribute store node that is being resolved |
| [out] | frame | Pointer where to write the frame data to resolve the attribute |
| [out] | frame_length | Pointer where to write length of the frame data that has been writen to the frame pointer. |
- Returns
- SL_STATUS_OK if the frame was written
◆ zwave_command_class_multi_channel_handler()
Handles incoming Multi Channel encapsulated commands.
- Parameters
-
| connection_info | Info about the connection properties of this frame. |
| rx_options | Info about the transport properties of this frame. |
| frame_data | The data payload of this frame. |
| frame_length | The length of this frame. |
- Returns
- sl_status_t representing the outcome of receiving the frame In case where the command is controlled, it should be set to SL_STATUS_OK, even when encountering some parsing errors In case where the command is supported, it should be set to the sl_status_t corresponding to the correct time Status code. Refer to zwave_command_handler_t
◆ zwave_command_class_multi_channel_init()
| sl_status_t zwave_command_class_multi_channel_init |
( |
void |
| ) |
|
Initialize the Multi Channel Command Class (handler) *.
- Returns
- SL_STATUS_OK if successful
-
SL_STATUS_FAIL if an error occurred