Z-Wave Protocol Controller Reference
Command handlers for COMMAND_CLASS_MANUFACTURER_SPECIFIC

Functions for controlling COMMAND_CLASS_MANUFACTURER_SPECIFIC. More...

Collaboration diagram for Command handlers for COMMAND_CLASS_MANUFACTURER_SPECIFIC:

Macros

#define COMMAND_CLASS_MANUFACTURER_SPECIFIC_VERSION   2
 Version of COMMAND_CLASS_MANUFACTURER_SPECIFIC which this handlers is genrated for. More...
 

Functions

void zwave_COMMAND_CLASS_MANUFACTURER_SPECIFIC_add_DEVICE_SPECIFIC_DEVICE_ID_TYPE (attribute_store_node_t parent, uint8_t index)
 Add DEVICE_SPECIFIC_DEVICE_ID_TYPE and its mandatory children to a parent. More...
 
sl_status_t zwave_COMMAND_CLASS_MANUFACTURER_SPECIFIC_init ()
 Initialisation of COMMAND_CLASS_MANUFACTURER_SPECIFIC. More...
 
sl_status_t zwave_MANUFACTURER_SPECIFIC_REPORT_handle_report_command_override (const zwave_controller_connection_info_t *connection_info, const uint8_t *frame, uint16_t frame_length)
 Override function for MANUFACTURER_SPECIFIC_REPORT. More...
 
sl_status_t zwave_DEVICE_SPECIFIC_REPORT_handle_report_command_override (const zwave_controller_connection_info_t *connection_info, const uint8_t *frame, uint16_t frame_length)
 Override function for DEVICE_SPECIFIC_REPORT. More...
 
sl_status_t zwave_MANUFACTURER_SPECIFIC_GET (attribute_store_node_t _node, uint8_t *frame, uint16_t *frame_len)
 Auto-generated function for MANUFACTURER_SPECIFIC_GET. More...
 
sl_status_t zwave_MANUFACTURER_SPECIFIC_GET_override (attribute_store_node_t _node, uint8_t *frame, uint16_t *frame_len)
 Override function for MANUFACTURER_SPECIFIC_GET. More...
 
sl_status_t zwave_DEVICE_SPECIFIC_GET (attribute_store_node_t _node, uint8_t *frame, uint16_t *frame_len)
 Auto-generated function for DEVICE_SPECIFIC_GET. More...
 
sl_status_t zwave_DEVICE_SPECIFIC_GET_override (attribute_store_node_t _node, uint8_t *frame, uint16_t *frame_len)
 Override function for DEVICE_SPECIFIC_GET. More...
 

Detailed Description

Functions for controlling COMMAND_CLASS_MANUFACTURER_SPECIFIC.

This module implement functions for generating and parsing the Z-Wave frames for controlling COMMAND_CLASS_MANUFACTURER_SPECIFIC. The module builds frames by reading data from the attribute according to the tree data model shown below. When data is received is will also update the attribute store with data again according the the model described below.

In addition the module will react on the on_version update events from the attribute store to and insert required attributes into to attribute store. A set of helper functions for inserting attribute for more complex data is also provided. The complex data are generally data dependign on some sort of index.

Macro Definition Documentation

◆ COMMAND_CLASS_MANUFACTURER_SPECIFIC_VERSION

#define COMMAND_CLASS_MANUFACTURER_SPECIFIC_VERSION   2

Version of COMMAND_CLASS_MANUFACTURER_SPECIFIC which this handlers is genrated for.

Function Documentation

◆ zwave_COMMAND_CLASS_MANUFACTURER_SPECIFIC_add_DEVICE_SPECIFIC_DEVICE_ID_TYPE()

void zwave_COMMAND_CLASS_MANUFACTURER_SPECIFIC_add_DEVICE_SPECIFIC_DEVICE_ID_TYPE ( attribute_store_node_t  parent,
uint8_t  index 
)

Add DEVICE_SPECIFIC_DEVICE_ID_TYPE and its mandatory children to a parent.

This function will add an attribute of type DEVICE_SPECIFIC_DEVICE_ID_TYPE under the given parent attribute. The value of the new attribute set to index, and the manetory children are also created under the new attribute, considering the commad class version.

Parameters
parentattribute store node to add children to.
indexIndex of the new attribute subtree to created

◆ zwave_COMMAND_CLASS_MANUFACTURER_SPECIFIC_init()

sl_status_t zwave_COMMAND_CLASS_MANUFACTURER_SPECIFIC_init ( )

Initialisation of COMMAND_CLASS_MANUFACTURER_SPECIFIC.

This function registers the command handler with the attribute resolver and the command handler framework.

◆ zwave_DEVICE_SPECIFIC_GET()

sl_status_t zwave_DEVICE_SPECIFIC_GET ( attribute_store_node_t  _node,
uint8_t *  frame,
uint16_t *  frame_len 
)

Auto-generated function for DEVICE_SPECIFIC_GET.

This function provide automatic handling of the DEVICE_SPECIFIC_GET command.

Parameters
_nodeAttribute to genrate the set frame from.
framePointer to frame data which should be written into
frame_lenLength of the generated frame. I this is 0 on exit the auto generated code is executed otherwise it is not.
Returns
Return code to send to the resolver.

◆ zwave_DEVICE_SPECIFIC_GET_override()

sl_status_t zwave_DEVICE_SPECIFIC_GET_override ( attribute_store_node_t  _node,
uint8_t *  frame,
uint16_t *  frame_len 
)

Override function for DEVICE_SPECIFIC_GET.

This if this function is implemented as a weak symbol. This provided such an external component can modify the behaviour of the auto generated code.

Parameters
_nodeAttribute to genrate the get frame from.
framePointer to frame data which should be written into
frame_lenLength of the generated frame. I this is 0 on exit the auto generated code is executed otherwise it is not.
Returns
Return code to send to the resolver.

◆ zwave_DEVICE_SPECIFIC_REPORT_handle_report_command_override()

sl_status_t zwave_DEVICE_SPECIFIC_REPORT_handle_report_command_override ( const zwave_controller_connection_info_t connection_info,
const uint8_t *  frame,
uint16_t  frame_length 
)

Override function for DEVICE_SPECIFIC_REPORT.

This if this function is implemented as a weak symbol. This provided such an external component can modifiy the behaviour of the generated code.

Returns
If not SL_STATUS_OK the auto generated hander is executed after this.

◆ zwave_MANUFACTURER_SPECIFIC_GET()

sl_status_t zwave_MANUFACTURER_SPECIFIC_GET ( attribute_store_node_t  _node,
uint8_t *  frame,
uint16_t *  frame_len 
)

Auto-generated function for MANUFACTURER_SPECIFIC_GET.

This function provide automatic handling of the MANUFACTURER_SPECIFIC_GET command.

Parameters
_nodeAttribute to genrate the set frame from.
framePointer to frame data which should be written into
frame_lenLength of the generated frame. I this is 0 on exit the auto generated code is executed otherwise it is not.
Returns
Return code to send to the resolver.

◆ zwave_MANUFACTURER_SPECIFIC_GET_override()

sl_status_t zwave_MANUFACTURER_SPECIFIC_GET_override ( attribute_store_node_t  _node,
uint8_t *  frame,
uint16_t *  frame_len 
)

Override function for MANUFACTURER_SPECIFIC_GET.

This if this function is implemented as a weak symbol. This provided such an external component can modify the behaviour of the auto generated code.

Parameters
_nodeAttribute to genrate the get frame from.
framePointer to frame data which should be written into
frame_lenLength of the generated frame. I this is 0 on exit the auto generated code is executed otherwise it is not.
Returns
Return code to send to the resolver.

◆ zwave_MANUFACTURER_SPECIFIC_REPORT_handle_report_command_override()

sl_status_t zwave_MANUFACTURER_SPECIFIC_REPORT_handle_report_command_override ( const zwave_controller_connection_info_t connection_info,
const uint8_t *  frame,
uint16_t  frame_length 
)

Override function for MANUFACTURER_SPECIFIC_REPORT.

This if this function is implemented as a weak symbol. This provided such an external component can modifiy the behaviour of the generated code.

Returns
If not SL_STATUS_OK the auto generated hander is executed after this.