Z-NET Integration with HA

The more options for ZWave, the merrier IMO. If it works w/ ZWave JS, then it’s a + in my book!

3 Likes

Yes, in fact we had to install ZWave JS components onto it to make it work with HA.

According to this post the Z-NET is using ser2net to expose the serial port. If that’s true (or is exposing the port by similar means), you can use Z-Wave JS UI remotely (e.g. as an add-on in a VM running HAOS) and set the device path to the TCP serial port destination, tcp://z-net-host:port, and it should just work. Z-Wave JS natively supports TCP serial ports.

If the host is capable of it, I always recommend to others to run Z-Wave JS locally, and connecting remotely via websocket, as that cuts out the “middleman”. So if that’s supported by Z-NET natively, then all the better. It makes more sense to use TCP serial ports for very low performance devices, IMO. Still, some people use it with success.

This could help a lot as often the location of the servers is not in the ideal location for a zwave dongle.

With a POE (power over ethernet), it could be installed and powered and placed in a central location.

As other have said, this solution may already exist.

PoE is not included on these but you could use an injector.

Back in about 2015, Sigma Designs Inc. produced a hardware Ethernet to Z-Wave device for distributed hotel room control with a software stack called Z/IP. Basically PoE + a box for (say) two hotel suites (where the 100+ node Z-Wave network limit would be exceeded across the building).

Here’s a contemporary report and a Z/IP ZIPR gateway hardware picture:

The openHAB project looked at it (I still have many of the original tech documentation PDFs), but the hardware only worked with the proprietary Z-Wave software Z/IP API stack so it went nowhere. At the time, the hardware was available from suppliers like Farnell, but I’ve not seen any reference to it for a long time.

For me, extending your existing Z-Wave mesh is preferable to creating another island. With more IPv6 friendly alternatives like Thread on the horizon, unfortunately don’t see the point!

(For reference, I have many tens of Z-Wave devices in production use.)

I could not get this to work, although I might have missed something. I think you need to reconfigure zwave-js to use zwave-js/UI and then configure it to use the network connection. I agree though that it is better to not run Z-Wave over TCP if possible although it does work. The modifications we made to the ZNET connect directly to the Z-Wave interface inside the ZNET so it does not use ser2net. We are pushing to ensure our hardware works with as many systems as possible and offering a pre-built solution makes it easier for the less technical user. RPI boards are still hard to find and we do not use that hardware, so we have a good supply. If you can connect to it with ser2net, you can use that solution, we did not remove ser2net, that still functions.

Sorry guys, the community automatically flags users with the same IP. I’m assuming you’re all logging in from work and the system thinks you’re the same person. It only flags you if you post on the same thread. Just PM me if you want others to sign up and I’ll see what we can do.

Ah, understood. Yes, we’re both at the office here and that’s a static IP. I think it’s just the 2 of us for the time being. Rich is in development so he’s the one I’ll normally defer to for coding questions.

I’ll let him know what happened. Let me know when he can try again or if I need to post for him.

Have him try now

I’ll let him know, thanks… appears to be there now! :+1:

When you want to have a surface pro mounted on the wall, wish local installed ha, and don’t want to have a nasty cable running next to it. Especially when more protocols (zwave, zigbee, rf) are needed. Don’t want to ruin a additional server. So yes I think there is interest for this.

I really liked my Z-Net (I have 2 doing nothing now) for the sole reason I could put it anywhere.

So will this be an update to z-net that allows Zwave JS to run on it? Will it work on z-net v3? Would it still be able to work with homeseer?

I’m definitely interested. Right now I’m trying to get socat installed in a Zwave JS docker container so I can get it to connect to z-net.

Our goal would be to ship one product that could be used for HS or HA with a simple settings change off the “911” maintenance page. Initially, this would be on new G3 units. Once this is in place, we can take a look at updating previous models or offering some kind of instruction set on how to do that.

1 Like

If you are going this route, you should be able to just use a tcp://host:port path in the Z-Wave JS UI z-wave configuration, instead of installing socat and referencing a local serial device.

1 Like

I’ve been using 2 different Z-Net devices with Home Assistant for months now. In fact I was switching it back and forth between HomeSeer and Home Assistant without any issues and all the Z-wave devices worked in each system (while connected). I didn’t make any changes to the Z-Net for it to work.

I’ve mostly used Z-wave JS UI for this (it used to be called something else) and it works out of the box with the TCP://IP-Address:Port syntax. With that support, no need for any serial port redirection software on Home Assistant, as the linked conversation above discusses.

The biggest issue I’d have with this is a lack of RPI updates to the Z-Net. AFAIK, once it leaves HomeSeer it never updates again unless you do it yourself. I know some people are OK with that, but it’s not a good security best practice.

Edit: To clarify my earlier post, I’m running the Z-Wave JS UI Addon under my Home Assistant Host (Debian now, but RPi 4 earlier). This is as a standard Supervised install. From the HA machine Z-Wave JS UI goes network to the Z-net with it’s standard ser2net configuration. This setup is trouble free for some time now. Not sure what the advantage of running Z-Wave JS UI directly on the Z-Net would provide, there would still be a TCP connection between the 2 machines.

2 Likes

Agreed, no need for socat. This is supported directly in Z-Wave JS UI. I’m using that now.

1 Like

Thanks for posting this, I revisited my setup and I did get this working. This is the easiest solution as it will work with all the ZNETS without any modifications. I will describe the procedure just to be clear:

  1. Install the JS UI add on from the community store and start it
  2. Click the “Open Web UI” link that is on the same page where you started the add on. This brings up the web interface of JS UI so you can manage your Z-Wave devices.
  3. Click on the settings icon on the left and then expand the Z-Wave section.
  4. Make sure you create your security keys, or copy in your existing keys if you already have a network
  5. In the “Serial Port” section enter the IP address and port of your ZNET like:
    tcp://192.168.2.100:2001
  6. Click “Save” at the bottom of the screen. If it cannot connect to your ZNET you will an error message.
  7. If it connects ok, you can add/manage your Z-Wave devices from here, click on the first icon on the left.
  8. At this point the integration is not linked to Home Assistant. Go back to the JS UI add on page and note the “hostname” that is listed, it will be something like: a0d7b954-zwavejs2mqtt
  9. In HA click on Settings then Devices and Services, then Add Integration and select Z-Wave JS
  10. It will ask if you want to use the Supervisor Add On, uncheck this then submit.
  11. The next screen will ask for the web socket connection to the running zwave JS UI add on, enter the hostname from step 8 in this format:
    ws://a0d7b954-zwavejs2mqtt:3000
  12. It should connect without an error.
  13. Your devices should now be available in HA

Let me know if this is working ok for you.

If anyone is interesting in running the full zwave-JS UI on the ZNET, I can post those instructions. The only advantage to this is that z-wave communications will not be sent over the network so there could be a performance improvement. Also, if you have a large HA system it might be helpful to offload all the z-wave processing to another CPU.

If you already have a Z-Wave network and are using a USB dongle, you can plug that dongle into the ZNET and use that instead of the built-in Z-Wave. This way you do not need to rebuild your network. I can post instructions on how to do this if anyone wants to try it. You need to SSH to the box and change the ser2net config.
If you want to transfer your Z-Wave nodes to the Z-NET, this can be done. I don’t believe you can restore nodes via zwave-js UI, please correct me if I am wrong. You can load a trial of HS4, enable Z-Wave, backup your existing stick, then restore to the ZNET. This is an option. If you do this, make sure you run “Create Devices” from the Z-Wave plugin so HS4 builds its database of your devices. The backup uses this data, not raw data from the interface.

2 Likes

Our published doc for this is now here:Z-NET Integration with Home Assistant - Products

thanks @mterry63 Much appreciated!

2 Likes