【分享】Midea ODM Device — 把美的慧选设备接入 Home Assistant
一个 Home Assistant 自定义集成,通过美的美居云 API 控制美的慧选系列智能设备。
GitHub: https://github.com/Cyborg2017/midea_odm_device
License: Apache 2.0
背景:为什么做这个集成?
美的除了自有智能设备外,还有一类被称为「美的慧选」的产品,比如智能鱼缸、空气检测仪等。这类设备跟传统美的智能设备完全是两码事:
- 不走 v1 LuaGet 协议:没法用传统的 v1 lua get API 获取状态,也没有官方 lua 文件可以下载解析。
- 采用 v2 Thing Model + 设备独有 API:属性查询、控制下发都走 v2 thing model 协议以及设备专用 REST 端点。
- 局域网基本废了:部分设备虽然能局域网搜索发现,但没有 lua 文件解析协议,也抓不到通信包,根本没法逆向。
所以现有的第三方集成(比如 midea_auto_cloud、midea_smart_home)统统不支持这类慧选设备。
这个集成就是为了解决这个问题:
- 针对慧选设备,通过 v2 Thing Model 协议 + 设备专用 API 实现完整的状态查询与控制;
- 同时保留对 传统 v1 LuaGet 协议设备 的支持(只读轮询),兼容第三方传感器等只读设备。
一句话:把「美的慧选」里既没 lua 文件、又没局域网协议的设备,统统拉进 Home Assistant 管理。
⚠️ 注意:本集成需要用美的美居账号登录获取云端 token,不能跟 midea_auto_cloud 等同样用美居账号的云端集成同时登录同一个账号。美居云会踢 token,导致其中一个掉线。如果需要同时用,请准备不同的美居账号。
目前已支持的设备
| 设备类型 |
设备 |
协议 |
| T0x14 |
智能开合帘 |
V2 Thing Model |
| T0x58 |
智能鱼缸 |
V2 Thing Model |
| T0xBC |
空气检测仪 |
V1 Lua |
支持的平台类型
- 传感器 (sensor)
- 二进制传感器 (binary_sensor)
- 开关 (switch)
- 灯光 (light)
- 数值 (number)
- 选择 (select)
- 时间 (time)
- 按钮 (button)
- 窗帘 (cover)
安装方法
方法一:HACS 安装(推荐)
- 确保已安装 HACS,按官方文档装好并重启 Home Assistant。
- 进入 HACS → 右上角三个点 → 自定义仓库(Custom repositories)。
- 填入仓库地址:
[url=https://github.com/Cyborg2017/midea_odm_device]https://github.com/Cyborg2017/midea_odm_device`[/url],
类别选 集成(Integration),点击添加。
- 在 HACS 搜索
Midea ODM Device,找到后点击进入。
- 点击右下角 下载(Download),等提示完成。
- 重启 Home Assistant(设置 → 系统 → 右上角电源图标 → 重新启动)。
- 重启后按下方「配置」步骤添加集成。
下载完必须重启,否则在「添加集成」里搜不到。
方法二:手动安装
- 去 [Releases] https://github.com/Cyborg2017/midea_odm_device/releases 下载最新版
midea_odm_device.zip 并解压。
- 把
midea_odm_device 文件夹复制到 HA 配置目录的 custom_components/,
- 重启 Home Assistant,
- 重启后按下方「配置」步骤添加。
配置步骤
- 进入 设置 → 设备与服务 → 添加集成
- 搜索 "美的慧选设备"
- 输入美的美居账号和密码
- 选择家庭和设备
- 完成配置,收工
想加新设备?超级简单
新增设备支持只需要在 device_mapping/ 目录下创建一个 T0xXX.py 文件,定义好 DEVICE_MAPPING,不需要改其他任何代码。欢迎 PR!
致谢
有问题欢迎在本帖留言,或者去 GitHub 提 Issue。觉得好用的话给个 Star 呗 ⭐
|