OH2 Z-Wave refactoring and testing... and SECURITY

I use the newest openhabian and installed the z-wave binding jar files listed above. I am using z-stick s2 and the lock I am trying to pair is schlage be469. when I enter the code and search for the lock, it found the device but it always failed to pair. I got error message when I first time pair the device, it will have SECURITY STATE=FAILED. I found the device in the inbox afterward, and I added, it recognized my device and know that is be469, but when I add a swith item to its lock, I got error for COMMAND_CLASS_DOOR_LOCK not found

Absolutely - this is why I donā€™t like to jump to conclusions, and like to look at the logs as they only tell the facts (not all of them of course, but what they do say is factual) :wink:

How many times have you tried this? Iā€™m not, not believing you, but something I see a lot is ā€œif I do X, it worksā€ - and often itā€™s nothing to do with ā€œXā€ - it just happened to work that once so the conclusion is drawn.

On this problem, from looking at the logs from your failed inclusion, thereā€™s nothing in there thatā€™s showing any external problem. Maybe there is something going on thatā€™s not in the logs, but I think itā€™s unlikely that these external influences only appear during secure inclusion. Honestly, Iā€™d be much happier if there was a bug in the binding as we can fix that - if weā€™re saying ā€œitā€™s ghosts and goblins at workā€ then, well, thatā€™s just not engineering :).

Letā€™s sit on this for now. If you have the opportunity to try a fresh install with a device, then it might be interesting. Otherwise, hopefully Iā€™ll get this BE469 in the coming days and maybe the issues there will shed some light on the problem. Of course, if there really is an issue with the number of devices, then the BE469 isnā€™t going to help since itā€™s (nearly) the only US device Iā€™ll have so I wonā€™t be able to build a network :confounded:

@chris

Regarding zipato RGBW lightbulb not making warm white.

Blockquote
It looks like thereā€™s an error in the database. Sorry itā€™s taken so long to look at this.
Thereā€™s an error in the database exporter. This is now fixed and Iā€™ll do an update later that will hopefully solve this.

Did you manage to fix it and if so, do you need to compile a new JAR or will it work with the one on top of this thread?
Cheers!

Gotcha. Again, totally agreed. Logs tell facts. :smiley:

I usually subscribe to that idea too that Iā€™m missing something else, but in this instance itā€™s the only variable changed, and it did validly apply multiple times. Iā€™ll look into testing it out for you when I get back and supplying some logs for you to compare. Perhaps youā€™re BE469 will have come and been able to test, and I can provide some alternatives to look at. Since it will be the same lock, hopefully that can help too correlate between your logs, my solo device log, and my prod setup with multiple nodes. Thanks for considering this something to note though. Iā€™ll wait till I have some log proof to share any difference seen.

PS - If anyone will be at BLACKHAT or DEFCON in VEGAS next week, send a message and we can meet up!

1 Like

I updated the database exporter, but I canā€™t remember if the binding has updated since. Iā€™ll try and do an update tonight.

Cheers
Chris

1 Like

ok. got it working. Need to exclude the device first event I reset the controller

Iā€™ve been having a devil of a time trying to get my Kwikset 914 to securely include and I canā€™t figure it out. When I include through habmin, it gets through the normal include part and appears to succeed but the debug log says ā€œSECURITY_INCLUSION_FAILED Failed at step SECURITY_NETWORK_KEY_SET: 10000ms passed since last request was sent, secure inclusion failed.ā€ Iā€™m not sure which end is failing though. Looking at the attributes of the controller, everything has a yellow question mark though. Is that normal? I can include the lock securely just fine with other software like Home Assistant, but trying to then start openhab it complains about not being in secure inclusion mode even though the same key was used in both systems. I thought that once the device was securely included into the zwave dongle no matter what the means, as long as the software has the same network key it should work fine. Is that not true? Iā€™m definitely missing something here and I just canā€™t seem to figure it out

Z-Wave binding version info (just fyi, and data based on the date of this post):

a) ā€œMainstreamā€ stable: 2.1.0 (without date/time info) (included in openHAB 2.1.0 Stable Release)
b) ā€œMainstreamā€ Snapshot: 2.2.0.201707122217 (included in openHAB 2.2.0 Snapshot Build #986)
c) Refactored/Development/Security Snapshot: 2.1.0.201707062012 (the one under discussion in this thread)

To find out which version you are currently running

  1. Enter in the openHAB console using ssh openhab@localhost -p 8101 with password: habopen
  2. Issue the following console command: bundle:list -s |grep -i zwave
    It should display something like (note: the result below is for the ā€œMainstreamā€ Snapshot, not the development)
openhab> bundle:list -s |grep -i zwave
206	|	Active	|	80	|	2.2.0.201707122217	|	ZWave Binding	| org.openhab.binding.zwave

(watch out not to have 2 bundles installed for the Z-Wave :slight_smile:)

1 Like

Iā€™m pretty sure that this error message doesnā€™t come from this version of the binding. Are you sure you are running the development version? If youā€™re not running the right version of the software then this simply isnā€™t going to work (no matter how you included the device).

I thought I was, I installed quite a few different versions of things over the weeks trying to get everything to work but I guess I must have grabbed the wrong branch for this one. I uninstalled the existing binding and dropped in the one posted at the top of this thread and no more issues with security after deleting/re-adding all my Things. Thanks for the quick reply, I guess I just got myself confused with all the info here

Iā€™ve updated the binding - let me know if the RGBW is working now.

Thanks, I just tried it and it works great!

Just sent my second donation for 10eur as a thank you for the great work :slight_smile:

1 Like

@Chris, found another thing in the database.
This device:
http://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list/devicesummary/632#

In HABmin/development binding it is now listed as 0064:3001:0000:1.0 and unknown device.
In the old binding xml it is described as 0x3001
So so far it is correct.
But in database it is now changed to be 3002.
It should be changed back to 3001 or added as separate device?

Iā€™m not sure when this changed, but I would be surprised if the latest development binding doesnā€™t show it at 3002 as I did a full resync of the databaseā€¦

In any case, that doesnā€™t matter - I suspect that we probably should have both 3001 and 3002 in the database.

Will you grant me rights to duplicate it in your database or will you do it yourself?
Cheers!

Both :slight_smile:

Iā€™ve updated the database and updated your accessā€¦

Cheers
Chris

Thereā€™s no code change necessary. alarm_number is a special case in the alarm converter. If you just add another DecimalType channel it will provide the event code. I modified the jsondb again and changed the binding type of alarm_general to DecimalType and I now have the event codes coming through and I can see whoā€™s pin unlocked the door. I tried to add a new channel alarm_event but in PaperUI I receive an error trying to link the channel so I resorted to using the existing alarm_general and the error went away.

Which version of the Yale lock do you have? I have a YRD246, but donā€™t seem to have access to the alarm number channel. I have alarm (access) showing as a switch. My understanding is the alarm (access) channel should be similar/identical, though I could very well be wrong.

Do you happen to know if I should be able to modify the json for this channel instead? Stop binding, edit json, restart binding Iā€™m assuming?

Thanks!
I deleted the thing in HABmin and deleted the xml in zwave folder and then searched for new devices.
My node is however still marked as unknown.
This is the xml generated:

<homeId>0xd90b1add</homeId>
  <nodeId>5</nodeId>
  <version>3</version>
  <manufacturer>0x64</manufacturer>
  <deviceId>0x0</deviceId>
  <deviceType>0x3001</deviceType>

And to my eyes it looks like it should fetch the correct database entry but it doesnā€™t.
Is there somewhere else I should delete something zwave related (temp file maybe)?

Sorry, but Iā€™ve not produced a new binding since this was changed yesterday, so youā€™re still running the old binding unless you compiled your own version?