Garage doors not working in google home official app - Firmware 2.3.9.192

On Firmware 2.3.9.192 garage doors can be discovered by google home but are unable to be controlled.
Google responds with that device isn't setup yet using voice commands. Using the mobile app it shows the state of a garage door but no option to open/close.

Has anybody had any success with this?

1 Like

Can you post a screen shot of the device current states in the driver details?
Also, I've noticed that the device can't be controlled from the details screen in GH, but works fine from the main devices screen.

if you have it set as a garage door, google home won't allow you to control it. create a virtual switch and send that to GH for control. if you have a tilt/door sensor on the door as well, you can link the status of that to ensure the status of the door

I didn't test with voice commands, but it works from the GH UI, so long as you're on the main device page, it doesn't work from the device details screen.

ahh, my use case was using voice commands. i had to work around it with a virtual switch

Hi all,
The main device screen also does not work. If selected it will just open up the device page, due to the little arrow on the right pictured .
Voice control also does not work.

I will try a virtual switch to see how that goes

1000010407

I just added in a virtual garage door device (again) and it works fine on iOS
Mine don't have an arrow, can you post a screen shot of the device current states for one of these?

I have tried a virtual switch and have the same issue. no control through voice or the home app
Generic Garage door:

Virtual Garage door

According to this forum google is picking up the device as a contact sensor instead of a open close door.
Indo have it setup as a door in he though and google is recognising it as the device type garage

https://www.reddit.com/r/googlehome/s/Wu6KrAjUQt

That doesn't explain why I'm unable to replicate the issue.
We are explicitly removing any contact related attributes if the door controller contains them.
Also the contact device in Google home has a different icon than the garage door.

Hi Mike,

Your response helped me reach a solution . The virtual device still does n't work as I cannot change the driver code but my original device is linked to a custom driver code called 'Generic Component Garage Door Control'.
Removing the contact sensor attribute from the code had worked. Now I can command the device by voice and the app as it is recognised as a door over the contact sensor.

Thanks

Hi Can you post a link to the "Generic Component Garage Door Control" code?

I'm having the same issue. Google Home does see the garage door opener but I am unable to control it. I see the Garage Door icon next to the device in Google Home. I've tried multiple drivers.

I was able to hack a custom driver and removed capability "ContactSensor" from the driver code. After that my garage door opener with open / close does show up in Google Home and works. I'll have to do some additional testing.

Hi mate,

looks like you may have sorted it but this is the driver code am now using for Generic Component Garage Door Control:

/*

Copyright 2021

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.


Change history:

0.1.32 - tomw - initial version
0.1.40 - tomw - Added ContactSensor emulation
0.1.52 - Yves Mercier - Add health check capability
0.1.59 - Yves Mercier - Change healthStatus handling

*/

metadata
{
definition(name: "Generic Component Garage Door Control", namespace: "community", author: "community", importUrl: "https://raw.githubusercontent.com/ymerj/HE-HA-control/main/genericComponentGarageDoorControl.groovy")
{
capability "GarageDoorControl"
capability "Refresh"
capability "Health Check"
}
preferences {
input name: "txtEnable", type: "bool", title: "Enable descriptionText logging", defaultValue: true
}
attribute "healthStatus", "enum", ["offline", "online"]
}

void updated() {
log.info "Updated..."
log.warn "description logging is: ${txtEnable == true}"
}

void installed() {
log.info "Installed..."
device.updateSetting("txtEnable",[type:"bool",value:true])
refresh()
}

void parse(String description) { log.warn "parse(String description) not implemented" }

void parse(List description) {
description.each {
if (it.name in ["door"]) {
if (txtEnable) log.info it.descriptionText
sendEvent(it)
// emulate contact sensor that mirrors door state
// note: any status other than "closed" will be treated as "open".
sendEvent(name: "contact", value: (it.value == "closed") ? "closed" : "open")
}
if (it.name in ["healthStatus"]) {
if (txtEnable) log.info it.descriptionText
sendEvent(it)
}
}
}

void refresh() {
parent?.componentRefresh(this.device)
}

void close() {
parent?.componentClose(this.device)
}

void open() {
parent?.componentOpen(this.device)
}

void ping() {
refresh()
}

1 Like