February 24, 2017

I’m in the process of evaluating alternative solutions to the Wink (I really want the Central Scene functionality for the HomeSeer Switches!). After a brief foray into HomeAssistant (which doesn’t support it either), I decided to try OpenHAB 2. It’s early in that process, but so far it looks promising.

Unfortunately, ESXi has an issue or three with USB passthrough support.

The Platform

HardwareSuperMicro SYS-5019S-ML, Xeon E3-1270v5, 64GB RAM
HypervisorESXi 6.5 (standalone)
Guest OSScientific Linux 7.2
Z-WaveAeotec Z-Stick GEN 5
SoftwareOpenHAB 2.0.0

The Problem

The installation of OpenHAB 2 was relatively straightforward, and at first it seemed to work normally. Unfortunately, after only ten minutes or so, it would start reporting all my Z-Wave devices as down. At first I thought maybe I was having reception problems, or maybe the Z-Stick wasn’t working as well as I’d hoped – but at the same time, I was still able to send commands even if I couldn’t get status updates back.

I tinkered with this for quite some time before stumbling on the solution buried in a thread on the OpenHAB community forum.

The Solution

ESXi 6.5 apparently introduced a new USB driver, and that’s the source of the problem. It just doesn’t play well with the Z-Stick. I hope they fix it, but in the mean time the solution is to switch back to the legacy drivers – which is easier than one would think.

Just do this:

  1. Enable the SSH service on your VMware host and log in to the SSH console.

  2. Execute the following command:

    esxcli system module set -m=vmkusb -e=FALSE
    
  3. Reboot your VMware host.

  4. Edit your VM and re-add the Z-Stick.

And with that, your Z-Stick will work perfectly with OpenHAB (and probably others, like HomeAssistant).

The VMware knowledge base article describing this procedure can be found here.