I’m currently working on a solution about the Z-Way binding trouble. During the last days I think I identified the code where it starts to slow down.
I currently have a fixed binding running on my PI and if the system is not slowing down anymore I can release a new binding this weekend. But I can’t promise anything!
I can give a feedback tomorrow because normally the system starts to slow down after a few hours. Let’s cross fingers that the solution works…
I spent some time in the substitution of the Z-Way binding.
First I thought, that the MQTT App in Z-Way is unusable, too, but I have to admit, that it now runs like a charm.
Since my OH 2.3 snapshot and Mosquitto run on a NUC and Z-Way runs on a RPi colocated with OH 2.1 stable, after a reboot of the RPi I have to stop and start Z-Way again. After that it’s stable for more than 3 days now. I have “migrated” 7 rollershutters, 6 switches and 9 thermstats.
Althougt it was a lot of work and a trial and error learning curve, I am happy with it now.
It feels like, commands are executed with far less latency.
So, the connection between OH 2.1 and OH 2.3 is using MQTT?
Would you care to describe in more detail? A little step-by-step, if it’s possible…
It might be a workaround to our zway problems in 2.2
Both instances of OH, one WAFed production instance (2.1 stable) and one experimental (2.3 snapshot) use Z-Way as their Z-Wave Stack. While the production instance is connected over the Z-Way binding 2.1.0, the other instance is connected over MQTT using Mosquitto as the broker and the MQTT App within Z-Way. Both instances talk to the same hardware over different protocols and have their own items. Rules are the same, redundant on both instances. Does that answer your question @Mihai_Badea?
Yes, @Schnicki, it’s quite interesting…
Actually, with the MQTT app on z-way-server we could ditch the ZWay binding altogether.
As you said it will be a lot of work, on MQTT app you have to add each device by hand…
Hi
the binding seems to be working without slowing down. After about 24h testing responsiveness is the same as after starting.
I also improved latency of the binding and reduced the response time for commands from about 0.5s to about 0.1s at the improved binding.
So please feel free to test the new binding!
(Sorry I found no other way to share this easily… )
So the binding is a quick build and shall help testing the change. So on DEBUG level of the binding you find a " Handeling of command tooks xxx seconds" line to identify how fast the command is handled. So feel free to give feedback about your times.
Also the system usage of the CPU and RAM does not change over time:
Just for completion, I’ve wrote to Patrick (the original developer of the binding) and he said that he will take a closer look to the problem next week.
Thank you for the feedback. I also had no issues during the last days. So I will see that I will push the change to OpenHab if I have build a clean version of the binding.
since I am affected by the same ZWay problem I would like to try out your improved version with OH 2.2. Is the JAR you provide on Github compatible with OH 2.2. If so, what is the preferred method to install it?
@renestraub
Hi Rene,
Yes the binding is compatible with OH 2.2. Just uninstall the ZWay binding via Paper UI and place the .jar file within the Addons folder of your openHAB installation.
After a few seconds openHAB will detect the binding and install it automatically.
Thank you also for testing the binding.
Wire82
Running @Wire82 's build for almost a week now… and no problems!
And, indeed, there is a MASSIVE improvement in responsiveness!
Superb work, Johannes! Vielen Dank!
Ok, just installed the 2.3 binding. First impression is very good. Controlled devices react much, much faster than before. CPU load around 20% compared to >100% before. I’ll keep you updated regarding stability and performance.
Thank you very much for testing the binding. After it seems that everything works well I prepared everything for the PR at OpenHab. The version I want to push can be found here:
So fell free to test the, hopefully, final binding.