Home Assistant Cast

Home automation itself has never been a goal of Home Assistant. Instead, it’s a tool that allows us to have technology improve our life, and that of the people around us. I wrote about this 3,5 years ago, and it’s been our guiding principle in building out Home Assistant.

Today we’re introducing Home Assistant Cast to help with this. With Home Assistant Cast, people in your house can have quick access to see the state of your house and it’s residents, and quickly adjust the most important settings. This is achieved by running on Chromecast powered screens that you already have throughout your house: your Google Nest Hubs and TVs.

You can launch Home Assistant Cast by going to the Home Assistant Cast launcher website. It works with any version of Home Assistant released in the last year. Home Assistant Cast can show any Lovelace view, including support for custom cards and themes. Got no Lovelace configuration? Don’t worry, we’ll generate a view and show that instead.

For a demo, also check out the Home Assistant Cast launcher. If you have any questions, make sure to check the Frequently Asked Questions.

How it works

You need to authorize Home Assistant Cast to access your Home Assistant instance. Once it’s authorized, you can start Home Assistant Cast on your Chromecast device. Next, your Chromecast device will set up a direct connection to your Home Assistant instance and give you the option to pick a view to display.

Home Assistant Cast can:

  • Render Lovelace views, including custom cards.
  • Stream real-time data to make sure that the UI always shows the latest state of your house.
  • Navigate between views using navigate actions inside an entities card or using weblinks.
  • Instantly update the casted Lovelace UI when you update your Lovelace configuration.

About touch

We have been able to get touch controls working on the Google Nest Hub and other Google Assistant devices with a screen. The available configuration options to indicate that we’re a touch-optimized app did not work. We were still able to achieve touch controls by manipulating code that is injected into the Home Assistant Cast website when the Chromecast runs our receiver application.

There is no guarantee that touch controls will keep working, it might be blocked. It might stop this week, next month, next year, or it keeps working forever.

I hope that by releasing it with touch controls enabled, we can show Google that this is something that people want, and are willing to invest in for just this reason.

To make sure everyone sees it, I encourage people to share photos and videos of Home Assistant Cast in action on Twitter, Facebook, YouTube and other social media with the hashtag #homeassistantcast. Let’s share the love!

Coming soon and future plans

On August 7, Home Assistant 0.97 will be released. This release will allow launching Home Assistant Cast from the Home Assistant frontend. You can do this by including a new cast row that can be placed inside an entities card.

# Example entities card configuration
type: entities
entities:
  - type: cast
    name: Lights
    # The path of the view (or number)
    view: lights
    hide_if_unavailable: true

This is the first release of Home Assistant Cast, and so we focused on the minimum that was worthy of a release. We still have some more things planned:

  • Allow starting Home Assistant Cast from Home Assistant itself (not a browser), as part of an automation or script.
  • Use Home Assistant Cast as a text-to-speech target (inspired by lovelace-browser-commander by @thomasloven).

This is a companion discussion topic for the original entry at https://www.home-assistant.io/blog/2019/08/06/home-assistant-cast/
11 Likes

Amazing! Fantastic work. Is it only me but my custom cards shows for like 1 seconds, and after that it says that the elements missing with classic red squares?

1 Like

Custom cards require a little configuration to get working. It’s included in Home Assistant 0.97b3 (and later). For older installations, you can follow the instructions in the FAQ.

Besides the configuration, it is still possible for some custom cards to not work. It’s up to the custom card devs to fix that. Some instructions on where to look are in the FAQ.

1 Like

I have the same problem

Even tough i have several cast devices on my network i get a message saying there are no devices? What to do?

Loving those comments :rofl:

2 Likes

Now if only I could convert my old nexus 7 into a nest hub somehow so I can save £120… :thinking:

It works, just like that. This is the reason I bought Nest Hub few days ago. Brilliant!

Didn’t find the way to force the theme yet.

Awesome! After adding the CORS allowed everything loads up perfectly even all the custom cards! Responsiveness is great on all sliders and swiping, I am really happy with the experience! The only thing that doesn’t work seems to be the “press and hold” action which doesn’t bother me at all since I don’t use it!

You guys are killing lately with all the new stuff and improvements!

2 Likes

Whats the advantage of using this over catt? From the documentaiton you need to have HA exposed / accesable over https. Ive been using catt a few weeks now and i do not expose my instance, also live stream works great. Thank you

1 Like

Amazing! Cool stuff.

Unfortunately some custom cards still doesn’t work even after adding the CORS to the configuration file.
Also the Touch doesn’t work with a Chromecast on a Dell Touch Monitor. Might just be the restriction on the Chromecast streaming it as video - but I thought I would let you know.

2 Likes

11 posts were split to a new topic: Using CATT

Mine don’t show up either. I have 2 Home Hubs and several chromecasts and it says “There were no suitable Chromecast devices to cast to found”. I hope this is fixed soon because I’m really looking forward to this feature.

I think I’ll give catt a try.

So far HA cast only seems to cast specific views from my HA. It doesn’t display the top or side navigation bars. You actually have to choose which screen to cast so in my case I had: Home, Daily, Security and Monitoring. If I wanna switch to another view then you have to use your phone or put a button on HA screen for view/page navigation it seems.

I think that’s the whole idea in that specific views and cards are shown. For me I think the ability to only show and control what I want other family members to see is a better fit, plus in theory I could have different devices in different rooms show items specific to that room. With catt it looks like the whole UI is available

I have 4 hubs in different rooms. All with tabs specific to the room/floor. I use compact header to hide tabs and the tab you mainly want to see just cast that url.

Look in your Google home app. Cast to the name of the hub like my example. Case sensitive

This is awesome!! And also annoying. Now I want to go and buy a Google hub, JUST FOR THIS!!! :thinking:

So can this be a default screen on the hub? I’m not sure exactly how the hub works, or does HA need to be cast to it every time you want to use it?

Can’t make this work. I have a ‘real’ chromecast connected to my TV and a few other devices I can cast Youtube to but I get no devices when I try the demo. I can use TTS to them as well.

@DavidFW1960 does cart work for you? Does on my Chromecast.