[SOLVED] Aeotec Smart Switch 7 - Unknown Device, some beginner questions

Hi everybody,

i would greatly appreciate some help, i don’t understand how the z-wave binding operates with the db and devices and have more questions than answers …

So this this device, even though it is in the z-wave db, is not recognised by the z-wave controller:

DB:
Manufacturer Aeotec Limited
Manufacturer ID 0371
Name ZW175
Device Description Smart Switch 7

https://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list/devicesummary/1134

Since the device already seems to be in the database, I would like to ask …

  • could I simply download the xml from the database and replace the one in my ./srv/openhab2-userdata/zwave/ directory? Or must i upload the below xml to the db?

  • the manufacturer id and device id seem to fit the existing db entry. Why isn’t it recognised? (See below network_ecf8caaf__node_8.xml)

  • after a successful bind how would I change specific command class parameters that are not exposed via habmin-ui or as channel?

    • can I change the parameters in the xml in ./srv/openhab2-userdata/zwave/ and then re-initialise the device? or

    • do I have to set command classes via rest api?

If anyone can answer some of those questions it would be great, I attached the xml of this device as well.

Thanks

Kr
mistercollaboration

REST

curl -X GET --header “Accept: application/json” “http://openhab.localdomain:8080/rest/things

{
    "statusInfo": {
      "status": "ONLINE",
      "statusDetail": "NONE"
    },
    "editable": true,
    "label": "Z-Wave Node 008 (0371:0003:00AF:1.2)",
    "bridgeUID": "zwave:serial_zstick:16e4c726cf9",
    "configuration": {
      "action_reinit": false,
      "group_1": [],
      "node_id": 8,
      "group_2": []
    },
    "properties": {
      "zwave_class_basic": "BASIC_TYPE_ROUTING_SLAVE",
      "zwave_class_generic": "GENERIC_TYPE_SWITCH_BINARY",
      "zwave_frequent": "false",
      "zwave_neighbours": "1,4,5,7",
      "zwave_version": "1.2",
      "zwave_listening": "true",
      "zwave_plus_devicetype": "NODE_TYPE_ZWAVEPLUS_NODE",
      "zwave_deviceid": "175",
      "zwave_nodeid": "8",
      "zwave_lastheal": "2019-11-16T01:45:45Z",
      "zwave_routing": "true",
      "zwave_plus_roletype": "ROLE_TYPE_SLAVE_ALWAYS_ON",
      "zwave_beaming": "true",
      "zwave_secure": "false",
      "zwave_class_specific": "SPECIFIC_TYPE_POWER_SWITCH_BINARY",
      "zwave_manufacturer": "881",
      "zwave_devicetype": "3"
    },
    "UID": "zwave:device:16e4c726cf9:node8",
    "thingTypeUID": "zwave:device",
    "channels": []
  }

network_ecf8caaf__node_8.xml

<node>
  <homeId>0xecf8caaf</homeId>
  <nodeId>8</nodeId>
  <version>4</version>
  <manufacturer>0x371</manufacturer>
  <deviceId>0xaf</deviceId>
  <deviceType>0x3</deviceType>
  <listening>true</listening>
  <frequentlyListening>false</frequentlyListening>
  <routing>true</routing>
  <security>false</security>
  <beaming>true</beaming>
  <maxBaudRate>40000</maxBaudRate>
  <sleepDelay>1000</sleepDelay>
  <nodeInformationFrame>
    <commandClass>COMMAND_CLASS_ZWAVEPLUS_INFO</commandClass>
    <commandClass>COMMAND_CLASS_ASSOCIATION</commandClass>
    <commandClass>COMMAND_CLASS_ASSOCIATION_GRP_INFO</commandClass>
    <commandClass>COMMAND_CLASS_TRANSPORT_SERVICE</commandClass>
    <commandClass>COMMAND_CLASS_CONFIGURATION</commandClass>
    <commandClass>COMMAND_CLASS_SCENE_ACTUATOR_CONF</commandClass>
    <commandClass>COMMAND_CLASS_SCENE_ACTIVATION</commandClass>
    <commandClass>COMMAND_CLASS_CLOCK</commandClass>
    <commandClass>COMMAND_CLASS_ALARM</commandClass>
    <commandClass>COMMAND_CLASS_METER</commandClass>
    <commandClass>COMMAND_CLASS_SWITCH_BINARY</commandClass>
    <commandClass>COMMAND_CLASS_SWITCH_COLOR</commandClass>
    <commandClass>COMMAND_CLASS_SWITCH_MULTILEVEL</commandClass>
    <commandClass>COMMAND_CLASS_VERSION</commandClass>
    <commandClass>COMMAND_CLASS_MANUFACTURER_SPECIFIC</commandClass>
    <commandClass>COMMAND_CLASS_DEVICE_RESET_LOCALLY</commandClass>
    <commandClass>COMMAND_CLASS_APPLICATION_STATUS</commandClass>
    <commandClass>COMMAND_CLASS_PROTECTION</commandClass>
    <commandClass>COMMAND_CLASS_POWERLEVEL</commandClass>
    <commandClass>COMMAND_CLASS_SECURITY</commandClass>
    <commandClass>COMMAND_CLASS_SECURITY_2</commandClass>
    <commandClass>COMMAND_CLASS_SUPERVISION</commandClass>
    <commandClass>COMMAND_CLASS_FIRMWARE_UPDATE_MD</commandClass>
  </nodeInformationFrame>
  <associationGroups class="concurrent-hash-map">
    <entry>
      <int>1</int>
      <associationGroup>
        <index>1</index>
        <maxNodes>0</maxNodes>
        <associations/>
      </associationGroup>
    </entry>
    <entry>
      <int>2</int>
      <associationGroup>
        <index>2</index>
        <maxNodes>0</maxNodes>
        <associations/>
      </associationGroup>
    </entry>
  </associationGroups>
  <endpoints class="concurrent-hash-map">
    <entry>
      <int>0</int>
      <endPoint>
        <deviceClass>
          <basicDeviceClass>BASIC_TYPE_ROUTING_SLAVE</basicDeviceClass>
          <genericDeviceClass>GENERIC_TYPE_SWITCH_BINARY</genericDeviceClass>
          <specificDeviceClass>SPECIFIC_TYPE_POWER_SWITCH_BINARY</specificDeviceClass>
        </deviceClass>
        <endpointId>0</endpointId>
        <secureCommandClasses/>
        <supportedCommandClasses class="concurrent-hash-map">
          <entry>
            <commandClass>COMMAND_CLASS_VERSION</commandClass>
            <COMMAND__CLASS__VERSION>
              <version>2</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <libraryType>LIB_SLAVE_ENHANCED</libraryType>
              <protocolVersion>6.4</protocolVersion>
              <applicationVersion>1.2</applicationVersion>
              <hardwareVersion>175</hardwareVersion>
            </COMMAND__CLASS__VERSION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_PROTECTION</commandClass>
            <COMMAND__CLASS__PROTECTION>
              <version>2</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <localModes>
                <localProtection>UNPROTECTED</localProtection>
                <localProtection>PROTECTED</localProtection>
              </localModes>
              <rfModes>
                <rfProtection>UNPROTECTED</rfProtection>
                <rfProtection>NORFCONTROL</rfProtection>
              </rfModes>
            </COMMAND__CLASS__PROTECTION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_SWITCH_BINARY</commandClass>
            <COMMAND__CLASS__SWITCH__BINARY>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__SWITCH__BINARY>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_CONFIGURATION</commandClass>
            <COMMAND__CLASS__CONFIGURATION>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <configParameters/>
            </COMMAND__CLASS__CONFIGURATION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_SCENE_ACTIVATION</commandClass>
            <COMMAND__CLASS__SCENE__ACTIVATION>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__SCENE__ACTIVATION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_SCENE_ACTUATOR_CONF</commandClass>
            <COMMAND__CLASS__SCENE__ACTUATOR__CONF>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__SCENE__ACTUATOR__CONF>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_SWITCH_COLOR</commandClass>
            <COMMAND__CLASS__SWITCH__COLOR>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <supportedColors/>
              <refreshList/>
              <colorMap/>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__SWITCH__COLOR>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_DEVICE_RESET_LOCALLY</commandClass>
            <COMMAND__CLASS__DEVICE__RESET__LOCALLY>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__DEVICE__RESET__LOCALLY>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_APPLICATION_STATUS</commandClass>
            <COMMAND__CLASS__APPLICATION__STATUS>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__APPLICATION__STATUS>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_MANUFACTURER_SPECIFIC</commandClass>
            <COMMAND__CLASS__MANUFACTURER__SPECIFIC>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <initSerialNumber>false</initSerialNumber>
              <deviceManufacturer>881</deviceManufacturer>
              <deviceType>3</deviceType>
              <deviceId>175</deviceId>
            </COMMAND__CLASS__MANUFACTURER__SPECIFIC>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_POWERLEVEL</commandClass>
            <COMMAND__CLASS__POWERLEVEL>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <powerLevel>0</powerLevel>
              <powerTimeout>0</powerTimeout>
            </COMMAND__CLASS__POWERLEVEL>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_SECURITY</commandClass>
            <COMMAND__CLASS__SECURITY>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__SECURITY>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_SWITCH_MULTILEVEL</commandClass>
            <multiLevelSwitchCommandClass>
              <version>2</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <isGetSupported>true</isGetSupported>
            </multiLevelSwitchCommandClass>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_CLOCK</commandClass>
            <COMMAND__CLASS__CLOCK>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__CLOCK>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ALARM</commandClass>
            <COMMAND__CLASS__ALARM>
              <version>4</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>4</versionSupported>
              <alarms>
                <entry>
                  <alarmType>POWER_MANAGEMENT</alarmType>
                  <alarmState>
                    <alarmType>POWER_MANAGEMENT</alarmType>
                    <reportedEvents/>
                    <outer-class reference="../../../.."/>
                  </alarmState>
                </entry>
                <entry>
                  <alarmType>SYSTEM</alarmType>
                  <alarmState>
                    <alarmType>SYSTEM</alarmType>
                    <reportedEvents/>
                    <outer-class reference="../../../.."/>
                  </alarmState>
                </entry>
              </alarms>
              <v1Supported>true</v1Supported>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__ALARM>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_FIRMWARE_UPDATE_MD</commandClass>
            <COMMAND__CLASS__FIRMWARE__UPDATE__MD>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>4</versionSupported>
            </COMMAND__CLASS__FIRMWARE__UPDATE__MD>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ZWAVEPLUS_INFO</commandClass>
            <COMMAND__CLASS__ZWAVEPLUS__INFO>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <zwPlusVersion>1</zwPlusVersion>
              <zwPlusRole>ROLE_TYPE_SLAVE_ALWAYS_ON</zwPlusRole>
              <zwPlusNodeType>NODE_TYPE_ZWAVEPLUS_NODE</zwPlusNodeType>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__ZWAVEPLUS__INFO>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ASSOCIATION_GRP_INFO</commandClass>
            <COMMAND__CLASS__ASSOCIATION__GRP__INFO>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <autoSubscribeGroups/>
            </COMMAND__CLASS__ASSOCIATION__GRP__INFO>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_BASIC</commandClass>
            <COMMAND__CLASS__BASIC>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__BASIC>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_NO_OPERATION</commandClass>
            <COMMAND__CLASS__NO__OPERATION>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__NO__OPERATION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ASSOCIATION</commandClass>
            <COMMAND__CLASS__ASSOCIATION>
              <version>2</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <maxGroups>2</maxGroups>
            </COMMAND__CLASS__ASSOCIATION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_METER</commandClass>
            <COMMAND__CLASS__METER>
              <version>3</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>4</versionSupported>
              <meterType>ELECTRIC</meterType>
              <meterScales>
                <meterScale>E_KWh</meterScale>
                <meterScale>E_V</meterScale>
                <meterScale>E_A</meterScale>
                <meterScale>E_W</meterScale>
              </meterScales>
              <canReset>true</canReset>
              <isGetSupported>true</isGetSupported>
              <isSupportRequestSupported>true</isSupportRequestSupported>
            </COMMAND__CLASS__METER>
          </entry>
        </supportedCommandClasses>
      </endPoint>
    </entry>
  </endpoints>
  <nodeNeighbors>
    <int>1</int>
    <int>4</int>
    <int>5</int>
    <int>7</int>
  </nodeNeighbors>
  <lastReceived>2019-11-16 01:42:54.441 UTC</lastReceived>
</node>

You need to upgrade to the latest zwave 2.5 snapshot binding, either manually or use this script:

2 Likes

My current recommendation when using the script is to delete the old zwave binding first. I have had timeouts when the script tries to remove it.

1 Like

@sihui thanks!! i had to do the steps of the script manually and it is working now! :smile:

Can anyone comment on the questions in OP?

I would like to have the switch as default off on the device side, is that possible by setting the proper command class on the device?

I’m not sure I understand your question.
You can’t change the command classes, these are determined by your device.
Are you talking about the switch state after power loss? Then this is your configuration parameter which needs to be set properly:

1 Like