3.3 KiB
title, description, ha_category, featured, ha_release, ha_iot_class, ha_config_flow, ha_domain, ha_codeowners
title | description | ha_category | featured | ha_release | ha_iot_class | ha_config_flow | ha_domain | ha_codeowners | ||
---|---|---|---|---|---|---|---|---|---|---|
Google Cast | Instructions on how to integrate Google Cast into Home Assistant. |
|
true | pre 0.7 | Local Polling | true | cast |
|
You can enable the Cast integration by going to the Integrations page inside the configuration panel.
Home Assistant Cast
Home Assistant has its own Cast application to show the Home Assistant UI on any Chromecast device. You can use it by adding the Cast entity row to your Lovelace UI, or by calling the cast.show_lovelace_view
service. The service takes the path of a Lovelace view and an entity ID of a Cast device to show the view on. A path
has to be defined in your Lovelace YAML for each view, as outlined in the views documentation. The following is a full configuration for a script that starts casting the downstairs
tab of the lovelace-cast
path (note that entity_id
is specified under data
and not for the service call):
'cast_downstairs_on_kitchen':
alias: Show Downstairs on kitchen
sequence:
- data:
dashboard_path: lovelace-cast-
entity_id: media_player.kitchen
view_path: downstairs
service: cast.show_lovelace_view
Home Assistant Cast requires your Home Assistant installation to be accessible via https://
. If you're using Home Assistant Cloud, you don't need to do anything. Otherwise you must make sure that you have configured the base_url
for the http
integration.
Advanced use
Manual configuration
By default, any discovered Cast device is added to Home Assistant. This can be restricted by supplying a white list of wanted chrome casts.
# Example configuration.yaml entry
cast:
media_player:
- host: 192.168.1.10
{% configuration %} media_player: description: A list that contains all Cast devices. required: true type: list keys: host: description: IP-address of a Cast device to add to Home Assistant. Use only if you don't want to add all available devices. The device won't be added until discovered through mDNS. required: false type: string ignore_cec: description: > A list of Chromecasts that should ignore CEC data for determining the active input. See the upstream documentation for more information. required: false type: list {% endconfiguration %}
Docker and Cast devices and Home Assistant on different subnets
Cast devices can only be discovered and connected to if they are on the same subnet as Home Assistant.
When running Home Assistant Core in a Docker container, the command line option --net=host
or the compose file equivalent network_mode: host
must be used to put it on the host's network, otherwise the Home Assistant Core will not be able to connect to any Cast device.
Setups with cast devices on a different subnet than Home Assistant are not recommended and not supported.
If this is not possible, it's necessary to:
- Enable mDNS forwarding between the subnets.
- Enable source NAT to make requests from Home Assistant to the Chromecast appear to come from the same subnet as the Chromecast.