在之前华为苹果远程控制中心的评测文章中,我们谈到了它的一些不足之处。比如语音和联动,可以少操作控制,但是今天我们完全可以自己解决这个问题,让华为的语音助手小I控制小米的家用设备。只要你敢想敢做,华为小I的语音控制不是梦。先简单说一下原理。原理如下图所示。
我们实现的原理是用华为语音助手控制苹果远程控制中心的红外遥控设备,openmqttgateway的红外网关解码苹果发送的红外码,然后ha就可以根据红外码控制连接到ha的任何设备和服务。
下面就按照下面的示意图开始实际操作吧。华为苹果远程控制中心与华为智慧生活平台的连接在之前的开箱评测中已经完成,在此不再赘述。让我们开始openmqttgateway的构建。
1.设置openmqttgateway IR红外网关1。购买要购买的电子元件。
首先,看一下原理图。我们需要的元器件是nodemcu,红外接收模块,杜邦线缆。这三项就够了。我们不需要红外发射模块。如果还需要红外发射功能,也可以自己购买。
node MCU模块的实物如下图所示
淘宝价格十元左右。
红外接收模块的实物如下图所示。
红外接收模块价格不止一块。
Du-bang线如下图所示。
杜邦线价格如下,40块才几块钱,我们需要三条杜邦线。
以上电子元件都可以直接从淘宝上购买,也就十几块钱。
2.接线
根据原理图,物理接线如下图所示。红外接收模块的VCC电源正极引脚连接到nodemcu 3V3引脚,红外接收模块的GND电源负极引脚连接到nodemcu 3V3引脚,红外接收模块的数据引脚连接到nodemcu D4引脚。
3.下载固件
从以下网站下载esp8266的IR网关固件nodem cuv 2-IR-firmware . bin:https://github.com/1technophile/OpenMQTTGateway/releases.
4.刷固件
从https://github.com/marcelstoer/nodemcu-pyflasher/releases.以下网址下载nodemcu刷机工具NodeMCU-PyFlasher
双击新下载的node MCU-py flash打开画笔工具。
选择nodemcuv2-ir-firmware.bin刚下载。
选择nodemcu所在的通讯端口,
点击FlashNodeMCU开始刷机。
小米手机连wifi开热点消耗流量吗12.jpg">等待下面的提示框提示刷机成功后即可退出刷机软件拔下nodemcu
5、配置网关
给网关重新上电后,nodemcu红外网关会自动建立一个ESP开头的WiFi热点,我们用电脑连接到该节点,在浏览器输入192.168.4.1,就会打开网关配置界面。
点击“Configure WiFi”打开详细的配置界面,输入你的WiFi 名称 WiFi密码,输入home assistant所用的MQTT server的IP地址端口和mqtt账号密码,并记住gateway name和mqtt base topic,后面homeassistant里要用到。
最后点击Save进行保存,模块会重启连接你的WiFi和MQTT服务器。
二、homeassistant的设置1、MQTT服务器增加网关所需的账号密码(此步应该在网关设置MQTT账号密码前)
openmqttgateway保存好WiFi账号密码及MQTT账号密码重启后,可以在HA MQTT broker日志内看到openmqttgateway连接到MQTT broker的记录。到此已经证明openmqttgateway已经可以和homeassistant进行通信了。
2、监控红外码
回到MQTT控制台
点击“选项”进入MQTT控制界面,在监控主题那输入“home/OpenMQTTGateway_ESP8266_IR/IRtoMQTT”然后点击“开始监听”
此时用小苹果发射红外信号,即可解码小苹果发射的红外信号。
3、编写自动化
下面我们就可以根据上面监听到的红外码编写自动化,比如你小苹果遥控中心发射的是灯的开灯的红外码,则我们可以编写接收到此红外码则执行开灯操作。下面的示例就是我用华为小苹果遥控控制米家吸顶灯的自动化示例。填写完自动化配置后,重新加载自动化或重启homeasssitant后,这样我们就可以用华为小艺语音助手控制小米米家的智能吸顶灯了。
三、测试完工下面我们再重新梳理一下操作流程。第一步就是在华为智慧生活APP的小苹果遥控中心设备中添加对应的设备,比如你要控制的是灯,那你就添加个灯类型的设备(不需要有真实的设备),然后按下刚添加的灯的遥控器的灯“打开”的按钮,监听红外码,记下备用,然后再按下灯遥控器的“关闭”按钮,同样监听红外码,记下备用。然后在homeassistant内编写的自动化中写入刚才的红外码,完成自动化的编写。这样最终就实现了用华为小艺语音助手控制可以接入homeassitant的各种各样的第三方设备了。我们最后就可以用华为手机、华为智能音箱、华为智慧屏内的语音助手测试能否顺利控制刚才添加的设备了。经过我的实际测试,发现还是很好用的,每次都是箭不虚发。之前还有点担心红外信号容易丢失或监控不到,实际测试效果让人满意。