Home Assistant中使用MQTT电风扇的示例配置

Home Assistant中使用MQTT电风扇的示例配置缩略图

Home Assistant允许您控制支持MQTT的风扇。

Home Assistant中使用MQTT电风扇的示例配置概述

在理想情况下,MQTT设备将具有用于发布状态更改的状态主题。如果这些消息以RETAIN标志发布,MQTT风扇将在订阅后立即接收到状态更新,并将以正确的状态启动。否则,风扇的初始状态将为假/关闭

状态主题不可用时,风扇将以即时更新模式工作。在这种模式下,风扇将在每次命令后立即更改状态。否则,风扇将等待来自设备的状态确认(来自消息主题)。

即使状态主题可用,也可以强制启用即时更新模式。如果您遇到风扇操作不正确的情况,请尝试启用它。

要在您的安装中启用MQTT风扇,请在您的配置文件(configuration.yaml)中添加以下内容:

# 示例配置.yml 条目
fan:
  - platform: mqtt
    command_topic: "bedroom_fan/on/set"

配置变量:

  • command_topic(必填):用于发布更改风扇状态的命令的MQTT主题。
  • name(可选):风扇的名称,默认为“MQTT风扇”。
  • state_topic(可选):用于接收状态更新的MQTT主题。
  • payload_on(可选):表示运行状态的有效载荷,默认为“ON”。
  • payload_off(可选):表示停止状态的有效载荷,默认为“OFF”。
  • qos(可选):状态主题的最大QoS级别,默认为0,并将用于发布消息。
  • optimistic(可选):定义风扇是否以即时更新模式工作的标志。如果未定义状态主题,则默认为true,否则为false。
  • retain(可选):发布的消息是否应具有保留标志。
  • oscillation_state_topic(可选):用于接收摆动状态更新的MQTT主题。
  • oscillation_command_topic(可选):用于发布更改摆动状态的命令的MQTT主题。
  • payload_oscillation_on(可选):表示摆动打开状态的有效载荷,默认为“oscillate_on”。
  • payload_oscillation_off(可选):表示摆动关闭状态的有效载荷,默认为“oscillate_off”。
  • speed_state_topic(可选):用于接收速度状态更新的MQTT主题。
  • speed_command_topic(可选):用于发布更改速度状态的命令的MQTT主题。
  • payload_low_speed(可选):表示风扇低速状态的有效载荷。
  • payload_medium_speed(可选):表示风扇中速状态的有效载荷。
  • payload_high_speed(可选):表示风扇高速状态的有效载荷。
  • speeds(可选):速度选项的数组,有效值为“off”,“low”,“medium”,“high

"off" - "关闭"
"low" - "低速"
"medium" - "中速"
"high" - "高速"

command_topic(必

请确保您的主题与配置的精确匹配。"some-topic/some-topic"是不同的主题。

在这里,您可以找到有关如何使用MQTT风扇的一些实际示例。以下是一个完整的MQTT风扇的配置示例:

# 示例配置.yml 条目

# 定义一个MQTT风扇,用于卧室
fan:
  - platform: mqtt  # 使用MQTT
    name: "卧室风扇"  # 风扇的名称
    state_topic: "bedroom_fan/on/state"  # 用于接收风扇状态的MQTT主题
    command_topic: "bedroom_fan/on/set"  # 用于发布控制风扇状态的MQTT主题
    oscillation_state_topic: "bedroom_fan/oscillation/state"  # 用于接收摆动状态的MQTT主题
    oscillation_command_topic: "bedroom_fan/oscillation/set"  # 用于发布控制摆动状态的MQTT主题
    speed_state_topic: "bedroom_fan/speed/state"  # 用于接收风扇速度状态的MQTT主题
    speed_command_topic: "bedroom_fan/speed/set"  # 用于发布控制风扇速度的MQTT主题
    qos: 0  # 状态主题的最大QoS级别
    payload_on: "true"  # 表示风扇运行状态的有效载荷
    payload_off: "false"  # 表示风扇停止状态的有效载荷
    payload_oscillation_on: "true"  # 表示摆动打开状态的有效载荷
    payload_oscillation_off: "false"  # 表示摆动关闭状态的有效载荷
    payload_low_speed: "low"  # 表示风扇低速状态的有效载荷
    payload_medium_speed: "medium"  # 表示风扇中速状态的有效载荷
    payload_high_speed: "high"  # 表示风扇高速状态的有效载荷
    speeds:  # 风扇可用的速度选项
      - low
      - medium
      - high
技术术语(共 5 个)—— 点击展开
MQTT轻量级物联网消息传输协议,基于发布/订阅模式,适合低带宽不稳定网络
QoS服务质量等级,0 最多一次 / 1 至少一次 / 2 恰好一次
TopicMQTT 主题,消息路由的层级字符串,支持通配符 + 与 #
订阅客户端向 Broker 注册感兴趣的主题以接收消息
发布客户端向指定主题发送消息
来源/工具信息 —— 点击展开
来源 MQTT中文网(mqtt.cn) —— 国内领先的MQTT通信协议技术社区 分类 Home Assistant 字数 2018 字 · 阅读约 6 分钟 更新 2023-09-12 永久链接 https://www.mqtt.cn/595.html
推荐工具:MQTT调试助手 微信小程序
MQTT中文网官方推出的MQTT调试工具,支持 MQTT 3.1.1/5.0 实时连接调试、主题订阅、消息收发监控与报文分析。 无需安装,微信搜索「MQTT调试助手」即可使用。 电脑端入口:https://www.mqtt.cn/mqtttool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 mqtt.cn
📝 作者声明
本文由 MQTT中文网技术团队 原创撰写,内容基于实际项目案例与技术文档,力求为读者提供准确、实用的参考信息。
把这篇资料用于真实项目?

进入工具中心进行报文解析、CRC 校验和设备调试,或提交需求获取选型与接入建议。

工程师会员

把这篇文章变成可执行的调试资料

开通后可使用高级报文解析、资料包下载、代码示例、工程案例和优先技术支持,适合真实项目交付。

高级工具不限次
资料包与代码包
完整工程案例库
优先技术支持入口