前言
家里的N1盒子、海美迪盒子都没有红外,没有买蓝牙遥控器,2.4G遥控的效果也不理想,之前只能用悟空遥控来遥控,但是虫子大神的接入HASS的插件已经无法使用,并且每次想遥控电视的时候都要打开悟空APP,悟空APP广告也很多,所以一直寻找更为便捷的遥控方式,后来发现HA自带的androidtv组件就可以发送ADB命令,但是延迟很大,一直没有拿来使用,近期仔细看了一下官方文档找到了延迟的原因,目前通过HA的ADB集成发送遥控指令,利用nodered的redmatic-homekit节点中转,homekit的TV组件做前端,可以开关盒子电源,快捷选择应用,跟appletv遥控一样遥控,效果还不错,特此分享给大家。
使用效果
操作步骤
一、打开安卓电视或盒子的ADB调试模式,由于盒子类型太多,此处请自行百度,不细表;
二、在configurantion.yaml文件内插入以下内容并重启,host为电视/盒子的IP地址;
media_player:
- platform: androidtv
name: Android TV
device_class: androidtv
host: 192.168.x.x
三、重启HA后就可以发现media_player.android_tv这个硬件了,可以到服务中测试发送adb命令,具体命令可以到github上查看;
四、通过ADB发送UP,DOWN,HOME等命令时,设备响应速度会很慢,所以需要Android
TV集成的androidtv.learn_sendevent服务来获取sendevent命令,执行这个服务后按下原来遥控器的按键,会像HA里边学习红外码一样获取到一串sendevent命令,把第三步里边的’HOME’命令替换为sendevent命令,延迟就会小到可以忍受了;
五、media_player.select_source也是Android
TV集成里的一个服务,可以直接打开应用;
六、以上遥控服务已经调通,后续可以在lovelace里添加按键面板或遥控器面板,个人计划是前端用homekit,自动化用nodered,所以HA的前端设置本篇不再展开,继续分享一下将遥控接入到homekit,由于HA的homekit集成暂不支持模拟TV硬件,所以需要通过nodered的redmatic-homekit节点来转,我的nodered流是拿了IOB论坛一位大佬的流修改来的,大佬的帖子不知道什么原因搜索不到了,贴两个差不多的帖子供大家参考,具体中间的转换函数如何写的也不太懂,就不献丑了,直接分享我的流了, 需要的可以到我的个人网站下载直接直接导入使用