Z-Wave Command Class Configurator#

Some command classes require more advanced configuration parameters and for those an advanced configurator was created.

The advanced configurator will be executed for all projects (slcp) which contain a configuration_file with the extension (cc_config)

Specification#

The cc_config file is a yaml file with a defined format per command class. The basic format is

<CC_1>:
    ...
<CC_2>:
    ...
<CC_n>:
    ...

Where CC_n, is the component (slcc) id.

Each command class defines it's properties based on the requirements for it.

Command Classes - Specification#

Below each Command Class properties are defined Non mandatory fields are displayed within parentheses

zw_cc_multi_channel_support#

This section configures the generic type and specific type for each endpoint.

This configuration is only relevant for a multi channel device like a power strip or a sensor with multiple sensors of the same type, for example two temperature sensors.

zw_cc_multi_channel_support:
  endpoints:
    - endpoint: 1
      generic_type: <generic type for endpoint 1>
      specific_type: <specific type for endpoint 1>
    - endpoint: 2
      generic_type: <generic type for endpoint 2>
      specific_type: <specific type for endpoint 2>
    - endpoint: <N-127>
      generic_type: <generic type>
      specific_type: <specific type>

Please see PowerStrip.cc_config for an example.

zw_cc_binary_switch#

The Command Class Binary Switch advanced configurator is defined as follows:

zw_cc_binary_switch:
  binary_switches:
    - endpoint: <Integer 0-255>
      ...
    - endpoint: <Integer 0-255>

zw_cc_color_switch#

The Command Class Color Switch advanced configurator is defined as follows:

zw_cc_color_switch:
  colors:
    - id: <EColorComponents>
      (end_point: <Integer 0-255>)
      ...
    - id: <EColorComponents>
      (end_point: <Integer 0-255>)

zw_cc_multilevel_switch_support#

The Command Class Multilevel Switch Support advanced configurator is defined as follows:

zw_cc_multilevel_switch_support:
  switches:
    - end_point: <Integer 0-255>
    ...
    - end_point: <Integer 0-255>

zw_cc_multilevel_sensor#

The Command Class Multilevel Sensor advanced configurator is defined as follows:

zw_cc_multilevel_sensor:
  sensors:
    <sensor_instance>:
      name: <sensor_name_t>
      scales:
        - <SENSOR_SCALE_*>
        - <SENSOR_SCALE_*>
    ...
    <sensor_instance>:
      name: <sensor_name_t>
      scales:
        - <SENSOR_SCALE_*>

zw_cc_multilevel_sensor#

The Command Class Configuration configurator is defined as follows:

zw_cc_configuration:
  configurations:
    - name: <String>
      number: <1-65535>
      file_id: <0-99>
      info: <String>
      size: <cc_config_parameter_size_t>
      format: <cc_config_parameter_format_t>
      min_value: <Integer - Range depends on size and format>
      max_value: <Integer - Range depends on size and format>
      default_value: <Integer - Range depends on size and format>
      altering_capabilities: <Bit>
      read_only: <Bit>
      advanced: <Bit>
    ...
    - name: <String>
      number: <1-65535>
      file_id: <0-99>
      info: <String>
      size: <cc_config_parameter_size_t>
      format: <cc_config_parameter_format_t>
      min_value: <Integer - Range depends on size and format>
      max_value: <Integer - Range depends on size and format>
      default_value: <Integer - Range depends on size and format>
      altering_capabilities: <Bit>
      read_only: <Bit>
      advanced: <Bit>

zw_cc_door_lock#

The Command Class Configuration configurator is defined as follows:

zw_cc_configuration:
  configuration:
    operation_type: <cc_door_lock_operation_type_t>
    supported_inside_handles: <cc_door_lock_handle_t>
    supported_outside_handles: <cc_door_lock_handle_t>
    options_flags: <Integer 0-255>
    max_auto_relock_time: <Integer 0-65535>
    max_hold_and_release_time: <Integer 0-65535>

zw_cc_notiifcation#

The Command Class Notification configurator is defined as follows:

zw_cc_notification:
  notifications:
    - type: <notification_type_t>
      (endpoint: <Integer 0-127>)
      agi_profile: <agi_profile_t>
      state_events:
        - <notification_event_state 1>
        - <notification_event_state 2>
        - <notification_event_state N>
    ...
    - type: <notification_type_t>
      (endpoint: <Integer 0-127>)
      agi_profile: <agi_profile_t>
      state_events:
        - <notification_event_state 1>
        - <notification_event_state 2>
        - <notification_event_state N>

zw_cc_agi#

The Command Class Association Group Information configurator is defined as follows

zw_cc_association: 
  endpoints: 
    - endpoint: <Integer 0-127>
      groups: 
        - name: <String>
          profile_msb: <Integer>
          profile_lsb: <Integer>
          commands: 
            - command_class: <Integer>
              command: <Integer>

The endpoints have to be specified in ascending order.

zw_cc_central_scene#

The Command Class Central Scene configurator is defined as follows

zw_cc_central_scene:
  central_scene:
    identical: <Integer 0-1 - Mandatory field only if all scenes are identical> 
    number_of_scenes: <1-255 - Mandatory field if and only if all scenes are identical>
    scenes:
      - scene: <Integer 0 - number_of_scenes>
        attributes:
          - attribute: CENTRAL_SCENE_NOTIFICATION_KEY_ATTRIBUTES_KEY_PRESSED_1_TIME_V2
          - attribute: CENTRAL_SCENE_NOTIFICATION_KEY_ATTRIBUTES_KEY_RELEASED_V2
          ...
      - scene: <Integer 0-127 First scene is mandatory. The rest of scenes are mandatory if and only if scenes are not identical>
        attributes:
          - attribute: CENTRAL_SCENE_NOTIFICATION_KEY_ATTRIBUTES_KEY_RELEASED_V2
          - attribute: CENTRAL_SCENE_NOTIFICATION_KEY_ATTRIBUTES_KEY_HELD_DOWN_V2
          ...