Chromecast with Google TV Remote Card

Chromecast with Google TV Remote Card (CCwGTVRemoteCard) is a custom web component designed to act as a virtual remote control for Google TV. It integrates with Home Assistant to control Chromecast with Google TV devices, allowing you to navigate the interface, adjust the volume, and launch apps like YouTube and Netflix.

This component leverages the Home Assistant Android TV Remote integration for seamless control of your Google TV or Android TV device.

Automatic Installation via HACS

If you use the Home Assistant Community Store (HACS), follow these steps for an easy installation:

  1. Open HACS in your Home Assistant dashboard.
  2. Go to Frontend.
  3. Click the three dots () in the upper-right corner, and choose Custom Repositories.
  4. Add this repository URL: GitHub - schilea/ccwgtv-remote-card: Repository for Cromecast with Google TV Remote card and select Dashboard as the category.
  5. Once added, search for Chromecast with Google TV Remote Card in the HACS store and click Install.
  6. After installation, go to Settings > Dashboards > Click the three dots () in the upper-right corner > Resources in Home Assistant.
  7. Check if the resource was automatically installed
  8. If not, Click the + Add Resource button.
  9. Add the following URL and select JavaScript Module as the resource type:

/hacsfiles/ccwgtv-remote-card/ccwgtv-remote-card.js

  1. Restart Home Assistant to apply the changes.

3 Likes

@schilea this looks great, thanks for sharing. If you decide to extend, please consider allowing user defined buttons to do things like…

  1. launch user defined apps
  2. go to a pre-defined volume level (say we want to jump to volume 25)

I’d love to make a basic card (that doesnt look like a remote) so I can have it on my media player screen with the buttons I choose to show, hide, and custom define.

Can you send a command from Home Assistant to open the Max app?

For the moment no extra buttons can be added and, in order to start max, you should take one of the existing buttons, for example input, and replace its command with something like this:

        input:
          domain: remote
          service: turn_on
          service_data:
            entity_id: remote.cast_living_room_4k
            activity: https://play.max.com

Thanks for you kind word. Indeed user defined buttons are on my to do list but I need to find some time to deal with. On the other hand, if you want to make a basic card, make a try with chatgpt. You will be surprise of what you can obtain with minimum programming knowledge and Home assistant data structure.

1 Like

What I am using for the moment to launch applications installed on Chromecast is a grid card:
grid

App launch commands can be taken from here: Android TV Remote - App Links/Deep Linking - Guide

square: false
type: grid
cards:
  - type: picture
    image: https://upload.wikimedia.org/wikipedia/commons/2/2b/Kodi-side-by-side.svg
    tap_action:
      action: call-service
      service: remote.turn_on
      data:
        activity: org.xbmc.kodi
      target:
        entity_id: remote.chromecast_4k
    hold_action:
      action: none
  - type: picture
    image: https://upload.wikimedia.org/wikipedia/commons/0/08/Netflix_2015_logo.svg
    tap_action:
      action: call-service
      service: remote.turn_on
      data:
        activity: https://www.netflix.com/title
      target:
        entity_id: remote.chromecast_4k
    hold_action:
      action: none
  - type: picture
    image: >-
      https://upload.wikimedia.org/wikipedia/commons/thumb/1/11/Amazon_Prime_Video_logo.svg/450px-Amazon_Prime_Video_logo.svg.png
    tap_action:
      action: call-service
      service: remote.turn_on
      data:
        activity: https://app.primevideo.com
      target:
        entity_id: remote.chromecast_4k
    hold_action:
      action: none
  - type: picture
    image: >-
      https://upload.wikimedia.org/wikipedia/commons/thumb/c/ce/Max_logo.svg/1920px-Max_logo.svg.png
    tap_action:
      action: call-service
      service: remote.turn_on
      data:
        activity: https://play.max.com
      target:
        entity_id: remote.chromecast_4k
    hold_action:
      action: none
  - type: picture
    image: https://upload.wikimedia.org/wikipedia/commons/8/80/SkyShowtime_Logo.svg
    tap_action:
      action: call-service
      service: remote.turn_on
      data:
        activity: https://www.skyshowtime.com/deeplink
      target:
        entity_id: remote.chromecast_4k
    hold_action:
      action: none
  - type: picture
    image: https://upload.wikimedia.org/wikipedia/commons/6/64/Disney%2B_2024.svg
    tap_action:
      action: call-service
      service: remote.turn_on
      data:
        activity: https://www.disneyplus.com
      target:
        entity_id: remote.chromecast_4k
    hold_action:
      action: none
  - type: picture
    image: https://upload.wikimedia.org/wikipedia/commons/b/b8/YouTube_Logo_2017.svg
    tap_action:
      action: call-service
      service: remote.turn_on
      data:
        activity: vnd.youtube.launch://
      target:
        entity_id: remote.chromecast_4k
    hold_action:
      action: none
columns: 7
1 Like