New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Zwave Cover not working with Garage Door opener #8323
Comments
Devices utilizing the barrier command class are not officially supported by OZW. If you want those devices to work with homeassistant you need to manually patch OZW. Here is info: http://community.home-assistant.io/t/linear-ngdz00-4-garage-door/2136 |
I'm running OZW's dev version. 2017-07-03 10:37:27.035 Always, OpenZwave Version 1.5.2717 Starting Up They've changed it from a binary switch to a list of settings. In homeassistant it always shows the door as open right now and if you hit "close" an error shows in the log:
|
Can you paste the full data of the node from zwcfg? The error suggests that the binary switcheck is present, but is receiving the wrong type. I think maybe the primary value passed in is wrong. |
Sure thing here you go:
|
This was implemented last year, given that it is based on OZW dev branch it can change again. At that time the barrier devices had binary switch that controlled the operation. How does the barrier devices get controlled now? Is this device the gd00z-4 ? PR is welcome.😊 My educated guess is that in the cover/zwave.py file we need to identify that the device is a barrier command class and set the value labels for opening/opened to open the garage door. Set closing/closed valur label for closing the garage door. But again just guessing since I do not own such a device. |
When controlling via OZWCP you set it the label to "opened" to open and "closed" to close it. The labels then update their status to indicate that the door is in motion via "opening" and "closing". Yes this is one of the GD00Z-4 devices. I havn't advanced my python skills enough to work on a PR yet. :( |
From what I can tell the vindex in this line: corresponds to is how to determine the state of the door now. Unfortunately I do not know how to modify the code to do this. |
I was able to get this working mostly with a modification to the zwave.py:
However the entity_id does not update in home assistant. |
The state is defined by the is_closed method. So you need to define inside that method. It is only true or false.If you want all the states, you should add that to device_state_attributes method. It will then appear as an attribute for the entity. Look at climate/zwave.py |
Thank you for the pointer, I think I have a quick dirty fix in place that I'll test when I get home. Then I'll look into a more elegant update using the climate component as a guide. |
@firstof9 is this the only change you needed to get the dev branch of ozw working? I can build a docker image with the ozw dev branch, all the switch and garage door opener show up in the ozwcache_0xf4f3c6ae.xml (dev renamed it), but only my switches show up in HA. I see the zwave. entity for the opener, but not a cover. entity. I do see a few sensor. entities for the opener. |
@hawk259 I made changes to Kinda a placeholder till I can get the states to change with the list as well, still working on that bit, but it does register "open" and "closed" in HA. |
I got everything working with those files. One thing I noticed was the dev branch of OZW couldn't find the manufacturer:
so I had to change all the identities in the all the .yaml files. What is weird is both the master and dev branch have the same entry for linear stuff in manufacturer_specific.xml. What else needs to be done for the HA patches? I have a template senors using states.cover.ID.attributes.door_state and it shows opened, opening, closing and closed as they move through. |
I'm working on having that door_state translate as the main state, but that may break the UI in some fashion, do you think it's working well enough to submit a PR for? |
Fixed by #8574 |
Home Assistant release (
hass --version
): 0.48.0Python release (
python3 --version
): Python 3.4.2Component/platform: Cover.Zwave
Description of problem: Cover is expecting the zwave garage door cover to be a binary switch, when OpenZwave Lib is providing a list of states.
Expected: List of configurables to populate in zwave control panel and and cover UI card should have some type of display/list of available settings.
From zwcfg.xml file:
The text was updated successfully, but these errors were encountered: