OH2, Zooz ZSE40 4 in 1 sensor and No enum constant error

Hi All and @chris,

I’m recently setup an instance of OH2 and hoping to migrate my setup to it soon. Also recently purchased a Zooz ZSE40 that I am putting it in the OH2 instance.

I see that ZSE40 has been added to the database, thank you @chris for that!

I setup the ZWAVE binding, thing and channel for the ZSE40 in paper UI and I manually enter the items in /etc/openhab2/items (I like it better than the paper UI items).

Here are the items.

Contact ZoozBinary "Zooz Binary" { channel="zwave:device:89326432:node4:sensor_binary" }
Contact ZoozMotion "Zooz Motion" { channel="zwave:device:89326432:node4:alarm_motion" }
Contact ZoozTamper "Zooz Tamper" { channel="zwave:device:89326432:node4:alarm_tamper" }
Number ZoozHumidity "Zooz Humidity" <humidity> { channel="zwave:device:89326432:node4:sensor_relhumidity" }
Number ZoozLight "Zooz Light" { channel="zwave:device:89326432:node4:sensor_luminance" }
Number ZoozTemperature "Zooz Temperature" <temperature> { channel="zwave:device:89326432:node4:sensor_temperature" }
Number ZoozBattery "Zooz Battery" <battery> { channel="zwave:device:89326432:node4:battery_level" }

First of all, in the Paper UI, the channel for battery is “zwave:device:89326432:node4:battery-level”. If I put this in, it doesn’t give me any results. So, i changed it to “zwave:device:89326432:node4:battery_level”, which seems to work. Not sure if this is a bug, or I did something wrong.

Second, ZoozTamper (zwave:device:89326432:node4:alarm_tamper) and ZoozBinary (zwave:device:89326432:node4:sensor_binary) don’t seem to do anything at all. Not sure if other people have any lucks with this one.

Finally, ZoozMotion (zwave:device:89326432:node4:alarm_motion) seems to be generating an error in the error log whenever the ZSE40 sends a motion detected singal over.

2017-07-31 01:51:26.058 [ERROR] [ve.internal.protocol.ZWaveController] - Exception during ZWave thread: Input 2. {}
java.lang.IllegalArgumentException: No enum constant org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.AlarmType.MOTION
	at java.lang.Enum.valueOf(Enum.java:238)[:1.8.0_131]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass$AlarmType.valueOf(ZWaveAlarmCommandClass.java:1)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.converter.ZWaveAlarmConverter.handleNotificationReport(ZWaveAlarmConverter.java:144)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.converter.ZWaveAlarmConverter.handleEvent(ZWaveAlarmConverter.java:109)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.handler.ZWaveThingHandler.ZWaveIncomingEvent(ZWaveThingHandler.java:1099)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.notifyEventListeners(ZWaveController.java:567)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.processNotificationReport(ZWaveAlarmCommandClass.java:194)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.handleApplicationCommandRequest(ZWaveAlarmCommandClass.java:124)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.serialmessage.ApplicationCommandMessageClass.handleRequest(ApplicationCommandMessageClass.java:119)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingRequestMessage(ZWaveController.java:248)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingMessage(ZWaveController.java:214)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.access$7(ZWaveController.java:208)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController$ZWaveInputThread.run(ZWaveController.java:1324)[208:org.openhab.binding.zwave:2.1.0]

Everything else seems to be working.

I am on OH2 2.1 and zwave:2.1.0 (from the error log). The binding was installed from Paper UI.

Anyone else has similiar issue? Any luck on resolving it?

Thanks,
Joe

This is strange. The channel should be battery-level. This is a system defined channel which is why it is different. There is no battery_level channel defined so I would have expected this to give an error.

binary_sensor may not be used - often there are multiple ways to send data back, depending on the configuration of the device.

I’ll take a look at this - probably there’s a database error.

I can do some more testing to see if this is actually true, like deleting the item and make a new one. It’s kinda hard to tell since it’s reporting 100% and doesn’t change.

Thanks! I can upload the XML if needed.

Hi @chris,

I took a look at the ZWAVE DB and the device user manual. The user manual did not listed the alarm class as one of the supported classes, would that be the issue? I would I could be more helpful at finding the issue, but my knowledge at zwave is minimal.

This device requires the following 
command classes to be supported and 
recognized by your ZWave controller:

COMMAND_CLASS_ASSOCIATION_GRP_INFO
COMMAND_CLASS_ASSOCIATION_V2 
COMMAND_CLASS_BATTERY 
COMMAND_CLASS_CONFIGURATION 
COMMAND_CLASS_DEVICE_RESET_LOCALLY
COMMAND_CLASS_FIRMWARE_UPDATE_MD_V2
COMMAND_CLASS_MANUFACTURER_SPECIFIC_V2 
COMMAND_CLASS_NOTIFICATION_V4   
COMMAND_CLASS_POWERLEVEL
COMMAND_CLASS_SECURITY
COMMAND_CLASS_SENSOR_MULTILEVEL_V7
COMMAND_CLASS_VERSION_V2                     
COMMAND_CLASS_WAKE_UP_V2       
COMMAND_CLASS_ZWAVEPLUS_INFO_V2

Thanks,
Joe

No - this isn’t the issue - the ALARM class got renamed to NOTIFICATION which is in your list. I’ve been away for a day or so but will try and look at this tonight but it should be relatively easy to find. If you can upload the XML it might be useful.

Cheers
Chris

Hi Chris,

Great timing. I just enabled trace on zwave, here is what I got. I will update the XML in the next post.

2017-08-03 01:08:29.472 [Handler$ZWaveReceiveThread] - Received SOF
2017-08-03 01:08:29.474 [Handler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 04 03 20 01 FF 2B 
2017-08-03 01:08:29.474 [SerialMessage             ] - NODE 255: Creating new SerialMessage from buffer = 01 09 00 04 00 04 03 20 01 FF 2B 
2017-08-03 01:08:29.476 [SerialMessage             ] - Calculated checksum = 0x2B
2017-08-03 01:08:29.476 [SerialMessage             ] - NODE 255: Checksum matched
2017-08-03 01:08:29.476 [SerialMessage             ] - NODE 255: Message payload = 00 04 03 20 01 FF 
2017-08-03 01:08:29.476 [Handler$ZWaveReceiveThread] - Message is valid, sending ACK
2017-08-03 01:08:29.477 [Handler$ZWaveReceiveThread] - Response SENT
2017-08-03 01:08:29.478 [ZWaveController           ] - Receive queue TAKE: Length=0
2017-08-03 01:08:29.479 [SerialMessage             ] - Calculated checksum = 0x2B
2017-08-03 01:08:29.479 [SerialMessage             ] - Assembled message buffer = 01 09 00 04 00 04 03 20 01 FF 2B 
2017-08-03 01:08:29.479 [ZWaveController           ] - Process Message = 01 09 00 04 00 04 03 20 01 FF 2B 
2017-08-03 01:08:29.479 [ZWaveController           ] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 04 03 20 01 FF 
2017-08-03 01:08:29.480 [ZWaveController           ] - Incoming Message type = REQUEST
2017-08-03 01:08:29.480 [icationCommandMessageClass] - Handle Message Application Command Request
2017-08-03 01:08:29.480 [icationCommandMessageClass] - NODE 4: Application Command Request (ALIVE:DETAILS)
2017-08-03 01:08:29.480 [icationCommandMessageClass] - NODE 4: Incoming command class BASIC
2017-08-03 01:08:29.480 [icationCommandMessageClass] - NODE 4: Found Command Class BASIC, passing to handleApplicationCommandRequest
2017-08-03 01:08:29.480 [ZWaveBasicCommandClass    ] - NODE 4: Received Basic Request
2017-08-03 01:08:29.481 [ZWaveBasicCommandClass    ] - NODE 4: Basic Set sent to the controller will be processed as Basic Report
2017-08-03 01:08:29.481 [ZWaveBasicCommandClass    ] - NODE 4: Basic report, value = 0xFF
2017-08-03 01:08:29.481 [ZWaveController           ] - Notifying event listeners: ZWaveCommandClassValueEvent
2017-08-03 01:08:29.481 [ZWaveThingHandler         ] - NODE 4: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
2017-08-03 01:08:29.481 [ZWaveThingHandler         ] - NODE 4: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 255
2017-08-03 01:08:29.482 [ZWaveThingHandler         ] - NODE 4: Updating channel state zwave:device:89326432:node4:sensor_binary to ON [OnOffType]
2017-08-03 01:08:29.482 [ZWaveCommandProcessor     ] - Checking transaction complete: Message has Ack Pending: Message: class=SendData[0x13], type=Request[0x00], priority=Immediate, dest=4, callback=15, payload=04 01 00 
2017-08-03 01:08:29.491 [Handler$ZWaveReceiveThread] - Received SOF
2017-08-03 01:08:29.492 [Handler$ZWaveReceiveThread] - Receive Message = 01 10 00 04 00 04 0A 71 05 07 FF 00 FF 07 08 00 00 99 
2017-08-03 01:08:29.493 [SerialMessage             ] - NODE 255: Creating new SerialMessage from buffer = 01 10 00 04 00 04 0A 71 05 07 FF 00 FF 07 08 00 00 99 
2017-08-03 01:08:29.493 [SerialMessage             ] - Calculated checksum = 0x99
2017-08-03 01:08:29.494 [SerialMessage             ] - NODE 255: Checksum matched
2017-08-03 01:08:29.494 [SerialMessage             ] - NODE 255: Message payload = 00 04 0A 71 05 07 FF 00 FF 07 08 00 00 
2017-08-03 01:08:29.495 [Handler$ZWaveReceiveThread] - Message is valid, sending ACK
2017-08-03 01:08:29.496 [Handler$ZWaveReceiveThread] - Response SENT
2017-08-03 01:08:29.497 [ZWaveController           ] - Receive queue TAKE: Length=0
2017-08-03 01:08:29.497 [SerialMessage             ] - Calculated checksum = 0x99
2017-08-03 01:08:29.498 [SerialMessage             ] - Assembled message buffer = 01 10 00 04 00 04 0A 71 05 07 FF 00 FF 07 08 00 00 99 
2017-08-03 01:08:29.498 [ZWaveController           ] - Process Message = 01 10 00 04 00 04 0A 71 05 07 FF 00 FF 07 08 00 00 99 
2017-08-03 01:08:29.498 [ZWaveController           ] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 04 0A 71 05 07 FF 00 FF 07 08 00 00 
2017-08-03 01:08:29.498 [ZWaveController           ] - Incoming Message type = REQUEST
2017-08-03 01:08:29.498 [icationCommandMessageClass] - Handle Message Application Command Request
2017-08-03 01:08:29.498 [icationCommandMessageClass] - NODE 4: Application Command Request (ALIVE:DETAILS)
2017-08-03 01:08:29.499 [icationCommandMessageClass] - NODE 4: Incoming command class ALARM
2017-08-03 01:08:29.499 [icationCommandMessageClass] - NODE 4: Found Command Class ALARM, passing to handleApplicationCommandRequest
2017-08-03 01:08:29.499 [ZWaveAlarmCommandClass    ] - NODE 4: Received ALARM command V4
2017-08-03 01:08:29.499 [ZWaveAlarmCommandClass    ] - NODE 4: Process NOTIFICATION_REPORT V4
2017-08-03 01:08:29.499 [ZWaveAlarmCommandClass    ] - NODE 4: NOTIFICATION report - 7 = 255, event=8, status=255
2017-08-03 01:08:29.499 [ZWaveAlarmCommandClass    ] - NODE 4: Alarm Type = BURGLAR (7)
2017-08-03 01:08:29.499 [ZWaveController           ] - Notifying event listeners: ZWaveAlarmValueEvent
2017-08-03 01:08:29.499 [ZWaveThingHandler         ] - NODE 4: Got an event from Z-Wave network: ZWaveAlarmValueEvent
2017-08-03 01:08:29.499 [ZWaveThingHandler         ] - NODE 4: Got a value event from Z-Wave network, endpoint = 0, command class = ALARM, value = 255
2017-08-03 01:08:29.500 [ZWaveAlarmConverter       ] - Alarm converter processing NOTIFICATION
2017-08-03 01:08:29.500 [ZWaveController           ] - Exception during ZWave thread: Input 2. {}
java.lang.IllegalArgumentException: No enum constant org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.AlarmType.MOTION
	at java.lang.Enum.valueOf(Enum.java:238)[:1.8.0_131]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass$AlarmType.valueOf(ZWaveAlarmCommandClass.java:1)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.converter.ZWaveAlarmConverter.handleNotificationReport(ZWaveAlarmConverter.java:144)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.converter.ZWaveAlarmConverter.handleEvent(ZWaveAlarmConverter.java:109)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.handler.ZWaveThingHandler.ZWaveIncomingEvent(ZWaveThingHandler.java:1099)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.notifyEventListeners(ZWaveController.java:567)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.processNotificationReport(ZWaveAlarmCommandClass.java:194)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.handleApplicationCommandRequest(ZWaveAlarmCommandClass.java:124)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.serialmessage.ApplicationCommandMessageClass.handleRequest(ApplicationCommandMessageClass.java:119)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingRequestMessage(ZWaveController.java:248)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingMessage(ZWaveController.java:214)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.access$7(ZWaveController.java:208)[208:org.openhab.binding.zwave:2.1.0]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController$ZWaveInputThread.run(ZWaveController.java:1324)[208:org.openhab.binding.zwave:2.1.0]

An update for the battery channel as well.

It is indeed “zwave:device:89326432:node4:battery-level”, so I was incorrect on my first post. Sorry for the confusion.

And here is the XML for the node.

<node>
  <deviceClass>
    <basicDeviceClass>ROUTING_SLAVE</basicDeviceClass>
    <genericDeviceClass>SENSOR_NOTIFICATION</genericDeviceClass>
    <specificDeviceClass>NOTIFICATION_SENSOR</specificDeviceClass>
  </deviceClass>
  <homeId>0x184e997</homeId>
  <nodeId>4</nodeId>
  <version>4</version>
  <manufacturer>0x27a</manufacturer>
  <deviceId>0x2101</deviceId>
  <deviceType>0x2021</deviceType>
  <listening>false</listening>
  <frequentlyListening>false</frequentlyListening>
  <routing>true</routing>
  <security>false</security>
  <beaming>true</beaming>
  <maxBaudRate>40000</maxBaudRate>
  <nodeInformationFrame>
    <commandClass>ZWAVE_PLUS_INFO</commandClass>
    <commandClass>VERSION</commandClass>
    <commandClass>MANUFACTURER_SPECIFIC</commandClass>
    <commandClass>DEVICE_RESET_LOCALLY</commandClass>
    <commandClass>ASSOCIATION</commandClass>
    <commandClass>ASSOCIATION_GROUP_INFO</commandClass>
    <commandClass>POWERLEVEL</commandClass>
    <commandClass>BATTERY</commandClass>
    <commandClass>ALARM</commandClass>
    <commandClass>SENSOR_MULTILEVEL</commandClass>
    <commandClass>CONFIGURATION</commandClass>
    <commandClass>WAKE_UP</commandClass>
    <commandClass>FIRMWARE_UPDATE_MD</commandClass>
  </nodeInformationFrame>
  <supportedCommandClasses>
    <entry>
      <commandClass>POWERLEVEL</commandClass>
      <powerLevelCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <powerLevel>0</powerLevel>
        <powerTimeout>0</powerTimeout>
      </powerLevelCommandClass>
    </entry>
    <entry>
      <commandClass>SENSOR_MULTILEVEL</commandClass>
      <multiLevelSensorCommandClass>
        <version>7</version>
        <instances>1</instances>
        <versionSupported>7</versionSupported>
        <sensors>
          <entry>
            <multilevelSensorType>LUMINANCE</multilevelSensorType>
            <multilevelSensor>
              <sensorType>LUMINANCE</sensorType>
              <initialised>true</initialised>
            </multilevelSensor>
          </entry>
          <entry>
            <multilevelSensorType>TEMPERATURE</multilevelSensorType>
            <multilevelSensor>
              <sensorType>TEMPERATURE</sensorType>
              <initialised>true</initialised>
            </multilevelSensor>
          </entry>
          <entry>
            <multilevelSensorType>RELATIVE_HUMIDITY</multilevelSensorType>
            <multilevelSensor>
              <sensorType>RELATIVE_HUMIDITY</sensorType>
              <initialised>true</initialised>
            </multilevelSensor>
          </entry>
        </sensors>
        <isGetSupported>true</isGetSupported>
      </multiLevelSensorCommandClass>
    </entry>
    <entry>
      <commandClass>DEVICE_RESET_LOCALLY</commandClass>
      <deviceResetLocallyCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
      </deviceResetLocallyCommandClass>
    </entry>
    <entry>
      <commandClass>SENSOR_BINARY</commandClass>
      <binarySensorCommandClass>
        <version>0</version>
        <instances>0</instances>
        <versionSupported>0</versionSupported>
        <isGetSupported>true</isGetSupported>
        <types/>
      </binarySensorCommandClass>
    </entry>
    <entry>
      <commandClass>ASSOCIATION</commandClass>
      <associationCommandClass>
        <version>2</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
        <maxGroups>1</maxGroups>
      </associationCommandClass>
    </entry>
    <entry>
      <commandClass>WAKE_UP</commandClass>
      <WakeUpCommandClass>
        <version>2</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
        <targetNodeId>1</targetNodeId>
        <interval>43200</interval>
        <minInterval>600</minInterval>
        <maxInterval>604800</maxInterval>
        <defaultInterval>43200</defaultInterval>
        <intervalStep>600</intervalStep>
        <lastWakeup>2017-08-03 08:11:24.384 UTC</lastWakeup>
        <isGetSupported>true</isGetSupported>
      </WakeUpCommandClass>
    </entry>
    <entry>
      <commandClass>CONFIGURATION</commandClass>
      <configurationCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <configParameters>
          <entry>
            <int>1</int>
            <configurationParameter>
              <index>1</index>
              <size>1</size>
              <value>1</value>
              <readOnly>false</readOnly>
              <writeOnly>false</writeOnly>
            </configurationParameter>
          </entry>
          <entry>
            <int>2</int>
            <configurationParameter>
              <index>2</index>
              <size>1</size>
              <value>10</value>
              <readOnly>false</readOnly>
              <writeOnly>false</writeOnly>
            </configurationParameter>
          </entry>
          <entry>
            <int>3</int>
            <configurationParameter>
              <index>3</index>
              <size>1</size>
              <value>10</value>
              <readOnly>false</readOnly>
              <writeOnly>false</writeOnly>
            </configurationParameter>
          </entry>
          <entry>
            <int>4</int>
            <configurationParameter>
              <index>4</index>
              <size>1</size>
              <value>10</value>
              <readOnly>false</readOnly>
              <writeOnly>false</writeOnly>
            </configurationParameter>
          </entry>
          <entry>
            <int>5</int>
            <configurationParameter>
              <index>5</index>
              <size>1</size>
              <value>3</value>
              <readOnly>false</readOnly>
              <writeOnly>false</writeOnly>
            </configurationParameter>
          </entry>
          <entry>
            <int>6</int>
            <configurationParameter>
              <index>6</index>
              <size>1</size>
              <value>4</value>
              <readOnly>false</readOnly>
              <writeOnly>false</writeOnly>
            </configurationParameter>
          </entry>
          <entry>
            <int>7</int>
            <configurationParameter>
              <index>7</index>
              <size>1</size>
              <value>3</value>
              <readOnly>false</readOnly>
              <writeOnly>false</writeOnly>
            </configurationParameter>
          </entry>
        </configParameters>
      </configurationCommandClass>
    </entry>
    <entry>
      <commandClass>MANUFACTURER_SPECIFIC</commandClass>
      <manufacturerSpecificCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
        <initSerialNumber>false</initSerialNumber>
        <deviceManufacturer>634</deviceManufacturer>
        <deviceType>8225</deviceType>
        <deviceId>8449</deviceId>
      </manufacturerSpecificCommandClass>
    </entry>
    <entry>
      <commandClass>ALARM</commandClass>
      <alarmCommandClass>
        <version>4</version>
        <instances>1</instances>
        <versionSupported>4</versionSupported>
        <alarms>
          <entry>
            <alarmType>BURGLAR</alarmType>
            <alarmState>
              <alarmType>BURGLAR</alarmType>
              <reportedEvents>
                <int>3</int>
                <int>8</int>
              </reportedEvents>
              <outer-class reference="../../../.."/>
            </alarmState>
          </entry>
        </alarms>
        <v1Supported>false</v1Supported>
        <isGetSupported>true</isGetSupported>
      </alarmCommandClass>
    </entry>
    <entry>
      <commandClass>ZWAVE_PLUS_INFO</commandClass>
      <zwavePlusCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
        <zwPlusVersion>1</zwPlusVersion>
        <zwPlusRole>6</zwPlusRole>
        <zwPlusNodeType>0</zwPlusNodeType>
        <zwPlusDeviceType>0xc07</zwPlusDeviceType>
        <zwPlusInstallerIcon>0xc07</zwPlusInstallerIcon>
        <isGetSupported>true</isGetSupported>
      </zwavePlusCommandClass>
    </entry>
    <entry>
      <commandClass>VERSION</commandClass>
      <versionCommandClass>
        <version>2</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
        <libraryType>LIB_SLAVE_ENHANCED</libraryType>
        <protocolVersion>4.5</protocolVersion>
        <applicationVersion>16.9</applicationVersion>
        <hardwareVersion>1</hardwareVersion>
      </versionCommandClass>
    </entry>
    <entry>
      <commandClass>NO_OPERATION</commandClass>
      <noOperationCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
      </noOperationCommandClass>
    </entry>
    <entry>
      <commandClass>ASSOCIATION_GROUP_INFO</commandClass>
      <associationGroupInfoCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <autoSubscribeGroups>
          <int>1</int>
        </autoSubscribeGroups>
      </associationGroupInfoCommandClass>
    </entry>
    <entry>
      <commandClass>BATTERY</commandClass>
      <batteryCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <batteryLevel>100</batteryLevel>
        <batteryLow>false</batteryLow>
        <isGetSupported>true</isGetSupported>
      </batteryCommandClass>
    </entry>
    <entry>
      <commandClass>FIRMWARE_UPDATE_MD</commandClass>
      <firmwareUpdateCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
      </firmwareUpdateCommandClass>
    </entry>
    <entry>
      <commandClass>BASIC</commandClass>
      <basicCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <isGetSupported>true</isGetSupported>
      </basicCommandClass>
    </entry>
  </supportedCommandClasses>
  <securedCommandClasses/>
  <associationGroups>
    <entry>
      <int>1</int>
      <associationGroup>
        <index>1</index>
        <name>Lifeline</name>
        <profile1>0x0</profile1>
        <profile2>0x1</profile2>
        <commands>
          <commandClass>DEVICE_RESET_LOCALLY</commandClass>
          <commandClass>SENSOR_MULTILEVEL</commandClass>
          <commandClass>ALARM</commandClass>
          <commandClass>BATTERY</commandClass>
          <commandClass>BASIC</commandClass>
        </commands>
        <associations>
          <associationMember>
            <node>1</node>
            <endpoint>0</endpoint>
          </associationMember>
        </associations>
      </associationGroup>
    </entry>
  </associationGroups>
  <nodeNeighbors>
    <int>1</int>
    <int>2</int>
  </nodeNeighbors>
  <lastSent>2017-08-03 08:11:24.569 UTC</lastSent>
  <lastReceived>2017-08-03 08:11:24.602 UTC</lastReceived>

Hi @chris,

In the XML, it says that it sends burglar alarm type, while in the DB, it’s Alarm motion type. Maybe this is why?

But if that’s the case, how did others work? The manufacturer might have changed the implementation?

Thanks,
Joe

Did you ever figure out this issue? I am having the exact same issue with the ALARM

Yes, I think the DB needs to be updated.

It doesn’t seems to support Alarm Motion and Alarm Temper class, but
instead only support Alarm Burglar.

I didn’t request to update the DB because I wasn’t sure if it’s just my
unit or others as well, as no one else seems to have the same issue.

Joe

Oh I see. Could you tell me how you updated yours to fix the ALARM issue? I dont know how to access/modify the DB

Hi @chris,

I have requested (via submitting a ticket) to update the DB at http://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list

Please let me know if that’s not the right way to initiate XML changes in the zwave binding.

Thanks,
Joe

Hi,
I updated your access yesterday. Once the changes are through, then you will just need to update to use the latest snapshot binding.

Cheers
Chris

Hi Chris,

I tried updating the device, renamed alarm motion to alarm burglar. Tried removing the alarm temper, but doesn’t seem to be an option using the web interface.

I tried uploading openhab2 XML, but the website warned it must be openhab1 XML.

Not sure how to remove alarm temper.

Thanks,
Joe

OH1 and OH2 XML files are uploadable, but if the device already has most of the data filled in, then you can’t upload another XML and use this to overwrite it. The database doesn’t allow this to avoid someone uploading a completely wrong file (which happens often!) and completely screwing things up. You will need to make changes manually.

Just rename it to DELETE ME (or something like that), or delete the channel name and I’ll remove it when I go to approve it.

Done.

Thanks,
Joe

Hey goodfore and chris,

Just bought a bunch of these sensors to test out. I wanted to keep an eye on temperature changes through out the house. I purchased item 15902 from monoprice. It seems to be the same product as zooz’s 4 in 1 sensor (same item id…). I seem to be having some trouble getting these sensors to work correctly. My issues are, motion trigger seems to lag, Battery never reported, with multiple units connected some sensors just don’t seem to update at all. I would really like to work these bugs out and get this working. I am quite new to openhab but am willing to do some leg work to get things working. Any help would be appropriated…

Hi Sean,

How long of motion delayed are we talking about? Remember that these sensors have a cool down period between firing motion events.

I would suggest you start testing with one unit. Put it close to your zwave controller and see if there is delay for motion. This will eliminate the possibility of zwave network dead spots.

Another tool is to check the log file. Turn the zwave log to debug to get more information.

Thanks,
Joe

So appearently you all updated this sensor in the database and now mine has completely stopped working… I wonder if this is a case of the OEM making different versions and keeping the same ID for them. I need to dig into the issue and determine what has changed I suppose. Are your sensors working now?

I moved my Z Wave network off of Openhab, and use homeassistant for that, so I haven’t tested my sensor in openhab for a while.

If you look at the SmartThings implementation, they use Burglar event as well:

https://community.smartthings.com/t/zooz-zse40-4-in-1-sensor-device-handler/47962

Is is possible that they have different event for the same problem. When you turn on debug, anything in the log?

Thanks,
Joe