前言
自己家里的除湿机已经买了快两年了,虽然它可以连接 Wi-Fi,但却一直没有什么实际作用。于是最近突发奇想:是否可以将德业除湿机接入 HomeKit,实现多设备联动?
答案是可以。
作为一个销售了数十万台除湿机的厂商,几乎绝大部分民用设备都有 Wi-Fi 功能(哪怕是最低端的 E12A3),这点还是值得表扬的。
原理
德业除湿机使用的是 MQTT 进行连接,所以我们只要知道 MQTT 账号密码与设备信息即可进行连接。当然,如果你愿意折腾的话,也完全可以让它连接到自己的 MQTT 服务器。
这里 是一个工具,可以用来获取 MQTT 与设备的信息。
有了这些信息还不够,还需要解析设备控制与状态的代码,以下是设备控制与状态代码的解析。这是我根据现有信息和自己的测试整合出来的。


说了半天,市面上并没有相关的插件,于是就有了它:homebridge-deye。
安装插件
安装和配置 Homebridge 的教程已有很多,这里将不在赘述。
在 Homebridge Config UI X 中搜索 homebridge-deye,然后选择安装。

手动安装:
npm install -g homebridge-deye
配置插件
首先,确保你的除湿机已经连接到 Wi-Fi 并绑定到账号。
打开 德业设备信息获取器,输入德业账号的手机号和密码,点击 Login。

这时此网页应该显示服务器连接信息和设备信息,你可以点击设备标题来展开详细信息。

请注意:由于德业账号仅支持单端登录(还没见过除了QQ微信只能单端登录的),所以你的 App 可能会收到“你的账号已在别处登录”的通知,这是正常的。
此网页不会保留你的任何用户信息和密码,请放心使用。仓库地址
将对应名称的信息依次填入相应的栏目。


你也可以点击 ADD DEVICE SETTINGS 来添加更多设备。
一些配置信息:
Fan Speed Control: 是否启用风速控制功能。仅部分机型支持。
Enable Temperature Sensor: 是否启用温度传感器。可能仅部分机型支持。
Enable Dry Clothes Mode: 是否启用干衣模式开关。可能仅部分机型支持。
Enable Sleep Mode: 是否启用睡眠模式开关。可能仅部分机型支持。
请注意:当启用温度传感器后,由于苹果 HomeKit 政策原因,它将会将配件进行合并,你可能无法直接看到加湿器的控制界面。
如果发生此情况,请点击家庭 App 中配件中的“配件”选项,你将可以看到除湿机的信息。
或者,你也可以选择启用 干衣模式 或 睡眠模式,然后在点击家庭 App 中配件的“作为单独板块分开显示”。
输入完成后点击保存并重启Homebridge。
现在你应该可以在HomeKit中看到除湿机。

更多配置详情可以打开 GitHub 仓库 查看。
如果走到这一步,恭喜你,你已经添加了除湿机,现在可以使用啦!
什么是 德业设备信息获取器?
这是一个静态网页,用于登陆获取德业账号中的信息,免去使用 Postman 等工具的麻烦。你的信息不会已任何形式保存在该网站。
请注意:由于德业账号仅支持单端登录(还没见过除了QQ微信只能单端登录的),所以你的App可能会收到“你的账号已在别处登录”的通知,这是正常的。
尾巴
其实去年就已经有这个想法,看到有人将德业除湿机接入了 HomeAssistant,但是并不能满足我的需求。于是打算自己开发,但是碍于时间问题,并没有实现它。直到前几天又想做这个,发现网络上还是没有相关的插件,便开发了它。
希望这个插件可以在下个回南天帮助到你。
特别感谢:
链接:
homebridge-deye: https://github.com/IcesandSora/homebridge-deye
德业设备信息获取器: https://github.com/yamisenyuki/Deye-Device-Information-Getter
homebridge: https://github.com/homebridge/homebridge
德业除湿机接入HomeAssistant: https://xiking.win/2020/11/12/3-deye-dehumidifer-add-to-homeassistant/
[经验分享] 德业除湿机接入以后获取全部状态: https://bbs.hassbian.com/thread-13426-1-1.html
