前提条件

  1. 你已经有一个正在运行的 独立 Mosquitto 服务器
  2. 你知道该服务器的 IP 地址端口(默认是 1883)。
  3. 你已经准备好了 用户名和密码(如果你为 Mosquitto 配置了认证,强烈推荐)。
  4. (可选但推荐)如果你配置了 SSL/TLS 加密,你拥有相应的 CA 证书。
  5. 启动HA,我自己创建了虚拟环境,所以要先激活虚拟环境,再启动HA,具体参见后面的参考链接:
source venv313/bin/activate

在这里插入图片描述


在 Home Assistant 中的配置步骤

第1步:添加 MQTT 集成
  1. 打开您的 Home Assistant 后台。
  2. 进入 「设置」 -> 「设备与服务」
  3. 点击右下角的 「添加集成」 按钮。
  4. 在搜索框中输入 MQTT,然后选择出现的 「MQTT」 集成。
    在这里插入图片描述
    在这里插入图片描述
第2步:填写连接信息

点击 「MQTT」 后,会弹出一个配置窗口,你需要填写你独立 Mosquitto 服务的详细信息。

  • 代理: 填写你的 Mosquitto 服务器的 IP 地址主机名。例如:192.168.1.100mqtt.myhome.com
  • 端口: 默认是 1883(非加密)或 8883(SSL加密)。请根据你的 Mosquitto 配置填写。
  • 用户名: 你在 Mosquitto 中创建的用户名。
  • 密码: 对应用户的密码。

高级选项(点击「显示高级选项」):

  • 协议: 保持默认的 「MQTT 3.1.1」 即可,它有最好的兼容性。
  • SSL/TLS: 这是一个关键选项。
    • 不使用 SSL/TLS: 如果你的 Mosquitto 使用默认的 1883 端口且未加密,请选择此项(不推荐用于生产环境)。
    • 使用 SSL/TLS,不验证证书: 如果你使用了自签名证书,并且只希望加密通信而不验证证书有效性,可以选择此项。
    • 使用 SSL/TLS并验证证书: 如果你拥有受信任的 CA 签发的证书,请选择此项以提供最高安全性。
第3步:提交并测试连接

填写完所有信息后,点击 「提交」 按钮。

如果所有信息都正确,Home Assistant 会成功连接到你的独立 Mosquitto 服务器,并返回到集成列表页面。你会看到一个新的 「MQTT」 卡片,状态应该是 「已连接」

故障排除

如果连接失败,Home Assistant 会提示错误信息。请检查以下几点:

  1. 网络连通性: 确保 Home Assistant 主机可以 ping 通你的 Mosquitto 服务器 IP。
  2. 防火墙设置: 检查 Mosquitto 服务器上的防火墙是否打开了指定的端口(1883或8883)。
  3. 认证信息: 仔细核对用户名和密码是否正确。你可以在 Mosquitto 服务器上使用 mosquitto_passwd 命令验证或重置密码。
  4. Mosquitto 配置: 检查 Mosquitto 的配置文件 mosquitto.conf,确保:
    • 设置了 listener 端口(如 listener 1883)。
    • 如果 Mosquitto 服务器不在本地,需要设置 allow_anonymous false 并配置密码文件,或者将 listener 绑定到 0.0.0.0(默认只绑定到 127.0.0.1)。

验证连接(可选但推荐)

为了确认一切工作正常,你可以使用 Home Assistant 的 MQTT 开发工具。

  1. 进入 「开发者工具」 -> 「MQTT」 标签页。
  2. 「监听主题」 中输入 #(监听所有主题),然后点击 「开始监听」
  3. 让你的一些 MQTT 设备发布消息,或者手动在 「发布消息」 部分发布一个测试主题(例如 home/test),看看是否能收到。

如果你能正常收发消息,恭喜你,Home Assistant 已经成功连接到你的独立 Mosquitto 服务了!

完成以上步骤后,所有通过此 MQTT 代理进行通信的设备(例如 ESPHome、Tasmota 设备等)都可以被 Home Assistant 自动发现或手动配置接入。
ps:
在Ubuntu上从零开始编译并运行Home Assistant源码并集成HACS与小米开源的Ha Xiaomi Home

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐