Support for Z-Wave 700 Controllers

I know there has been talk in non-specific threads, but I wanted to start something just for Z-Wave 700 series controller compatibility. I noticed Silicon Labs is already starting to talk about building their 800 series products.

What is the main reason OpenHab doesn’t support the Z-Wave 700 series controllers yet?

Lack of API documentation? Money for licensing? Time to rewrite the binding? etc?

I believe the problem, if I recall correctly, is that silicon Labs is requiring the use of their proprietary C library and not allowing access through a serial API. Including such a library in an open source project would be problematic. Things may have changed since I read that or I may be misremembering.

What are the problems with that? Would a solution for that be to “press this button to install a third party Z-wave 700 plugin” or whatever? For example VirtualBox has their extension pack that is a separate download and is licensed differently.

But alternatively, what are the hiccups with making the current serial interface work with the 700 series hardware, without Silicon Lab’s official “700 series” stamp of approval?

It’s a massive rewrite of the binding - so sadly it’s a big problem.

In theory it’s possible (and much much easier) to modify the binding to use the existing serial API, but Silabs have changed this and not published the spec (unless it’s come out recently). I’ve personally not had the time recently to look through this to work out what’s changed. I was working on a commercial system a while back and Silabs stated they would release the spec. This didn’t happen, and the commercial customer decided they didn’t want to go with ZWave due to concern over its longevity, and moved to Zigbee instead.

1 Like

Would the Z-wave spec be inadvertently embedded into the Z/IP source code? If they are translating everything to IP, it seems like it would be in there somewhere.

There are different levels of specification - the command classes are specified, but the low level API isn’t. Yes, you are right though - it’s always possible to decompile software, or look at data on the serial port to find out how something works. This is reverse engineering, and it’s how the binding was effectively written around 10 years ago as the API was not released.

This is however very time consuming, and error prone and as I said above, I’ve not had the time to sit down and try to work out what has changed in the 700 series API.

It’s possible - it just takes a lot of time.

Is OpenHAB using it’s own proprietary binding or is it making use of a third party managed project like OpenZWave or something similar?

The openHAB binding doesn’t make use of any other libraries.

OpenZWave is pretty much unmaintained now for quite a long time.

Is that because of the Z/IP direction the official group is going or another project taking its place?

I don’t think it’s anything to do with Z/IP. It’s just that the maintainers seemed to not have time to continue the project and there has been no significant activity since about 2019. Most projects that used openZWave have now moved to other libraries from what I can see.