曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

2020-07-04 16:59:56 31点赞 183收藏 16评论

最近研究home-assistant(以下简称HASS)上了瘾,将小米全家桶基本都实现接入了。家里刚装了大土豆SUPER新风机,很优秀的产品,但毕竟是小众设备,还没有爱好者制作HASS的插件。查阅了github和HASS官网很多文章后,发现自制插件也不是那么容易的,需要改miio库,然后才能对应开发插件。笔者也不会任何编程语言,研究了一下决定放弃这条路。

后来发现了NODE-RED这个神器,与HASS配合相当完美,把自动化控制的能力水平提升了一个等级。在成功将SONY电视和功放机接入系统并能统一用小爱同学控制后,一次偶然的机会读到了瀚思彼岸论坛上一个大神用NODE-RED接入使用米家标准通信协议的小米空调,这提供了个新的曲线救国思路,笔者决定按这个路子动手试试。经过一个礼拜的探索调试,终于成功!当然此方案不止能接入大土豆新风机,也能接入其他采用米家标准协议的小众产品。

IOS HomekitIOS Homekit

NODE-RED这货是IBM出品的开源物联网可视化编程工具,通过拖拖拽拽就能实现各种联动设置,其有强大的开源社区和插件库,本身也可以接入各种智能设备。但由于其支持的插件和用户群体不如HASS多,所以我们一般还是以HASS作为智能家庭中枢,NODE-RED通过插件接入HASS专门负责自动化控制。

NODE-RED界面NODE-RED界面


大体的思路就是用Node-Red通过MQTT接入HASS再接入homekit。

第一部分:用群晖docker分别搭建HASS+Node-Red+MQTT broker三个容器。

笔者是在群晖的docker上搭建的,这样比较简单,基本都图形化操作,当然其他方式也都是可以的,这三个玩意儿都提供了各种系统下的版本。

1. 首先是搭建好HASS环境.

1.1 在Docker注册表里搜索home-assistant,选择这个,双击选择latest下载。差不多有1G,这里在网络高峰期下载可能会断线,一直失败的小伙伴可以尝试换个时间段再试。下好了后群晖会有通知,然后会出现在“映像”标签里。

双击下载这个官方版本的homeassistant双击下载这个官方版本的homeassistant

1.2 下好之后双击映像创建容器,名字随便起,选高级设置,添加映射config文件夹。

设置config文件夹设置config文件夹

1.3 设置网络选择与docker host相同的网络即可,这样可以少一道NAT转换,响应速度能更快。

网络选择与docker host相同的网络网络选择与docker host相同的网络

1.4 设置时区,在环境里设置一下时区TZ为Asia/Shanghai

在环境里设置一下时区TZ为Asia/Shanghai在环境里设置一下时区TZ为Asia/Shanghai

1.5 然后就可以启动容器了,用浏览器访问后台即群晖的内网ip+端口号访问HASS了,即http://群晖的ip地址:8123/

启动容器启动容器

看到这个界面就是安装好了,自行设置账户密码即可看到这个界面就是安装好了,自行设置账户密码即可



2.然后我们来装Node-RED

2.1 搜索下载Node-RED官方映像。

搜索下载官方映像搜索下载官方映像

2.2 .选择卷,选添加文件夹映射一下data目录

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

2.3 网络选择与docker host相同的网络

2.4 在环境里设置一下时区TZ为Asia/Shanghai

2.5 在File Station中找到第二步新建的 docker/node-red 文件夹,并对该文件夹增加 Everyone 的完全控制权限

2.6 .设置完后就可以手动启动容器了。过一会启动完成就可以通过http://群晖的ip地址:1880/,即群晖的内网ip+端口号访问Node-RED了。

注意事项:

  • 添加环境变量TZ可防止Nod-RED输出时间不正确的问题

  • 若不进行第5步的权限分配,Node-RED启动会报错,提示权限不足

  • 配置文件位于新建的文件夹内(本文为docker/ node-red )


3.以下是安装MQTT broker。依然以群晖docker中安装mqtt容器的方式来实现。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

3.1 搜索下载这个MQTT映像。

3.2 下载完成后创建容器时仍然选高级设置,

3.3 网络和前面一样勾选与Docker host相同的网络,

3.4 时区也如前述添加TZ为Asia/Shanghai的环境变量。

3.5 其他都不用设置,直接启动容器即可。

至此,三个容器都安装完毕启动,我们开始进行配置。

三个容器都正常启动三个容器都正常启动

第二部分:配置

4. 配置HASS

4.1访问http://192.168.31.2:8123/(替换成你自己群晖的局域网ip),设置自己的用户名密码。

4.2 进去选左侧的配置,然后选集成。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

4.3点右下角的+号设置新集成,输入mqtt,选这个

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

4.4 设置MQTT broker信息,服务器为localhost,端口不用动,用户名密码为空,勾选启用发现,然后选提交。这样就可以把我们刚刚配置的MQTT服务器接入到HASS中了。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

5. 配置Node-RED

5.1 访问http://192.168.31.2:1880/,进入Node-RED,选择右上角的三个横线,选择节点管理。然后选择安装标签,搜索mqtt,安装第一个。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

5.2 装完后再搜索mi-miio,安装mi-miio插件

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

5.3 装好后中间会有弹出的几个框提示安装成功,然后看最左侧,会发现网络里面多了mqtt-in和out,往下还能看到mi-miio插件,我们要用到最下面这个自定义设备。这里注意,安装以上两个插件可能等的时间比较长,也可能由于网络问题会失败,可以多等等或者换个时间试试,或自己想办法。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

出现这些节点就是安装好了出现这些节点就是安装好了

5.4 点右上角三个杠图标,选导入,导入本文末尾笔者提供下载的flow.json文件,提取码cxfd

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

5.5 导入后可以看到土豆SUPER的标签页。在这里可以双击设置土豆SUPER节点和MQTT相关节点。如果你和笔者一样把MQTT和其他两个容器搭在一起且都使用了与host相同的网络,那么这里可以不用再设置了。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

5.6 双击土豆SUPER节点,设置你的土豆新风机IP地址和token。如何获取token的方法有很多,可在下面查看HASS官方推荐的几种方法。笔者是找的v5.4.49的米家安装文件,用网易mumu安卓模拟器安装,登陆米家账号后操作下大土豆新风机,然后在smarthome/logs文件夹下有一堆文件,挨个找找搜索一下关键词token,就能找到32位长的一串数,新风机ip地址在此也能看到(最好在路由器dhcp服务器里把新风机ip地址固定下来,避免重启路由后由于ip地址变化而无法连接)。用mumu安卓模拟器的好处是他有个共享文件夹,可以直接与windows互相共享文件,比较方便操作。以下为原文描述:

If using an Android device to retrieve the Access Token only v5.4.49 of Mi Home is confirmed working (December 2019). Use v5.4.49 of Mi Home locate a text file under the Smarthome/logs folder where the 32 character token is stored. There will likely be several text files in this directory, search all of them for the word ‘token’ and you should find it there. Be advised that the latest version of Mi Home does not store the token in clear text.

https://www.home-assistant.io/integrations/vacuum.xiaomi_miio/#retrieving-the-access-token

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

改成你自己新风机的IP地址和Token。下面这些属性内容都不要动。改成你自己新风机的IP地址和Token。下面这些属性内容都不要动。

5.7 保存回到Node-RED主界面,点击右上角红色按钮“部署”。注意以后每修改一点都需要部署后才能生效。

5.8 部署后可以看到MQTT相关节点上都会显示出已连接。

显示已连接则说明与MQTT通信正常显示已连接则说明与MQTT通信正常

5.9 此时回到HASS,选择配置,实体注册表,应该已经可以看到大土豆新风机啦。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

点开后点右上角的调节按钮,可以打开操控标签页,在此已经可以控制大土豆SUPER新风机了。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

已知问题:由于这是用小米电风扇的模组改的,所以还不能完美适配。小米电风扇是3档,大土豆是5档,所以在选了4档和5档的时候,指令可以正常发出,新风机也能换档,但下面speed状态那里显示不出来。123档时候都可以正常显示。

6. 设置Homekit支持

6.1 HASS现在已经对homekit原生支持了,配置非常简单,还是选配置-集成-右下角的+号,然后搜索Homekit,选择homekit桥接器。在要包含的域里面可以根据实际情况勾选,但至少要把Fan选上。对,咱是把大土豆在homekit里注册成电风扇的。


曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

6.2 设置好后,点开HASS左侧边栏下面的通知,就能看到homekit的信息啦,打开iphone的家庭APP,添加进去就OK了。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

可自行设置名称,Siri控制,和其他homekit组件联动,都没问题。

曲线救国:大土豆SUPER新风机通过Node-Red接入HASS和Homekit

后记:HASS是个强大的开源智能家居中心,通过这种方法,可以把很多小米设备以及其他第三方设备都整合到HASS平台上。在这里所有设备联动都是本地局域网执行的,而不像米家很多联动是需要互联网的。

此外,新风机真是个好东西,自从装完大土豆就没有开过窗户,屋里pm2.5基本都是个位数,二氧化碳含量也基本只有500-600,估计以后装新风的家庭会越来越多啦!

分享的Node-RED配置文件flow.json和5.4.49版本的米家

链接

提取码:cxfd







展开 收起

乐天派 人体存在传感器居基础感应控制Matter双生态多平台Mijia IOS Homekit六种数据探测 传感器

乐天派 人体存在传感器居基础感应控制Matter双生态多平台Mijia IOS Homekit六种数据探测 传感器

259元起

MIJIA 米家 MJYDOAYL 自动感应夜灯 白色

MIJIA 米家 MJYDOAYL 自动感应夜灯 白色

19.9元起

京东京造 TH1 时钟温湿度计 白色

京东京造 TH1 时钟温湿度计 白色

29.9元起

Xiaomi 小米 米家智能插座3

Xiaomi 小米 米家智能插座3

49.9元起

Xiaomi 小米 ZSWG01CM 智能中枢网关 黑色

Xiaomi 小米 ZSWG01CM 智能中枢网关 黑色

191.79元起

Xiaomi 小米 DMWG03LM 智能多模网关2 白色

Xiaomi 小米 DMWG03LM 智能多模网关2 白色

181.8元起

MIJIA 米家 1S 增强版 智能台灯 白色

MIJIA 米家 1S 增强版 智能台灯 白色

156元起

linptech 领普 智能无线开关KS1Pro屏显温湿度传感器智能联动免布线遥控开关

linptech 领普 智能无线开关KS1Pro屏显温湿度传感器智能联动免布线遥控开关

53.2元起

Xiaomi 小米 SJWS01LM 水浸卫士 白色

Xiaomi 小米 SJWS01LM 水浸卫士 白色

55元起

玺加 智能窗帘宝X3 光能充电窗帘伴侣

玺加 智能窗帘宝X3 光能充电窗帘伴侣

暂无报价

HUAWEI 华为 智能门锁 Plus AI 3D人脸解锁快准稳 高清猫眼远程守护 AI指纹锁

HUAWEI 华为 智能门锁 Plus AI 3D人脸解锁快准稳 高清猫眼远程守护 AI指纹锁

2899元起

Xiaomi 小米 无线开关 蓝牙版

Xiaomi 小米 无线开关 蓝牙版

32.9元起

米家 人体传感器2S 居 智能监测联动

米家 人体传感器2S 居 智能监测联动

61.99元起

Xiaomi 小米 MCCG02HL 小米门窗传感器 2 米家

Xiaomi 小米 MCCG02HL 小米门窗传感器 2 米家

34.9元起

MIJIA 米家 空调伴侣2 智能插座 白色

MIJIA 米家 空调伴侣2 智能插座 白色

68元起

卡萨帝(Casarte)掌静脉人脸识别带可视猫眼密码锁入户门带摄像头指纹锁电子锁智能门锁CFA-X70-CAU1罗曼金

卡萨帝(Casarte)掌静脉人脸识别带可视猫眼密码锁入户门带摄像头指纹锁电子锁智能门锁CFA-X70-CAU1罗曼金

6009元起
16评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章

Walden理想

Ta还没有介绍自己

关注 打赏
最新文章 热门文章
183
扫一下,分享更方便,购买更轻松