通过Node-RED我们可以将德业除湿机接入诸如Homeassistant这样的服务,方便管理。
首先通过 https://github.com/kejinlu/deyeinfo 的脚本我们可以很轻松的获得我们所需要的德业除湿机mqtt服务的相关信息。
MQTT协议分析可以参见 https://kejinlu.com/2022/10/deye-homeassistant/
然后我们将flows.json导入Node-RED,可以看到类似下面的Flows:
- “德业除湿机状态接受” 设置德业官方MQTT服务的配置以及状态的topic
- “状态转发”节点中设置好本地MQTT服务的配置。
- “自动刷新”节点可以设置主动刷新状态的时间间隔,德业这方便设计的不是特别好,状态的及时更新依赖于本地的轮询刷新命令
- 三个“设置”节点们需要配置好本地mqtt服务
- “德业除湿机命令发送”节点设置好德业官方MQTT命令topic
- “解析状态”和“设置命令”节点中,需要根据自己设备的MQTT协议抓包结果来做相关的修改适配,因为不同设备一些状态码,或者命令码有细微的差别。
根据configuration.yaml中的示范配置,将除湿机和相关的传感器配置到自己的Homeassistant的配置中