
局域网直连摆脱云端Midea AC LAN 本地化控制完整上手指南【免费下载链接】midea_ac_lanAuto-configure and then control your Midea M-Smart devices (Air conditioner, Fan, Water heater, Washer, etc) via local area network.项目地址: https://gitcode.com/gh_mirrors/mi/midea_ac_lan上个月的一个雨夜运营商线路故障家里断网了整整半天。我拿出手机想关掉客厅空调官方 App 却一直转圈最后弹出的提示是网络连接失败。那一刻我忽然意识到花几千块买回来的智能家电居然在断网时连关闭这种最基本的动作都做不了。正是这次经历让我下决心研究 Midea AC LAN 这个开源组件——它通过局域网直连的方式接管美的 M-Smart 设备的控制权让本地化控制成为可能。如今我家三台设备全部脱离云端运行这篇文章就是我整理出来的完整上手记录。 图片占位建议此处可放一张局域网拓扑示意图展示 Home Assistant 与空调、风扇、热水器等设备在同一网段内直连的结构alt 文本可写Midea AC LAN 局域网直连拓扑图。先花一分钟搞懂这个组件到底解决了什么问题先解释清楚一个常见误区Midea AC LAN 不是一个新硬件也不是要改造你的电器。它是一段运行在 Home Assistant 里的集成代码安装之后你的家庭服务器就能直接和美的系设备对话指令不再需要经过厂商的云端服务器中转。打个比方以前控制空调像是给远方的快递站打电话对方再派车送指令上门而局域网直连之后指令就像隔壁邻居喊一嗓子那么快。数据不出家门、响应不走外网、断网照样能用这就是它最核心的价值。动手前先盘家底你的设备在不在支持清单里很多人担心我的设备会不会不被支持。好消息是这个项目覆盖的设备类型相当广从最常见的空调、风扇、热水器到洗衣机、干衣机、微波炉甚至电饭煲都有对应实现。项目源码中的midea/devices/目录按设备类型分门别类存放协议适配每种类型都有独立文档设备类型常见设备参考文档AC空调冷暖、除湿、新风等AC.mdFA风扇FA.mdE2 / E3电热水器 / 燃气热水器E2.md、E3.mdDA / DB / DC波轮洗衣机 / 滚筒洗衣机 / 干衣机DA.md、DB.md、DC.mdFC / FD / A1空气净化器 / 加湿器 / 除湿机FC.md、FD.md、A1.mdB0 / EA / E1微波炉 / 电饭煲 / 洗碗机B0.md、EA.md、E1.md13 / CA灯具 / 冰箱13.md、CA.md除了美的本品牌它还兼容一批使用同一套 M-Smart 协议体系的代工品牌比如 COLMO、Carrier、Toshiba、Comfee、Electrolux 等。判断方法很简单只要能绑定到美的美居 App 里基本都有机会被支持。担心的话先查对应类型的文档确认功能细节再动手。三个关键概念搞懂它们就成功了一半正式开始前请先接受三个小知识它们能帮你避开 90% 的坑第一什么是 Token 和 Key每台设备出厂时都带有一对唯一的凭证。局域网直连不是裸奔接入设备只认持有正确 Token 和 Key 的客户端。配置时组件会引导你登录一次美的账号从云端拉取这对凭证——注意只有这一步需要云端之后运行时就不再依赖它了。第二端口 6444 是什么美的设备默认在 6444 端口提供局域网服务就像设备开了一扇专属的侧门。大部分情况下不用管它但如果你配置了防火墙记得放行这个端口。第三为什么强调同一网段局域网直连的前提是看得见彼此。Home Assistant 和设备必须处在同一个子网里路由器开启的AP 隔离功能会阻断设备间通信这类问题排查时最容易忽略。三步完成本地化部署从下载到跑通确认设备在支持清单里之后部署本身并不复杂整个过程可以浓缩成三步安装集成把custom_components/midea_ac_lan放进 Home Assistant 的 custom_components 目录重启。添加设备在设备与服务页面搜索并添加 Midea AC LAN按向导完成配置。固定 IP回到路由器管理页给每台设备绑定静态 IP防止重启后地址漂移导致失联。至于第一步用哪种方式装按你的习惯选安装方式适合人群优点注意事项HACS 商店安装新手一键搜索安装后续升级方便需要先装好 HACS手动复制喜欢完全掌控不依赖 HACS目录结构透明需要手动处理升级容器挂载熟悉 Docker 的用户与 HA 镜像解耦便于管理需要理解 volume 挂载手动安装的命令也很简单克隆仓库后把集成目录复制进 Home Assistant 即可git clone https://gitcode.com/gh_mirrors/mi/midea_ac_lan cp -r midea_ac_lan/custom_components/midea_ac_lan 你的HA目录/custom_components/首次配置全流程一张图看懂向导逻辑添加集成时向导会问你几个问题实际体验比想象中顺滑。核心流程如下这里分享两个实测心得。一是自动发现非常省事选择这种方式后组件会扫描局域网并列出可发现的设备勾选即可如果设备较多也可以填一个网段地址例如192.168.1.255做定向扫描。二是账号信息用完可删凭证拉取完成后把账号配置移除也不影响设备使用——因为后面的通信全走局域网了。配置完成后先玩这几个自动化设备接入成功后你会看到对应的 climate、fan、sensor 等实体。接下来就是最有意思的部分——让它们真正聪明起来。分享三个我自己在用的场景场景一睡前自动进入助眠状态。每天 21 点如果我在家就让卧室空调切到 26 度睡眠模式风扇降速alias: 睡前两小时准备卧室 trigger: - platform: time at: 21:00:00 condition: - condition: state entity_id: person.me state: home action: - service: climate.set_temperature target: entity_id: climate.bedroom_ac data: temperature: 26 hvac_mode: cool场景二全员离家一键关停。利用 HA 自带的人员追踪最后一个人离开时关掉所有美的设备再也不会出现空调开了一整晚的浪费alias: 离家自动关停家电 trigger: - platform: state entity_id: person.me to: not_home action: - service: climate.turn_off target: entity_id: climate.bedroom_ac - service: fan.turn_off target: entity_id: fan.living_room_fan场景三回程路上提前降温。结合手机定位到家前二十分钟触发空调制冷进门即是舒适温度——这是当年冲着智能买空调时最期待、现在终于实现的功能。断网之后它为什么还活着聊聊通信机制回到文章开头那次断网。使用局域网直连后设备与 Home Assistant 之间维持的是 TCP 长连接控制端和设备之间保持一条持续打开的通道设备状态变化会主动推送过来而不是靠反复询问。这套机制带来的实际体感是界面上的温度、模式几乎和实体空调同步变化而不是等几秒刷新。整个技术栈的层次可以这样理解┌────────────────────────────────────────┐ │ Home Assistant 实体层 climate/fan/... │ ├────────────────────────────────────────┤ │ custom_components/midea_ac_lan 集成入口 │ ├────────────────────────────────────────┤ │ midea/devices/ 按设备类型的协议适配 │ ├────────────────────────────────────────┤ │ midea/core/ 长连接、心跳、AES 加解密 │ └────────────────────────────────────────┘通信全程在家庭内网进行指令经过 AES 加密配合设备 Token 认证安全性是有保障的——这也解释了为什么断网时它依然活得好好的。十分钟排查连接故障一张自查表如果配置过程中遇到问题别急着怀疑是组件坏了。按下面的顺序排查绝大多数情况十分钟内能解决现象最常见原因处理办法一直提示连接失败设备 IP 变了或不在同一网段先ping设备 IP再到设备配置里改地址自动发现不到设备路由器开了 AP 隔离登录路由器关闭该功能认证被拒、无法控制Token / Key 不匹配重新走一遍账号拉取流程状态更新很慢设备不支持主动推送状态到配置里把刷新间隔调短默认 30 秒日志出现解密错误凭证与协议版本不匹配核对设备协议版本与模型信息如果还想深入排查可以开启调试日志把输出保存下来再去社区提问效率会高很多。项目文档中每种设备类型都有对应的说明页遇到设备特有参数时比如空调的某些专属功能先翻对应的 AC.md 这类文档往往比到处搜索更快。进阶路线从使用者变成贡献者用顺手之后你可能会好奇它到底是怎么听懂设备说话的。源码的阅读顺序建议是先看midea/core/message.py理解消息的编解码规则再看midea/core/security.py了解加解密流程最后挑你手上那台设备的实现比如midea/devices/ac/device.py对照着读。目录结构非常规整每个设备类型都是 device 加 message 两个文件跟着读一遍就能摸清套路。如果你在文档里发现了错误或者某些设备的功能描述不准确项目在doc/目录下为每种设备都准备了文档很多还带中文版本顺手修正或补充都是很有价值的贡献。对新手来说从用到读再到改是理解本地化智能家居的最佳路径。这笔账到底怎么算延迟、隐私与自由度最后算一笔明白账。云端方案的优势是厂商维护、开箱即用但代价是响应链路长、隐私数据过境、以及厂商服务器挂了我就用不了的系统性风险。局域网直连把这些成本一次性结清控制指令在毫秒级内抵达设备使用习惯留在家里设备的可用性只取决于你自家网络。当然也要客观地说它需要一台常开的 Home Assistant 主机需要你愿意花一两个小时完成初始配置遇到问题时要自己动手排查——这是自主可控必须支付的对价。但一旦跑起来那种设备真正属于自己的踏实感是云端方案给不了的。写在最后把控制权放回自己手里那次断网事故现在回想反而是件好事——它让我认真审视了自己和智能设备之间的关系买来的家电控制权到底该在谁手里Midea AC LAN 给出的答案是在你的手里。响应更快、数据更私密、断网不瘫痪更重要的是它把智能的定义权从厂商那里拿回来交还给每一个使用者。如果你家里正好有美的系设备又跑着 Home Assistant不妨从今天下午开始按这篇文章的三步流程试一次。第一次在断网状态下成功关掉空调的瞬间你会明白这一切都值得。【免费下载链接】midea_ac_lanAuto-configure and then control your Midea M-Smart devices (Air conditioner, Fan, Water heater, Washer, etc) via local area network.项目地址: https://gitcode.com/gh_mirrors/mi/midea_ac_lan创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考