New Z-Way Binding

Tags: #<Tag:0x00007f18265a4660>

(Mihai Badea) #161

I found the answer myself :smile:
I can access the properties of a thing using the REST API.
I intend to write a rule that runs at some interval, parse through all the zway things and get the lastUpdate property with JSON transformation…

(Patrick) #162

OK :slight_smile:

(Mihai Badea) #163

Even easier with the HTTP binding:

Switch Front_Door_Contact {channel="zway:zwayDevice:192_168_200_202:7:sensorBinary-ZWayVDev_zway_7-0-113-6-Door-A"}
String Front_Door_Contact_LastUpdate "Front Door [%s]" <calendar> (Contact_LastUpdate) {http="<[$.properties.lastUpdate)]"}

(devTechi) #164

Well. I’m willing to test the new version, but if I have to deinstall the old binding all things/links will be gone. I need to have some time for that :wink:

But thanks for the new version. Will test it anyway…

(devTechi) #165

As I can see your changes were merged by @Kai. So they should be in next nightly builds shouldn’t they? Then I just can update to those.

(Patrick) #166

Yes, the changes are merged yesterday. I think the changes should already be available.

(John Schmitz) #167

Just started using this binding with Z-way v2.3.0. Seems good so far. Question: is it possible to access the secondary functions that are exposed in Z-way for devices? For example, with the Homeseer WS100+, a double or triple tap (for the central scene command class) appears on a secondary button with a property that tells you if it was a single, double, triple or long tap on the switch and whether it was the upper or lower switch. I would like to be able to trigger on this for rules. Possible? Thanks!

(pa1) #168

First things first… Really great work! Thanks!
I’ve done some testing with your binding, since it was always my intention to isolate the zwave stack from openhab engine. So with your binding it was possible for me to have a really great and redundant architecture.
I’m running OH2 on debian under VMware, without any passthru hardware. This allows me a HA config for that VM and really simple backup using Veeam.
For the zwave connection I do use two rpi3 with zway (one UZB and one Razberry). First rpi3 is primary, second rpi3 is secondary zwave controller. This gave me a better sleeping, since the chance I need to reinclude 100+ devices got minimized.
The rule-performance of OH was pretty much boosted to a higher level when running on Xeon E3 instead of ARM.

But… (there is always a but)… Atm it is not possible to invert the states of the rollershutters with your binding. Chris did this as a config parameter for the blinds-channel, which imho is a good idea, since zway does not allow to invert channels by itself.
So if you find yourself having to much time left in the evening, it would be a great feature for future releases.


(Patrick) #169


Does the question refer to Z-Way or Z-Way binding? Does it work in Z-Way? I think the device gets the new device type discrete sensor in Z-Way. If it is so the device is still not supported, since I have to implement the device type.

However, the device type discrete sensor should contain the relevant information such as counter, key attributes (0x00 - 0x06) and so on.


(Patrick) #170


Thanks! So you mean a configuration parameter which reverses the commands, with the command up the rollershutter drives down and at the command down the rollershutter drives upwards?


(pa1) #171

Yes exactly. Invert operation and a seperate invert percent would be perfect. Atm i rewrote the zwave js on zway, so for every motor a normal and a inverted vdev is getting created. But this is only hacking…

(John Schmitz) #172

I’m referring to the Z-way binding for the extra buttons and notifications that exist in Z-way for central scene command class. See this post in the Z-way forum for more information. Can this be added to the Z-way binding?


(Patrick) #173


A new ChannelType that provides the two-digit value? I would implement it and make a test version available.

The action is described with a two-digit value within the vDev metrics.level parameter: The first digit is the button/scene number, the second digit points to the action/keyAttribute of this button/scene (0=short press, 1=release, 2=hold, 3=short press two times, 4 = short press three times, and so on. Examples: Double Click button 2 => 23, Single Click button 1 = 10)

(Patrick) #174

I must ask again: What do you mean with invert percent?

(pa1) #175

The reported values for the channel (in percent) represent the position of the rollershutter (50% half open). If we invert the commands, it could be necessary to invert the percent/report too! Since oh2 always thinks b.e. 99 = open and 0 = closed, in some situations this should be inverted (but not always).
IMO it would be cool to have two parameters to invert the commands and the report.

(John Schmitz) #176

Yes, a new ChannelType with the button/scene number and keyAttribute would be great. Thanks!

(Avner) #177

I was able to include the EZMotion 3-in-1 (a.k.a. HSM100) motion sensor in here (that I failed to initialize with the zwave binding)

I have some general questions regarding the Z-Way binding:

  • Do I need to run the z-way-server? (in my testing I have it running while openhab2 is running)
  • How can I trigger an exclude from openhab. I see a garbage bin in Configuration -> Things and in Inbox but as I understand these only hide the device in the web interface. They don’t actually exclude it from the controller.
    (for Aeon Labs Gen5 stick there is a button in the properties of the controller that allows you to send an exclusion command, but I don’t see such a button for the UZB)
    For the UZB there are buttons for inclusion, secure inclusion, and exclusion in the Inbox (see img1) but I turn the exclusion button on, exclude the device and nothing happens.
  • Can zwave binding and ZWay binding run at the same time? I have a device that only initializes properly using the ZWay binding, but other devices that are already working with zwave binding. If they cannot run together and I use only ZWay binding can Habmin be used? (I read in some documentation that Habmin requires the zwave binding)


(Patrick) #178

Hi @Avner

Yes, the Z-Way server communicates with the Z-Wave devices via the transceiver. The binding only communicates with the Z-Way server via HTTP.

The actions for deleting Things and inbox entries do not have to do with the exclusion of devices from the Z-Wave network. The Z-Way binding reflects only the abstraction layer of the Z-Way server, so-called virtual devices. Only these can be searched, added and deleted in openHAB.

But the Bridge (representing the Z-Way server) provides commands to start the Z-Wave transceiver’s exclusion mode. If this is activated, a key must normally be pressed three times on the Z-Wave device to remove the device from the Z-Wave network. The Things in openHAB have to be removed separately or go into the status OFFLINE after a while

http://YOUR_IP:8083/expert/#/network/control provides this functions in Z-Way.

This is not possible as both systems require exclusive access to the Z-Wave transceiver.

I hope the information will help.

Best regards

(Mike Weiss) #179

Hi all,

I am trying to include the “Z-Wave Me Funkwandschalter, ZME_WALLC-S” to Openhab2 via Z-Way-Binding. All button presses are detected correctly and displayed in in the z-way-server.

In the Openhab Paperui there is no channel for device, except the battery channel.

The openhab.log states the following:

2017-04-07 10:44:30.716 [WARN ] [.zway.handler.ZWayZWaveDeviceHandler] - No channel for virtual device added: SwitchControl [ de.fh_zwickau.informatik.sensor.model.devices.types.ToggleButton@19893a0[creationTime=1491552414,creatorId=-1,deviceType=toggleButton,h=1039088625,hasHistory=false,deviceId=ZWayVDev_zway_Remote_24-0-0-6-S,location=0,permanentlyHidden=false,probeType=,visibility=true,updateTime=1491553022,metrics=de.fh_zwickau.informatik.sensor.model.devices.Metrics@f546f3[icon=,title=Z-Wave.Me ( Button,level=on,probeTitle=,scaleTitle=,color=de.fh_zwickau.informatik.sensor.model.devices.Color@1385507[red=0,green=0,blue=0],min=0,max=0],tags=[]]

I tried to define a device like this (the channel name was built manually):

String switchGF6 "GF6 [%s]" <wallswitch> (Erdgeschoss) {channel="zway:zwayDevice:192_168_178_32:24:switchPowerOutlet-ZWayVDev_zway_Remote_24-0-0-6-S"}

But the button presses are never propagated to Openhab :frowning:

Any solutions?

(Patrick) #180


The device type has not yet been implemented. I still have to implement this. There are a few other issues. On the weekend, I take this.

I will provide a test version here.