Linear NGDZ00-4 Garage Door

ok. i’ll report back with any issues - seems to be ok so far (although i know i’m going to immediately regret saying that)

EDIT: [On Ubuntu 17.0]
versions were the same in the script
file locations needed changing
(in my example user was different)
I also had an issue with /usr/lib/python3.6… permissions (but seemingly easy enough to fix)

now on to test the garage door itself this eve

I got it to work. I’m using the following Dockerfile:

FROM homeassistant/home-assistant:0.65.5

RUN set -e && \
    pip uninstall -y python_openzwave && \

    pip3 install --upgrade cython==0.24.1 && \
    pip3 install --no-cache-dir python_openzwave==0.4.3 --install-option="--flavor=ozwdev" && \
    mkdir -p /usr/local/share/python-openzwave && \
    ln -s /usr/local/lib/python3.6/site-packages/python_openzwave/ozw_config /usr/local/share/python-openzwave/config

I did lose all my device names. Also, when I secure paired it, I got a MAC error, and had to do “Refresh Node” (and perhaps a restart) for it to get me the coveted “Cover” widget.

Yeah I wish they would just release a new version of openzwave. It’s been years since the last release.

1 Like

Tried these manually, all went fine but still getting same error :frowning:
Mar 17 20:24:56 raspberrypi systemd[1]: [email protected]: Main process exited, code=killed, status=6/ABRT
Mar 17 20:24:56 raspberrypi systemd[1]: [email protected]: Unit entered failed state.
Mar 17 20:24:56 raspberrypi systemd[1]: [email protected]: Failed with result ‘signal’

not going to lie - this is a MASSIVE ball ache.

who do we have to pressure on the OZW to add a freaking garage door?

cant build open-zwave-control-panel (and cant figure out what isnt right) - and REALLY dont want to have to do ANOTHER rebuild to get a garage door working

edited covers/zwave.py as per guidance above - but not able to install dev version of ozcp

You can use my branch of openzwave, I just synced to the upstream master branch.

1 Like

Could someone here good with linux check the below (i tried a lot of things, but ulitmately i feel this is what got it working). Hoping it will help others
EDIT:
ok finally got it working. dev worked ozwdev flavor did not. version 4.4.0 NOT 4.3.0
let me attempt to explain what is happening for not linux/non devs out there.
I’m using:

Ubuntu 17.10 with a virtual environment

so my steps were a little different - but the initial part was the same - and well should be similar across the board. note i use XXXX for your homeassistant location below.
It seems the barrier components are missing from open-zwave, despite HA being ready for when it is included. The task here is to build open-zwave from a dev version (or in this instance a fork with the barrier components) then installing it instead of the current version HA uses. The last step is to then tell HA the version is slightly different

i cant say if i needed libmicrohttpd or not, but follow these steps to get that installed.

cd /XXXX/src
mkdir libmicrohttpd
chown user:user libmicrohttpd             #<---note user:user change to your HA user
cd /XXXX/src/libmicrohttpd
wget ftp://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.19.tar.gz
chown user:user libmicrohttpd-0.9.19.tar.gz
tar zxvf libmicrohttpd-0.9.19.tar.gz
chown user:user libmicrohttpd-0.9.19
cd libmicrohttpd-0.9.19
./configure
make
make install

Then using Linear NGDZ00-4 Garage Door - #522 by winter

cd XXXXX               #{where XXXX} is your homeassistant folder
source bin/activate
cd src
git clone https://github.com/ryanwinter/open-zwave.git
cd open-zwave
make #{should make the open-wave stuff}
pip3 install cython wheel six
pip3 install 'PyDispatcher>=2.0.5'
pip3 uninstall python_openzwave
export LOCAL_OPENZWAVE=/XXXX/src/open-zwave    #{as above XXXX is Homeassistant folder}
pip3 install 'python_openzwave' --install-option="--flavor=dev"

now last thing to note is the version mine was 0.4.4
locate the file

XXXX/lib/python3.6/site-packages/homeassistant/components/zwave/_init _.py’

and change the line to this:

REQUIREMENTS = [‘pydispatcher==2.0.5’, ‘python_openzwave==0.4.4’]
(paying close attention to ensure the 0.4.4 matches whatever was built in the open-zwave build

1 Like

so i have it installed - and cover shows (and displays correctly when manually triggering garage opener) but it isnt responding to cover.open_cover or cover.close_cover

thoughts?

Does a cover show up in the dev-states? the <> button

so a reboot seemed to solve it - all working

A lot quicker locally than Wink! just a shame we cant bug the OZW folks to push boundary to master (or build HA with a open-zwave build that contains it just for us :slight_smile: )

1 Like

Usually the pip install method with the added flags work without any additional meddling so there really isn’t a need. :stuck_out_tongue:

if only it was that easy

:man_shrugging: worked when I updated my python venv from 3.4 to 3.5

also for what its worth - if anyone new to HA is reading this I used an automation with the MQTT payload as a trigger. The switch on the relay only sends ‘on’ payload to MQTT (whereas it will toggle the relay). So i had a challenge where the binary sensor i created for the switch would go on and stay on for a period of time (didnt pass the wife test). so I instead used this. when a switch is pressed ‘on’ is sent. I then turned the ‘on’ into a toggle to control the hue lights and my goodness is it quicker than wink + hue.

  - alias: "Relay 1 Upper switch"
    trigger:
      platform: mqtt
      topic: "Relay1/switches/upper"
      payload: 'on'
    action:
      - service: light.toggle
        entity_id: light.hue_light_group

but this method doesn’t work with hass.io – correct?

You are correct. This does not work with hass.io

Sorry for being dim, or rather not patient at this point to try and comb through everything. Can someone put together a quick summary/write up of the steps for a new hassbian user? I’ve been using HA from docker and with hass.io and I just moved over to hassbian and I would really like to give this a try but the information is kinda all over the place and I’d rather not have to reflash :slight_smile:

This finally worked for me! hass=65.6 python=3.6

cd /home/homeassistant/.homeassistant
sudo systemctl stop [email protected]
sudo su -s /bin/bash homeassistant
source /srv/homeassistant/bin/activate
cd /home/homeassistant/
git clone https://github.com/ryanwinter/open-zwave.git
chown -R homeassistant /home/homeassistant/open-zwave
pip3 install cython wheel six
pip3 install ‘PyDispatcher>=2.0.5’
pip3 install --upgrade cython==0.24.1
pip uninstall -y python_openzwave
sudo export LOCAL_OPENZWAVE=/home/homeassistant/open-zwave/
pip3 install python-openzwave --install-option="–flavor=dev"
exit
sudo nano /srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/zwave/init.py //update the requirements to 0.4.4
sudo systemctl start [email protected]

Now you can add your garage door using ‘add node secure’. Ensure you have removed it if not already before adding. You know it’s working if cover.xyz shows up under states.

Note: You will need to edit your init.py file after each upgrade. Before you start Hass after the upgrade, edit the init.py and update the requirements to 0.4.4, then you can start Hass safely without losing barrier support.

1 Like

I will try this, not to get the garage door to open, but to get support for a HVAC z-wave adapter that requires command class “Thermostat Setpoint V3” and “Thermostat Fan Mode V3”:

Systemair / Villavent Z-Wave adapter

Support for this has been added in the dev-branch of open-zwave.

@baardpt The previous post by @ttaidapos is NOT using the dev branch of openzwave. It is using a patched copy of the current openzwave. Eliminate the git and export lines.