Zwave - Yale YRD220 Lock

I don’t know where to find a snapshot for it, and I don’t know how to compile it myself.

Just in case anyone was interested, these are the commands that I found that work for me to update the z-wave binding, to the only snapshot that I know of that works.

Make sure that you uninstall the z-wave binding in Paper UI first in the addons section. It will not show as installed when using an addon jar file.

cd /usr/share/openhab2/addons
sudo wget -O org.openhab.binding.zwave-2.3.0-SNAPSHOT.jar http://www.cd-jackson.com/downloads/openhab2/org.openhab.binding.zwave-2.3.0-SNAPSHOT.jar

password: openhabian

sudo systemctl restart openhab2

Wait for the service to restart.

Then make sure the correct z-wave binding is installed.

openhab-cli console

password: habopen

bundle:list | grep ZWave

The installed version should be shown.

logout
exit

That’s the link.

You can compile from the source I sent the link to.

That is the snapshot build… not the dev, which is yet to be merged to master. Once in master, that will work. You need dev for security CC.

Where did I say that was the link? I’ll go back and correct it.

Oh, never mind. I got confused because I edited my post, and I thought you were referring to the link in my post. And now I realize that you were referring to the link in your post. So, it looks like I need to figure out how to compile it.

Nope… just download the jar from the first post in that thread.

http://www.cd-jackson.com/downloads/openhab2/org.openhab.binding.zwave-2.3.0-SNAPSHOT.jar

That is the same file that I am currently using 2.3.0.201803171831, without the most recent development changes.

I am very eager to test out those new changes. I hope that it gets added to a snapshot soon, or I can somehow figure out how to compile it.

Chris compiles it from time to time and updates the dev thread link, which is pinned at the top. The link is in the first sentence.

https://community.openhab.org/t/oh2-z-wave-refactoring-and-testing-and-security

Go to the first post at the very top and download the jar. No compiling necessary.

I’ll do an update tonight - I think the only change is to add the extra parameter to the alarm channel.

It seems to be working great now. Thank you very much.

Now, if I could get it to change user codes and lock settings, without corrupting the settings, it would be absolutely perfect. :slight_smile:

I did a hard reset on the lock and removed it and added it back again, and only used Habmin to try to edit the settings. But it still corrupted the user codes and I had to reset the lock again. I am not very enthusiastic about trying it again. It is a lot of work resetting it and adding it back.

Interesting, I can confirm this behavior. This used to work though.

I have made a post about this issue with a workaround that seems to work for me:

@chris, the new level string works perfectly. It gives the slot for the user code and reveals all of the other granular notifications outlined in the support document. Thank you and nice work!

2 Likes

I am getting this error and none of my locks are updating status.

lRepositoryImpl] - Validation issues found in configuration model 'locks.rules', using it anyway:
There is no context to infer the closure's argument types from. Consider typing the arguments or put the closures into a typed context.
2018-04-23 22:17:22.553 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'locks.rules'
2018-04-23 22:17:23.905 [INFO ] [el.core.internal.ModelRepositoryImpl] - Validation issues found in configuration model 'locks.rules', using it anyway:
There is no context to infer the closure's argument types from. Consider typing the arguments or put the closures into a typed context.
2018-04-23 22:17:23.938 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'locks.rules'

The other error did go away though.

Which version of OH are you using? The second rule uses triggeringItem, which would only be available in an OH snapshot build, so you may need to change the rule. I do not get the validation warnings that you are getting and I’m using build 1263. What does VS Code show you?

I was on openHAB snapshot 2.3.0 Build #1259. I had not used VS Code. I imagine this is what you are talking about… https://code.visualstudio.com/docs?start=true ? I Just installed it but not really sure what to do with it…

I now updated to the 1263 snapshot… but still have same error.

2018-04-24 22:01:07.590 [INFO ] [el.core.internal.ModelRepositoryImpl] - Validation issues found in configuration model 'locks.rules', using it anyway:
There is no context to infer the closure's argument types from. Consider typing the arguments or put the closures into a typed context.
2018-04-24 22:01:07.601 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'locks.rules'

==> openhab.log <==
2018-04-24 21:52:27.877 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Lock: Update lock states after alarm_raw event': The name 'gLock' cannot be resolved to an item or type; line 6, column 22, length 5

Here is the particular item I am trying to get a status from as defined in the items file

Switch Door_DoorLock "Lock [MAP(lock.map):%s]" <lock> (gUS_Home,gLock,gSleep_Security) {channel="zwave:device:51112ebd:node42:lock_door"}
String Door_AlarmRaw "Lock: Alarm Raw [%s]" <shield> (gUS_Home) {channel="zwave:device:51112ebd:node42:alarm_raw"}

https://docs.openhab.org/configuration/editors.html#openhab-vscode

There must be a difference between the rule and lambda that I posted and what you have in your rule file. Or you do not have the JSONPATH transform service installed.

Transformation-jsonpath - 2.3.0.SNAPSHOT is installed. I will take another look at the rule but I am pretty sure it’s the same. Have already tried deleting and adding back a few times. Maybe something I need to edit in the file? For instance towards the bottom of the file I see some comments on notification types. Am I supposed to uncomment any of that after the “true”?

Nope. I put those in as a reference of the data I’ve seen from alarm_raw, in case someone wanted to handle them differently. If you post what you have in your rule file, I will take a look for you. VS Code with the OH extension will show you what in the rule file is causing the validation warning.

While writing a new rule, I noticed the same validation error and it made me think of your post. Did you create a gLock group? If not, the validation error could be coming from this line:

val actionItem = gLock.members.findFirst[ item | item.name.toString == inputItem.name.toString.replace("_Alarm_Raw","") ]

I’ve updated the example to include the gLock group in the items.