Linear NGDZ00-4 Garage Door

Anyone have any idea what the 5 sensors (Access control, alarm level, alarm type, burglar, and sourcenodeid) are for?

Type and level are used to report how the doors were unlocked and which slot/code was used to unlock

1 Like

So I gave up on this after one of the major Z-Wave HA upgrades caused me to have to re-do my config and I think it’s perhaps been nearly a year since trying this out again.

I tried pdobrien3’s method and while HA see’s a cover label (Garage Door Barrier State Label), I am unable to do anything with it though it does tell me if the garage door is up or down. Certainly progress since I didn’t see any cover devices until using the patched open-zwave stuff, but still not the way I assume it should work?

The version OZW_Log.txt shows as being used is 1.4.3046. I see in previous threads here discussions about using 1.5 but am confused as to which one to use?

The steps I did were basically:

git clone https://github.com/pdobrien3/open-zwave.git
cd open-zwave
make
make install (as root, just in case it needed to be system wide)
/etc/init.d/homeassistant stop (as root)

pip uninstall -y python_openzwave
export LOCAL_OPENZWAVE=/opt/homeassistant/git/open-zwave
pip3 install --no-cache-dir ‘python_openzwave==0.4.3’ --install-option="–flavor=dev"

/etc/init.d/homeassistant start (as root)

This is also using the latest stable version of HASS available from pip. Any thoughts on what’s going on here?

Are you running in a venv? I did what you did and it works great. But…I did not run as root. Wouldn’t there possibly be an issue with the home assistant user not having permissions to everything.

Yep HA is running in a venv with Python 3.6.5:

(homeassistant) hass@HomeAssistant:~$ python -V
Python 3.6.5

I only installed the Open-Zwave C library system wide just for testing (I actually originally didn’t do that but tried it as part of my testing to see if that’d make things work)

This is the exact steps I did and it’s been working perfect for about a week now.

logged in with root user
systemctl stop [email protected]

sudo su -s /bin/bash homeassistant
You should already be in your home directory, but just in case
cd /home/homeassistant
git clone https://github.com/pdobrien3/open-zwave.git

source /srv/homeassistant/bin/activate
cd /home/homeassistant/open-zwave/
pip uninstall -y python_openzwave

For ubuntu use export
export LOCAL_OPENZWAVE=/home/homeassistant/open-zwave/

on other flavors of unix it may be
setenv LOCAL_OPENZWAVE /home/homeassistant/open-zwave/

pip3 install --no-cache-dir ‘python_openzwave==0.4.3’ --install-option="–flavor=dev"

exit

systemctl start [email protected]

Does it instantly work or do you need to remove/re-add the device?

I thought 0.4.4 was the latest dev branch? Or am I mistaking things? HA seems to use 0.4.3 but if you use the install option of --flavor=dev, I guess that is what really sets the dev branch?

Hey buddy,
Could you share a little more info on how you did this in a docker container?

Do you do it manually each update?
And 1.5 with 0.4.4 versions I assume?

Thanks in advance :slight_smile:

Instantly. Did not even have to remove or re add any Seaver devices.

Can’t help with docker, but my version is 1.4.x

I was running 1.5 which worked great for the cover/ garage door but not so much for my schlage door locks.
This has been working perfectly for me do more than a week.

1 Like

Cool, good to know - hasn’t it kept all your devices too (specifically water sensors or power sensor into?)

Yes. I have mostly focused on locks, covers, switches, dimmers and definitely water sensors. I do have a few older power monitoring switches. They turn off and on. Have not checked power monitoring though.

Everything for me has bee. Very good

1 Like

I too am having issues with @pdobrien3’s excellent steps, and @ptdalen’s recap. I’m running in a Python venv, latest HA and Python 3.6. I have for some time been using the dev version of python_openzwave, installed with this command:

pip3 install python_openzwave --install-option="--flavor=ozwdev"

I run this after each HA update, then (before starting HA) go into the zwave __init__.py file and modify the requirements there to be 0.4.4 instead of 0.4.3 so it doesn’t reinstall the vanilla version. This works great for everything except my lock, which shows up as 0000/0000 unknown using the dev version. It works more or less as expected with the vanilla version.

A couple of questions:

  1. Is it necessary to use 0.4.3 with @pdobrien3’s tweaked fork, rather than 0.4.4?
  2. Is there a notable difference between --flavor=ozwdev vs. --flavor=dev in the pip3 command?

I may dig into the changes in the fork to see what I can find, barring other input.

Posting the fix in the hope it helps someone else.

So in moving to docker (thanks @edif30 for your assistance) - he helped me set up a dev environment to see if the dockerfile would work with the docker-compose i’m assembling - anyway the same error came up. So figured it was something in my config - and was.
Deleted some files:
Ozwcache.xml
Zwcfg.xml

This will remove the names of everything so write them down somewhere first :wink:

Error went away. I also spotted that ID 101 is the USB aeotec Stick.

Anyway hope that helps someone

1 Like

@m00dawg,

No need to do make or make install.

For those confused, using flavor=ozwdev uses the entire dev branch of openzwave. I found that using the dev branch broke more than it fixed.

Using my fork, or the directions to build your own, you get the master branch of open zwave with the barrier cover class files from the dev branch. Your files are also stored locally.

Once installed, I have upgraded multiple times without having to install anything. I used the 0.4.3 version of open zwave as it is the one recommended for use with Home Assistant. For clarity, I am not sure of the difference as I understand you are installing from local files so this is a bit confusing to me.

I end up with version 1.4.2957. I am installing on a raspberry Pi 3 in a virtual environment. Those trying to do it in docker, I can not help. I also believe I am running Python 3.5.3. Not sure exactly how to check but I opened python 3 from the raspi desktop and that is what it reported.

The steps I listed are what I did EXACTLY. I was very careful to document everything I did to a T

1 Like

Can you please tell me where this file is on your system? I also modified this a while back when I installed the dev version. I am pretty sure I put it back to it’s original state when I when back to my fork, which I think was blank, but I would like to check and report back.

It gets overwritten when you update HA.
In a venv it’ll be something like /srv/homeassistant_venv/homeassistant/lib/python3.5/site-packages/home-assistant/component/zwave/__init__.py

Yes, so my requirements are listed as pydispatcher 2.0.5 and python_openzwave 0.4.3

This was very confusing to me also in the beginning. Using install option --flavor=dev uses the files locally on your device. Using --flavor=ozwdev uses the dev branch of open-zwave.

1 Like