前言

自己家里的除湿机已经买了快两年了,虽然它可以连接 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 可能会收到“你的账号已在别处登录”的通知,这是正常的。

此网页不会保留你的任何用户信息和密码,请放心使用。仓库地址

将对应名称的信息依次填入相应的栏目。

Homebridge 编辑界面 - MQTT 信息
Homebridge 编辑界面 - 设备信息

你也可以点击 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,但是并不能满足我的需求。于是打算自己开发,但是碍于时间问题,并没有实现它。直到前几天又想做这个,发现网络上还是没有相关的插件,便开发了它。

希望这个插件可以在下个回南天帮助到你。

特别感谢:

@yamisenyuki

链接:

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

14
6