"Hey Google, Find my remote"

In my house I have two NVIDIA Shield Android TV’s. A unique feature that the shield has is “Find my remote”. You can open up the shield app and then in the 3 dots menu hit find my remote and as long as it’s within (bluetooth?) range of the shield the remote starts beeping.

I think it’s incredibly useful, but I don’t want to have to use the shield app. I came across Nvidia Shield Remote Locator : homeassistant (reddit.com) and realized I could wire it up to GH.

  1. Set up the Android TV integration with the Shield in configuration.yaml
media_player:
  - platform: androidtv
    name: Living Room shield_adb
    host: !secret living_room_android_tv_ip
  1. Set up Google Assistant integration
  2. Create an extra script for find my remote (in scripts.yaml)
remote_finder_living_room:
  alias: Remote Finder Living Room
  icon: mdi:target
  mode: single
  sequence:
    - data:
        command: am start -a android.intent.action.VIEW -d -n com.nvidia.remotelocator/.ShieldRemoteLocatorActivity
        entity_id: media_player.living_room_shield_adb
      service: androidtv.adb_command
  1. In the Google Assistant config expose the extra script (it will expose as a scene)
google_assistant:
  project_id: !secret google_assistant_project_id
  service_account: !include google_service_account.json
  exposed_domains:
    - switch
    - light
  entity_config:
    script.remote_finder_living_room:
      expose: true
  1. Sync GA devices.
  2. Create a routine in the Google Home app to activate that scene
  3. Profit
    Here’s a video of it in action: https://youtu.be/ZOjZ2DTkxCQ
16 Likes

Nice! Thank you for this.

Thank you for sharing this, very handy.

Just a note, I tried skipping the step 6 “Create a routine in the Google Home app to activate that scene”.
Instead, I say “Run, find my remote”, which also works.

However, I found this a little annoying, so created the routine in the Google Home app. I can also confirm this works for everyone in the home and not just with my voice.

Great work, thank you.

How do you handle multiple remotes?

I have multiple shields and just make multiple scripts for each.

I don’t think there’s a parameter for selecting the specific remote (if there is, it’s well hidden). When you fire the action for a given Shield, it just beeps all the remotes for that Shield at once. Good enough for the rare occasion I need it (when the fluorescent blue and green silicon remote covers aren’t enough for me to spot them amongst all my stuff!)

You’re the coolest person on the Internet for posting this. Thank you.

You will be even cooler if you could explain how could I convert this code into the button on my dashboard (I want to press to find the remote).

Thanks in advance!

It’s actually super easy. You just add the script entity to your dashboard and you end up with a button!

Thanks for quick response. I must be too thick or doing something wrong (to be honest I have HA from Sunday). I have this:

However doesn’t come up as enitity when I search for it?

**EDIT: Done it! Had to restart HA! **

Thanks!

1 Like

Hello,

Sorry for the bump, but I haven’t seen any posts that discuss how to make the work for the current integrations with Home Assistant. Looks like this post was back in January of 2021. A lot has changed in Home Assistant since then. It looks like Android TV integration “media_player” doesn’t exist anymore. Is there a way to integrate a NVIDIA Shield so I can use Home Assistant to locate the Remote?

@superm1 I figured it’s one of 3 things?

  1. You kept you HA install at an older version.
  2. You figured out a way to make things work for the current state of HA.
  3. You are no longer using this setup.

I’m still using it and it definitely still works but I am on 2023.05 or so because of some other bugs in a tplink integration.

Instructions work fine for me on latest home assistant.

I followed the directions and had some errors but fixed them. Now I am able to run the command without errors but nothing happens. No error but my remote doesn’t make the sound.

UPDATE:
On entity ID I had to choose:
entity_id: media_player.android_tv_192_168_69_73

192_168_69_73 being my shield pro IP

I am up to date in Home Assistant and everything still works with both of my shields. I haven’t changed anything since what I posted above.