Ring Alarm Components - Zwave

Couldn’t find any real info ‘googling’ and don’t fully understand the Zwave specs…

Does anyone know or can look at the ‘Zwave alliance’ docs and know whether ring alarm individual components work with Zwave natively.

I’m looking to use the alarm keypad only with my aeotec stick within openhab. Ring (Amazon) obviously keep as much to their chest as possible. I can’t see any mention of scenes (ie button presses) or lifelines in the docs, but all the components are Zwave certified. Not too bothered if it’s not in cd Jackson database (should be able to do this myself with a little reading) but don’t want to waste my time if it’s not going to work in the first instance.

Thanks in advance

I am personally not aware of anyone using Ring devices with OH. In trying to verify they are Z-Wave certified I found this possibly useful link.

Both the current database website and the old one are both down currently. If the devices use command classes not in the binding then development would be needed.

We would need somebody to purchase a device and then create the database entry for it.

I have the keypad… but haven’t opened yet.

https://products.z-wavealliance.org/products/2668

1 Like

The database server is back up. Here is the database guide if you wish to add it to the community maintained database.

Hi @chris

So this device is not listed in your database at present and ive no idea whether ill be able to get it to work, looking for your help whether i’m wasting my time or not.

Its meant to be used with the Ring alarm system but is Z-Wave.
I’ve opened this device and tried to do a secure inclusion from the binding, this is what i get:
If its a case of adding it to your database then ill progress with it.

020-12-12 15:19:26.503 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'zwave:device:controller:node22' to inbox.

==> /QPKGs/OpenHab/userdata/logs/events.log <==

2020-12-12 15:19:26.503 [home.event.InboxAddedEvent] - Discovery Result with UID 'zwave:device:controller:node22' has been added.

2020-12-12 15:19:40.937 [me.event.InboxRemovedEvent] - Discovery Result with UID 'zwave:device:controller:node22' has been removed.

2020-12-12 15:19:40.942 [hingStatusInfoChangedEvent] - 'zwave:device:controller:node22' changed from UNINITIALIZED to INITIALIZING

2020-12-12 15:19:40.948 [hingStatusInfoChangedEvent] - 'zwave:device:controller:node22' changed from INITIALIZING to OFFLINE (BRIDGE_OFFLINE): Controller is offline

2020-12-12 15:19:40.951 [hingStatusInfoChangedEvent] - 'zwave:device:controller:node22' changed from OFFLINE (BRIDGE_OFFLINE): Controller is offline to ONLINE

2020-12-12 15:19:40.951 [me.event.ThingUpdatedEvent] - Thing 'zwave:device:controller:node22' has been updated.

2020-12-12 15:19:40.954 [me.event.ThingUpdatedEvent] - Thing 'zwave:device:controller:node22' has been updated.

2020-12-12 15:19:42.228 [hingStatusInfoChangedEvent] - 'zwave:device:controller:node22' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Node is not communicating with controller

==> /QPKGs/OpenHab/userdata/logs/openhab.log <==

2020-12-12 15:19:53.005 [INFO ] [alization.ZWaveNodeInitStageAdvancer] - NODE 22: SECURITY_INC State=FAILED, Reason=GET_SCHEME

==> /QPKGs/OpenHab/userdata/logs/events.log <==

2020-12-12 15:20:09.210 [hingStatusInfoChangedEvent] - 'zwave:device:controller:node22' changed from OFFLINE (COMMUNICATION_ERROR): Node is not communicating with controller to ONLINE

==> /QPKGs/OpenHab/userdata/logs/openhab.log <==
2020-12-12 15:20:32.232 [hingStatusInfoChangedEvent] - 'zwave:device:controller:node22' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Node is not communicating with controller

==> /QPKGs/OpenHab/userdata/logs/openhab.log <==

Did you follow my advice and request access to the database or do you wish somebody else to try?

If you want somebody else to try we need a copy of the xml file from the zwave directory under userdata. That contains information directly from the device.

It doesn’t create an xml, hence the request to @chris for his insight into the device.

If it doesn’t create an xml file it is not fully discovered by the binding. The information in the xml file is used as a basis for the database. It contains information the device is required to provide according to the standard.

If it doesn’t create an XML, then we’d need to see a debug log (as described in the ZWave binding docs) to understand what is happening.

1 Like

No problem Chris. I’ll get and post.

1 Like

Hi @chris

Hopefully everything you need in these to give me some advice. Node 23 is the latest attempt in these logs

zwave - node23 - part 1.log (964.3 KB) zwave - node23 - part 2.log (788.8 KB) zwave - node23 - part 3.log (709.0 KB)

hmm…
so just checked my zwave folder again today and i have an xml generated…

  <homeId>0xd9b23d4d</homeId>
  <nodeId>24</nodeId>
  <version>4</version>
  <manufacturer>0x346</manufacturer>
  <deviceId>0x202</deviceId>
  <deviceType>0x101</deviceType>
  <listening>false</listening>
  <frequentlyListening>true</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_VERSION</commandClass>
    <commandClass>COMMAND_CLASS_MANUFACTURER_SPECIFIC</commandClass>
    <commandClass>COMMAND_CLASS_DEVICE_RESET_LOCALLY</commandClass>
    <commandClass>COMMAND_CLASS_POWERLEVEL</commandClass>
    <commandClass>COMMAND_CLASS_BATTERY</commandClass>
    <commandClass>COMMAND_CLASS_SECURITY</commandClass>
    <commandClass>COMMAND_CLASS_SECURITY_2</commandClass>
    <commandClass>COMMAND_CLASS_CONFIGURATION</commandClass>
    <commandClass>COMMAND_CLASS_ENTRY_CONTROL</commandClass>
    <commandClass>COMMAND_CLASS_INDICATOR</commandClass>
    <commandClass>COMMAND_CLASS_ALARM</commandClass>
    <commandClass>COMMAND_CLASS_SUPERVISION</commandClass>
    <commandClass>COMMAND_CLASS_FIRMWARE_UPDATE_MD</commandClass>
  </nodeInformationFrame>
  <associationGroups class="concurrent-hash-map"/>
  <endpoints class="concurrent-hash-map">
    <entry>
      <int>0</int>
      <endPoint>
        <deviceClass>
          <basicDeviceClass>BASIC_TYPE_ROUTING_SLAVE</basicDeviceClass>
          <genericDeviceClass>GENERIC_TYPE_ENTRY_CONTROL</genericDeviceClass>
          <specificDeviceClass>SPECIFIC_TYPE_SECURE_KEYPAD</specificDeviceClass>
        </deviceClass>
        <endpointId>0</endpointId>
        <secureCommandClasses/>
        <supportedCommandClasses class="concurrent-hash-map">
          <entry>
            <commandClass>COMMAND_CLASS_SECURITY</commandClass>
            <COMMAND__CLASS__SECURITY>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
            </COMMAND__CLASS__SECURITY>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ZWAVEPLUS_INFO</commandClass>
            <COMMAND__CLASS__ZWAVEPLUS__INFO>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <zwPlusVersion>0</zwPlusVersion>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__ZWAVEPLUS__INFO>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_BATTERY</commandClass>
            <COMMAND__CLASS__BATTERY>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__BATTERY>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_MANUFACTURER_SPECIFIC</commandClass>
            <COMMAND__CLASS__MANUFACTURER__SPECIFIC>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <initSerialNumber>false</initSerialNumber>
              <deviceManufacturer>838</deviceManufacturer>
              <deviceType>257</deviceType>
              <deviceId>514</deviceId>
            </COMMAND__CLASS__MANUFACTURER__SPECIFIC>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ASSOCIATION_GRP_INFO</commandClass>
            <COMMAND__CLASS__ASSOCIATION__GRP__INFO>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <autoSubscribeGroups/>
            </COMMAND__CLASS__ASSOCIATION__GRP__INFO>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_VERSION</commandClass>
            <COMMAND__CLASS__VERSION>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <libraryType>LIB_UNKNOWN</libraryType>
            </COMMAND__CLASS__VERSION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ALARM</commandClass>
            <COMMAND__CLASS__ALARM>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <alarms/>
              <v1Supported>false</v1Supported>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__ALARM>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_DEVICE_RESET_LOCALLY</commandClass>
            <COMMAND__CLASS__DEVICE__RESET__LOCALLY>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
            </COMMAND__CLASS__DEVICE__RESET__LOCALLY>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ASSOCIATION</commandClass>
            <COMMAND__CLASS__ASSOCIATION>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <maxGroups>0</maxGroups>
            </COMMAND__CLASS__ASSOCIATION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_CONFIGURATION</commandClass>
            <COMMAND__CLASS__CONFIGURATION>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <configParameters/>
            </COMMAND__CLASS__CONFIGURATION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_INDICATOR</commandClass>
            <COMMAND__CLASS__INDICATOR>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <isGetSupported>true</isGetSupported>
              <supportedIndicatorsInitialised>true</supportedIndicatorsInitialised>
              <supportedIndicators/>
            </COMMAND__CLASS__INDICATOR>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_FIRMWARE_UPDATE_MD</commandClass>
            <COMMAND__CLASS__FIRMWARE__UPDATE__MD>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
            </COMMAND__CLASS__FIRMWARE__UPDATE__MD>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_BASIC</commandClass>
            <COMMAND__CLASS__BASIC>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</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_POWERLEVEL</commandClass>
            <COMMAND__CLASS__POWERLEVEL>
              <version>0</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>0</versionSupported>
              <powerLevel>0</powerLevel>
              <powerTimeout>0</powerTimeout>
            </COMMAND__CLASS__POWERLEVEL>
          </entry>
        </supportedCommandClasses>
      </endPoint>
    </entry>
  </endpoints>
  <nodeNeighbors/>
  <lastReceived>2020-12-13 18:57:04.360 UTC</lastReceived>
</node>
1 Like

Great!
So now you should be able to add it to the database :wink:

on it as we speak. :slight_smile:

1 Like

although i dont see a button or anything to add a new device…

Did you follow the guide & submit a ticket to request database access? :wink:

yeah just see that have added a ticket.
So once the device is in the database…
its available for all versions of the binding?
I cannot update to 3 (wouldnt want to at present anyway) as im running on a qnap nas and the latest version available for it is 2.5.10.

So once the device is in the database…
its available for all versions of the binding?

Not immediately.

  1. The database is periodically ( usually at least weekly) exported to GitHub
  2. The OH build processes then use that information when they build a new snapshot binding.
  3. You can then manually install the snapshot binding, usually using a script
    Zigbee and zwave manual install script
  4. You then need to delete the Thing from OH and add it back, completing discovery to get the new binding information,

2.5.11 was released earlier this week.

Not that I can find for QNAP.

Likely there is a user that maintains that, unfortunately.

If QNAP runs Docker there are Docker images on Docker Hub though.