I managed to do a ‘quick and dirty’ integration with this, and while setting it up is slightly cumbersome it actually works well. Essentially gives you the instantaneous responsiveness you expect from a remote control. I was very dissatisfied with the adb control, even after setting up the /sendevent commands it was still not good.
It is essentially a one-way local push mechanism. It is co-dependent on the androidtv (adb) integration being setup to interact with it as a media_player entity.
Pre-requisites:
androidtv integration already setup and in home assistant
IRusb and companion app setup/installed on Nvidia Shield (should work on other ATV devices, but not tested)
Custom Cards:
mini-media-player
button-card
Configuration:
In /config/configuration.yaml
# TCP Android Control
shell_command: !include shellcmd.yaml
Save, reboot config.
After reboot under Developer Tools you should now be able to issue the shell commands
shell_command.home_shield_livingroom
Test and confirm working with your shield.
Now at this point you can populate these commands into any remote UI you have setup.
Some of these commands may be redundant or nebulous, I haven’t tested every single one (I pulled these commands from a Savant profile I have used on my system for a few years)
Here at this link, though, is how I have chosen to implement it into a remote card (note you need to create an automation helper: ‘input.boolean.dark_mode’ to control some aspects of the remote. It is also worth noting I don’t use this card in this exact form, but rather as a popup card in a different UI).
You will need to replace the entity names with your entity names if you are going to use it.