默罗斯LAN
此 homeassistant 集成允许您以非常灵活的方式控制您的默罗斯设备。尽管它的名称(起初这是一个仅支持本地LAN连接的项目),但它现在支持这些通信层:
- 直接 HTTP 连接(在 LAN 中)用于任何可访问的设备
- 本地 MQTT 代理(在 HA 中配置的代理)
- 默罗斯云 MQTT 代理
这是两个主要的用例:
- 保持您的设备与官方默罗斯应用程序(和云基础设施)配对,并通过 HTTP 直接与它们进行通信。这将允许您拥有更大的灵活性和更少的配置麻烦,因为您不必设置和配置这些设备的 MQTT 配对。该集成将仅通过 HTTP(或云 MQTT)与设备进行"旁路"通信,并轮询它们以获取状态更新。从
Cloudy (4.0.0)
版本开始,它还能够通过使用"公共"默罗斯 MQTT 代理与默罗斯原有的云账户基础设施进行通信。 - 将您的设备绑定到您的"专用"MQTT 代理,以完全与默罗斯基础设施断开连接,并仅在本地进行交互(MQTT 绑定的操作步骤在这里:https://github.com/bytespider/Meross/wiki/MQTT 或者更好,您可以使用 @albertogeniola 在 https://github.com/albertogeniola/meross_pair 的[pairer应用程序])。私有MQTT绑定可能会很痛苦(参见此处的讨论)
玩得开心! 😎
安装
HACS
在你的 HA 前端中进入 HACS -> 集成
,搜索"Meross LAN"并点击"安装"
你需要重新启动 HA 以让它识别新的集成。
手动安装
下载并将 custom_components/meross_lan
目录复制到你的 homeassistant 安装目录的 custom_components
文件夹中。
根据你的 HA 安装类型,你可能需要遵循特定的说明。
这适用于标准的"核心"安装,但应该适用于任何其他版本:请记住设置适当的所有权和访问权限,以便运行你实例的 homeassistant 用户能够读取和执行该集成代码。
重新启动 HA 以使其生效。
设置
安装并重启后,你的默罗斯设备应该能被HA的dhcp
集成自动发现,然后就会出现在你的集成面板上,准备进行配置。
ℹ️ 如果设备未自动发现,尝试将它们关闭10秒钟,然后再打开。一条关于新设备被发现的通知应该会出现在
通知
中。
ℹ️ 要手动添加您的设备或默罗斯云帐户,请转到
HA->设置->设备和服务->添加集成->默罗斯LAN
在这里,选择适当的选项并继续操作
根据您的设备配置方式,您应该按照以下步骤进行:
- 设备已与默罗斯云帐户配对(这是在您使用制造商应用程序购买和配置设备时的常见情况): 在这种情况下,您的设备应该能被dhcp自动发现,或者您可以手动添加它们的配置。配置默罗斯云帐户大大简化了设备的配置,因为这将自动从您的默罗斯帐户下载所有必需的信息。您仍然可以在没有云帐户登录的情况下手动添加设备,但请记住,您需要"设备密钥",这是存储在您默罗斯资料中的一个秘密。
- 设备被"私有MQTT绑定"到同一个HA MQTT配置的代理: 在这种情况下,设备只有在它们向代理发布新消息时才会自动被发现。您需要输入您在使用设备重绑定配置工具时配置的相同设备密钥来完成配置。
您也可以通过添加新的集成条目并提供主机地址和设备密钥来手动添加设备(需要为每个设备重复此操作)。
当手动配置设备条目时,您将有以下选项:
- 主机地址: 这在手动添加设备或通过DHCP发现设备时可用:提供IP地址或有效的网络主机名。当您设置IP地址时,请尽量确保它是"稳定的",并且在重新启动之间不会改变,否则集成可能会"丢失"对设备的访问权限。从2.7.0版开始,meross_lan应该能识别任何动态IP变化,所以您不必手动修复这个问题了。
- 设备密钥: 这用于根据官方默罗斯协议的行为对消息进行签名。如果您之前已经配置过其他设备,这应该已经填入了一个已知的密钥。如果您输入了错误或者空的密钥,系统会询问您是否要手动重试输入一个不同的密钥,或者是否要从您的默罗斯帐户中恢复密钥。如果您的设备仍与默罗斯应用程序配对,这就是从您的云资料中恢复设备密钥的方法,因为它是由默罗斯应用程序管理并保存的。
这些其他选项在设备首次设置完成后可用。要访问它们,只需通过点击meross_lan集成页面上的设备条目上的"配置"来访问集成配置UI,然后再次点击菜单中的"配置"。
- 协议:该软件能够直接通过 HTTP 与设备通信,也可通过 MQTT 代理。当您通过 IP 地址 (手动或 DHCP 发现) 配置条目时,它通常'倾向于'使用 HTTP 通信,原因很明显,但它仍可以在识别 MQTT 可用的情况下自动切换到 MQTT (通过'感知'MQTT 消息流)。如果您设置为'Auto' (或留空/未配置),您将在两个方向 (HTTP <-> MQTT) 上拥有这种自动'故障转移'切换,始终尝试确保最佳可用传输进行通信。如果您强制指定 (HTTP 或 MQTT),则不会发生自动协议切换,集成将仅使用该协议进行该配置条目的通信 (目前存在一些小例外,某些命令仍会先通过 HTTP 尝试)。
- 轮询:设置设备的轮询周期 (默认为 30 秒)。通常会轮询设备以更新其状态。有一些优化措施,例如,如果设备通过 MQTT 连接,许多常规状态更新请求都会自动'丢弃',因为集成可以依赖设备的'推送'行为 (如果将协议设置为'Auto',这也适用)。即使在 MQTT 上,某些其他状态信息仍需要轮询 (例如对于带电量计的电源插头,需要轮询电力/能耗读数)。如果设备仅通过 HTTP 可访问,集成将在每个轮询周期执行'完整'状态更新。请注意,某些信息会根据内部 (固定且可能更长) 超时进行轮询,而不受您设置的配置参数影响。
- 时区:您可以从预设列表中输入您的本地时区,以便您的设备相应设置。每个设备在启动时都会尝试获取实际 (UTC) 时间,但是,特别是如果您将其与 Meross 云服务取消配对,它的时区信息可能为空,因为它不知道自己所在的位置。这可能会导致一些问题,因此为了修复它,最好让它们知道自己的位置。目前集成无法设置设备时间,所以请确保您的设备能够访问 NTP 服务器 (它们会在启动时这样做)。
支持的硬件
大部分软件都是在我拥有的 Meross 设备上开发和测试的,这些设备随时间慢慢增加。我尝试尽可能乐观和通用地进行开发,基于 @albertogeniola 和 @bytespider 的工作,所以它应该可以与大多数现有硬件配合使用,但我只测试了我自己的设备。有一些用户报告确认它可以与其他设备配合使用,完整的'官方'列表如下 (请注意,某些固件版本可能可用,而其他版本可能不可用:这是硬件和软件的'地狱'):
-
开关
-
灯具
-
中心控制器
- MSH300: 智能 WiFi 中心控制器
-
传感器
-
恒温器
-
MTS100: 智能恒温阀
-
MTS150: 智能恒温阀
-
MTS200: 智能WiFi恒温器
-
MTS960: 智能WiFi插座恒温器
-
遮阳
-
加湿器
-
智能婴儿机
- HP110A: 智能婴儿机
-
空气净化器
- MAP100 [实验]: 智能WiFi空气净化器
-
@almico - 改进Meross Hub (MSH300)
-
@GeorgeCaliment - MRS200改进
他们在解决问题或开发出色的改进方面给了我很大的帮助