Linear NGDZ00-4 Garage Door

I am actually putting together some notes now so I do not have to research it every time. I would be more than happy to put those up once completed. There is also this thread (Linear NGDZ00-4 Garage Door) where winter teaches me. I am also lucky to get where I get as I usually have very little knowledge but happy to help wherever I can.

1 Like

@hawk259, thank you very much.

Clone my openzwave master patched fork it was just updated today

Or you can git clone the actual open-zwave github

if you clone the open-zwave github, you have to add the barrier cover files

This tells you how to fork a repo

This tells you how to sync a fork

This tells you how to push your changes to your own github if you want

Spend some time understanding those three links. It will help. When you fork to your local computer, make sure you do it with your homeassistant user. The command to get mine is:

sudo su -s /bin/bash homeassistant

Also make sure you fork everything to a sensible directory. Mine ended up in my homeassistant users home directory (home/homeassistant) and once I cloned the open-zwave github the path was home/homeassistant/open-zwave

To install open-zwave from your local folder:
I log in as pi, which has sudo permissions and run:

systemctl stop [email protected]

Then log into your virtual environment:

sudo su -s /bin/bash homeassistant
source /srv/homeassistant/bin/activate

change directories to your open-zwave directory (not sure this is needed)

cd /home/homeassistant/open-zwave/

Uninstall your current open-zwave

pip uninstall -y python_openzwave

Tell your computer where to find the files for installing open-zwave

export LOCAL_OPENZWAVE=/home/homeassistant/open-zwave/

Install open-zwave

pip3 install --no-cache-dir 'python_openzwave==0.4.3' --install-option="--flavor=dev"

Of course this has been added to my notes to make sure I install the right version:

1	Go Here 1 (HA git repo)
2	Find the version you want to run and under the version number three is a commit id (to the left of the zip icon), click on it.
3	Click on the Browse Files link towards the top right of that page
4	Scroll down until you find requirements_all.txt and click on it.
5	Search for python_openzwave and you find something like
              - # homeassistant.components.zwave
              - python_openzwave==0.4.3

Syncing local repository later (assuming you have configured your upstream). If you used my github, make sure to set your upstream to the open-zwave github so you don’t have to rely on me keeping mine updated :wink:

sudo su -s /bin/bash homeassistant
cd /home/homeassistant/open-zwave
git fetch upstream 
git checkout master
git merge upstream/master

Uninstall your current open-zwave

pip uninstall -y python_openzwave

Tell your computer where to find the files for installing open-zwave

export LOCAL_OPENZWAVE=/home/homeassistant/open-zwave/

Install open-zwave

pip3 install --no-cache-dir 'python_openzwave==0.4.3' --install-option="--flavor=dev"

Last step is to update your github repository if everything worked fine at the local repository.

git push origin master

If anyone sees any glaring errors, please let me know

2 Likes

This worked perfectly.

Issues I worked through. known entities had to be redone, but I expected that and had a copy, so it was quick and easy to get set back as it was before.

My Schlage BE 469 locks came up perfectly, all sensors exposed as they should be.

garage door opens and closes (most important, right. :-))

Thank you!

EDIT:

Here are the items that seemed to have some issues with DEV that are working
BE469 Schlage Deadbolt - issues with door slots
ZOOZ 4 in 1 motion sensor- issues with motion detection sensor
minimote 4 button controller - Could not get scene to activate properly.

Everything I have is working now

Awesome, thank you for the update. If you cloned the open-zwave github, can you possible provide a little more detail on how you added the barrier support files?

Also, anyone that can assist me with adding the ADC 2000 thermostat to open-zwave, I would be greatly appreciative.

I used your fork to create my own fork, and then used that following your instructions.

The only issue I had was with the syntax below

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

I had to change to (two dashes vs line)

"--flavor=dev"

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.