首页 > 解决方案 > 用mqtt或http控制sonoff?

问题描述

我想知道什么适合我的情况,使用 espeasy 或 Tasmota。我知道 espeasy 正在使用 http 请求,而 Tasmota 正在使用 mqtt。

我想通过充当家庭自动化中心的树莓派来控制我的 Sonoff 设备,然后它会从 AWSIoT 平台发送更新和接收命令。为了与 AWSIoT 平台交互,它使用 mqtt。

使用这两种方法的优缺点是什么?如果我在将 mqtt 用于 AWSIoT 时使用 http 控制多个 Sonoff 设备,是否会导致问题?还是更好地将 mqtt 用于所有 AWSIoT 和 Sonoff?

标签: httpraspberry-pimqttiothome-automation

解决方案


我不是该主题的专家,但我尝试了一些方法,并为您提供了一些关于为什么更喜欢 MQTT 而不是 HTTP 的见解。

  1. 安全。请记住,物联网中的“S”代表安全性。一边开玩笑。我还没有看到 tasmota 的 HTTP 流量的加密 (HTTPS) 选项。(如果我错了,请互联网纠正我)所以选择 HTTP 意味着您的用户/密码(不是必需的,但应该完全使用)通过 URL 查询参数作为纯文本传输。MQTT 具有用于加密流量的内置机制。我无法在我的网络中使用它,但我正在尝试。

  2. 灵活性/可靠性。使用 MQTT/Tasmota,您可以通过让您的设备直接相互发布 MQTT 消息进行交互来实现不依赖于家庭自动化中心的自动化。例如,如果您想实现一个关闭多个设备的紧急关闭按钮,您不希望它依赖于您的家庭自动化服务器。也可以使用 HTTP 执行此操作,但需要所有设备的所有用户/密码不仅驻留在您的家庭自动化集线器中,而且还驻留在其他单个设备上。

  3. 联网。将新设备添加到您的集线器应该尽可能简单。在 HTTP 问题上,您的家庭自动化集线器必须知道如何通过 IP 地址或域名找到您的设备,因为它必须解析 URL。使用 MQTT 时,您只需将您的 tasmota 设备连接到您的代理并在家庭自动化中心使用他们的主题。这些设备甚至不需要任何类型的 mDNS 名称的静态 IP 或可访问域名。从本质上讲,这就是使 IOT 的 pub/sub 如此有趣的原因。

  4. 现有的支持。在构建您自己的家庭自动化解决方案之前,请务必查看家庭助理(我最喜欢的)或任何其他家庭自动化解决方案(如果它们符合您的需要)。不要重新发明轮子。家庭助理提示:不要将 MQTT 自动发现与 tasmota 结合使用。这是唯一没有为我解决的问题。手动注册设备工作可靠。

希望有帮助。如果您仍然喜欢 HTTP 结帐应用程序“Tasmota 控制”。


推荐阅读