I created a pull request with the first version of a new binding that integrates the Z-Way system. Not all features are already available, but the basic functions should work. In the near future improvements and enhancements will follow.
I’v attached the corresponding build file for testing to the pull request.
The technical documentation of binding is available here: README
The getting started with actual build of binding for testing you can find here: GETTING STARTED
Please feel free to contact me. Any feedback is welcome.
There already is a zwave binding which is quite mature and robust. Is there a reason why this is a new binding as opposed to working with the existing binding to add Z-Way support?
I thought ZWay is a controller software. So this binding, as I understand it, would be like the MiOS binding for a Vera controller.
Instead of a ZStick or the like they would run ZWay on another RPi?
The description of Z-Way on their website (https://www.z-wave.me/index.php?id=22) makes it sound like it does a lot of if not the exact same things as the existing Zwave binding, hence my question. And I mainly raised the question to get everyone thinking and collaborating. The last thing we need is a bunch of incomplete and competing bindings which all implement part of the same technology stack.
The binding readme has some info which may help clarify
Approach of Z-Way binding
The idea behind is the integration of Z-Wave through a bridge (Z-Way controller). The existing, certified Z-Way stack can be used to build, configure and control the Z-Wave network. By using the REST API all devices are loaded from Z-Way and represented as openHAB elements. The sensor data and actuator states are constantly updated and commands are passed to the Z-Way system.
Differences to the Z-Wave Binding?
- the Z-Way binding communicates over the REST API and not directly with a Z-Wave transceiver
- the Z-Wave devices are already converted into an abstract model in Z-Way, no device descriptions have to be configured
This is a use case . If you already have a controller or gateway (another host) with Z-Way. But openHAB and Z-Way can also be run on the same host.
The approach seems to be the same as the MiOS Binding.
Z-Way is a standalone system with Z-Wave Stick, firmware, a communication stack, an automation engine and a user interface. Everything together is a smart home gateway, for example the Popp HUB. This gateway could be integrated by the Z-Way binding. Another example is the combination of a Western Digital NAS with the Z-Wave Stick (see here), which transforms the WD into a Z-Way controller. This combination could also be integrated by the Z-Way binding.
I think the Z-Way binding can provide an added value for openHAB. Of course, many features overlap with the Z-Wave Binding. But other bindings also linking to systems that support the Z-Wave protocol …
I developed the binding, so I can use both systems in parallel (both systems require the exclusive access to Z-Way stick).
Like I said, I mainly just wanted to start the conversation. I’m not against the binding itself.
This is definitely Ok and I look forward to more opinions and feedbacks.
@Kai This is my first contribution to openHAB. If you have some time, can you check please my pull request? What I have to do to get the label “newbinding”?
Many thanks for this contribution! Although there is some overlap with the Z-Wave binding, I agree that it nonetheless makes sense as it provides a different kind (higher-level) of integration with Z-Wave. As openHAB leaves the user the choice about what best matches his needs, this binding is definitely welcome.
If you have some time, can you check please my pull request3?
I definitely will, but I cannot yet promise when I will find the time, since there is quite a pipeline of PRs waiting for review… I am very sorry to be a bottleneck here If anyone else here is interested to do a review or actively test it and provide feedback, please do so.
What I have to do to get the label “newbinding”?
Oh, that’s pretty easy, I just added it
thanks for the quick response and the “newbinding” label
What is the correct way to update the pull request? Can I commit unless a review was initiated?
Yes, feel free to push further commits to your branch (and thus the PR) at any time.
Do you know if some sort of license is required for the z-way server? I have a zwave.me usb dongle but can’t seem to be able to get the z-way server to do anything with it (device port etc have been defined correctly). Reading the z-way server forum, there seems to be some confusing responses, with some posts saying the license is in the usb dongle, others saying a license will have to be purchased.
That stick comes in two versions: one without a license (cheap) and one with a license (expensive):
The UZB comes with two versions: UZB1 is the plain stick without any
additional software license. It can be used with any third party Z-Wave
controller software. UZBWAY is the combination of the UZB stick plus a
license key for the Z-Way controller software. Z-Way will always require a Z-Wave.Me hardware to run, either a UZB (with license) or a Razberry board.
Thanks @sihui. I wasn’t aware of the two flavours and naturally, mine is the one without the license!
You can buy an upgrade license. Couldn’t find one in the US, but here is one in Europe
This software upgrades a Z-Wave Standard UZB Stick (UZB1) to a UZB stick capable running Z-Wave.Me’s controller software Z-Way. Just install Z-Way, go to the expert User Interface and include the key code you purchased.
There may be other sites selling the upgrade too.
Please check our “Where to Buy” section for Point of Sales where to buy license upgrades.
Hi @pathec ,
nice Binding. Thank you a lot for that, and of course the Connector.
I’m running openHAB on a different hardware than the Z-Way system. The Discovery was successful and the few ZWave devices connected to the Z-Way system on my RaspPi were found afterwards too.
But after a while all Z-Way Things went offline. Log says:
[WARN ] [nding.zway.handler.ZWayBridgeHandler] - Z-Way library - Internal server error (HTTP status code: 500).
Do you know why this is happening?
Nevertheless in my event.log I can see coming events from the zway-devices. Very interesting.
So it is working just fine
Generally I like the idea to be able to connect different ZWave networks to one openHAB instance. If someone need to use more than 232 devices he/she is able to achieve that
Thank you that you have tested the Z-Way binding!
The HTTP status indicates that the error occurs in the Z-Way server. Maybe I send a command in the wrong format or the error occurs in the Connector. You can help me to localize the error, if you are sending the Z-Way log or the relevant part of Z-Way log.
I’m new in openHAB and still finding out, when I have to put a things/bridge offline and when back to
online. Currently also commands of things in the offline status are processed and the state
is update by Z-Way. I will improve this in a future version.