Greetings. I’ve spent the better part of a week wrestling with Google integrations with Home Assistant. I’ve finally got things setup and can see all my cameras, Nest Doorbell, Hub Max, and the various Google pods around the house. All my Chromecasts show up as well.
Within Home Assistant I am able to control the Chromecasts and the hubs. The cameras, however, all display as Idle with no way to interact. If I turn them on from the Google Home app, there is no stream in Home Assistant. I’ve created various automations to control the cameras based on who’s home and who isn’t, but without any kind of control from Home Assistant, the cameras never turn on/off.
I’m assuming since every device I have has shown up, that my API, etc. are configured correctly, but after countless hours I’m about to give up.
Any help is appreciated!
Edited to add that when I test the service under Developer Tools using Camera: Turn On I get Failed to call service camera.turn_on. Unknown error
The same holds true for any of my cameras.
Hi. What entity card are you using? The cameras have no notion of being idle vs streaming vs on vs off: they just always work any time you want to stream them. For me, i just click the image and see a stream. Can you give more detail about why you can’t get a stream playing? (Ignore any states or services)
Good morning. They are picture entity cards for all the cameras. They all show idle on my dashboard even with the cameras broadcasting live. Clicking on the card displays a blank view with no image from the camera seen.
Interestingly enough, my Hub Max will display video in the dashboard assuming the camera is already running, but this is the only camera that works. The new Nest Cam (battery) models I have throughout my house don’t do anything.
I don’t seem to have any control over turning them on/off from within Home Assistant, so I’m still having to do that manually from the Google Home App.
Editing to add that even though the cameras are the battery models, they are all hard wired.
Ah, new battery cams! the problem with the new cams is that it was an entirely new way to stream video and the API was just updated a couple weeks ago, and I added support this week. The next home assistant release you’ll see it working though it’s still a work in progress to make it look smoother. Stay tuned!
Great, thanks so much. I had read a thread on Reddit from a month ago mentioning the new API, but thought the update from a few days ago was the one to address that. I’ll just try to be patient!
Incidentally, shouldn’t I still be able to turn the cameras on from Home Assistant? I have automations setup which would start/stop them based on location, but that doesn’t work for any of them (Hub Max included). My other location-based automations work as expected, so I’d like to think I’m doing it correctly.
My words are failing me today, sorry. So within the Google Home app, I have interior cameras showing as being off. There’s no video, audio, or anything going on with them. Originally I was using their presence detection to automatically run the Home/Away routines to turn them on or off based on occupancy. Their presence detection is garbage, so that’s why I’m using HA paired with Life360.
Currently when the house is empty, I have to manually switch it to Away in the Home app which turns the cameras on and I can view the stream. Switching back to Home turns them off and there is no stream visible in Home.
What I want to have happen is use the HA automations to either switch my house to either Home or Away based on occupancy (which would activate the cameras), or just disregard that completely and just turn the cameras on or off.
I’d like the cameras to register as on or off within Google Home, so that the streams are still visible there as I am the only one in my house nerdy enough to bother with Home Assistant - my kids, for example, would like to be able to open the Google Home app and check on the dogs.
I was trying to use camera.on or camera.off for that purpose, but that doesn’t seem to have any affect.
I see, thanks. There is a fundamental decision about how the nest API works that won’t let you do that, so if you turn the cameras off in Google home or the Nest app that shuts off API access: consider it a privacy feature so anything you have given API access to accepts your decision to shut off the cameras. You can’t turn it back on over the API. (I am guessing the above is the rationale from the nest API team perspective, which is at odds with your use case)
I guess that makes sense from a privacy standpoint. You wouldn’t really want malicious code from outside hitting the API and turning on cameras at inconvenient times.
I should play around with the Assistant Relay integration to see if I can pass it the verbal command to run the Home/Away routines based on my family members’ locations. ie. If HA detects (via Life360) that everyone is away, I could somehow get it to pass the command “Hey Google, everyone is gone” and have it run the Away routine. Does that make sense?
UPDATE: The Assistant API does not support routines. Really cool add-on, however. Back to the drawing board with the cameras, though.
True. I’m looking a way to enable/disable the camera of my nest hub max. I do use the away/home routines but it does take only my phone and my wife’s phone in account. I would like to disable it also when my mother or mother in law are in house. But I don’t want to add them to my Google “house”
The Nest SDM API does not enabling / disabling cameras. (see traits), but maybe something like homebridge or badnest can do this since they use unsupported/unofficial APIs. I don’t use those so not sure.