Midea 空调
midea 组件创建一个 Midea 空调气候设备。
Midea 空调要求将 UART 配置为 baud_rate: 9600。硬件需要 5V 逻辑电平,并且似乎不兼容 3.3V 逻辑电平。自行制作扩展坞时请使用电平转换器。
# 配置示例# 主要设置climate: - platform: midea name: Midea Climate # 使用唯一的名称。 period: 1s # 可选 timeout: 2s # 可选 num_attempts: 3 # 可选 autoconf: true # 自动配置大部分选项。 beeper: true # 命令时发出蜂鸣声。 visual: # 可选。显示设置覆盖示例。 min_temperature: 17 °C # 最小值:17 max_temperature: 30 °C # 最大值:30 temperature_step: 0.5 °C # 最小值:0.5 supported_modes: # 可选。本节中的所有功能都可以通过 autoconf 检测。 - FAN_ONLY - HEAT_COOL - COOL - HEAT - DRY custom_fan_modes: # 可选 - SILENT - TURBO supported_presets: # 可选。本节中的所有功能都可以通过 autoconf 检测。 - ECO - BOOST - SLEEP custom_presets: # 可选。本节中的所有功能都可以通过 autoconf 检测。 - FREEZE_PROTECTION supported_swing_modes: # 可选 - VERTICAL - HORIZONTAL - BOTH outdoor_temperature: # 可选。室外温度传感器(长时间不活动后可能显示错误值)。 name: Temp power_usage: # 可选。功率使用传感器(仅适用于支持此功能的设备)。 name: Power humidity_setpoint: # 可选。室内湿度传感器(仅适用于支持此功能的设备)。 name: Humidity-
transmitter_id (可选,ID):使用 Remote Transmitter 组件发送 IR 命令时,自动定义和使用。
-
period (可选,Time):与设备之间的请求最小间隔。默认为
1s。 -
timeout (可选,Time):请求响应超时,直到下一次请求尝试。默认为
2s。 -
num_attempts (可选,整数):请求尝试次数,取值范围 1 到 5(含)。默认为
3。 -
autoconf (可选,布尔值):自动获取功能能力。允许你不用手动定义设备的大部分功能。 默认为
True。 -
beeper (可选,布尔值):命令时发出蜂鸣声反馈。默认为
False。 -
supported_modes (可选,列表):支持的模式列表。可选值包括:
HEAT_COOL、COOL、HEAT、DRY、FAN_ONLY。 -
custom_fan_modes (可选,列表):支持的自定义风扇模式列表。可选值包括:
SILENT、TURBO。 -
supported_presets (可选,列表):支持的预设列表。可选值包括:
ECO、BOOST、SLEEP。 -
custom_presets (可选,列表):支持的自定义预设列表。可选值包括:
FREEZE_PROTECTION。 -
supported_swing_modes (可选,列表):支持的摆动模式列表。可选值包括:
VERTICAL、HORIZONTAL、BOTH。 -
outdoor_temperature (可选):室外温度传感器的信息。
- Sensor 中的所有选项。
-
power_usage (可选):当前功耗传感器的信息。
- Sensor 中的所有选项。
-
humidity_setpoint (可选):室内湿度传感器的信息(实验性)。
- Sensor 中的所有选项。
-
Climate 中的所有其他选项。
midea_ac.power_on 动作
Section titled “midea_ac.power_on 动作”此动作打开电源。模式与预设将恢复到关闭前的最后状态。
on_...: then: - midea_ac.power_on:midea_ac.power_off 动作
Section titled “midea_ac.power_off 动作”此动作关闭电源。
on_...: then: - midea_ac.power_off:midea_ac.power_toggle 动作
Section titled “midea_ac.power_toggle 动作”此动作切换电源状态。与按遥控器上的电源按钮相同。
on_...: then: - midea_ac.power_toggle:midea_ac.follow_me 动作
Section titled “midea_ac.follow_me 动作”此动作发送一个 IR FollowMe 命令,告诉空调使用更准确的 室温值,以替代室内机内部传感器。
on_...: then: - midea_ac.follow_me: temperature: !lambda "return x;" use_fahrenheit: false beeper: false配置变量:
-
temperature (必填,浮点数,可模板化): 设置内部温度传感器的值。该值将被限制在以下范围内:
- 当
use_fahrenheit为false时:0 °C 至 37 °C - 当
use_fahrenheit为true时:32 °F 至 99 °F
- 当
-
use_fahrenheit (可选,布尔值,可模板化): 指定
temperature值是否以华氏度表示。设为true时,温度以华氏度解析和发送。默认为false(摄氏度)。 -
beeper (可选,布尔值,可模板化): 更新时是否发出蜂鸣声。默认为
false。
midea_ac.display_toggle 动作
Section titled “midea_ac.display_toggle 动作”此动作切换空调屏幕。如果支持,通过 UART 工作,也可以通过 Remote Transmitter 工作。
on_...: then: - midea_ac.display_toggle:midea_ac.swing_step 动作
Section titled “midea_ac.swing_step 动作”此动作将导风板调整一步。需要 Remote Transmitter。
on_...: then: - midea_ac.swing_step:midea_ac.beeper_on 动作
Section titled “midea_ac.beeper_on 动作”此动作打开蜂鸣声反馈。
on_...: then: - midea_ac.beeper_on:midea_ac.beeper_off 动作
Section titled “midea_ac.beeper_off 动作”此动作关闭蜂鸣声反馈。
on_...: then: - midea_ac.beeper_off:使用 IR 命令的附加控制选项
Section titled “使用 IR 命令的附加控制选项”可以使用 FollowMe 功能和一些仅通过 IR 命令可用的其他功能。 下面是一个如何使用 Remote Transmitter 组件发送带有传感器值的 FollowMe 命令 以及控制 LED 显示屏灯光的示例。
# 配置示例
remote_transmitter: pin: GPIO13 # 用于 iot-uni-stick。 carrier_duty_percent: 100% # IR LED 用 50%,直连 TSOP IR 接收器输出用 100%。
sensor: - platform: homeassistant entity_id: sensor.room_sensor # 来自 HASS 的传感器 internal: true filters: - throttle: 10s - heartbeat: 2min # 更新之间的最大间隔。 - debounce: 1s on_value: midea_ac.follow_me: temperature: !lambda "return x;" beeper: false # 可选。更新时发出蜂鸣声。
# 用于发送显示控制命令和摆动步数动作的模板按钮button: - platform: template name: Display Toggle icon: mdi:theme-light-dark on_press: midea_ac.display_toggle: - platform: template name: Swing Step icon: mdi:tailwind on_press: midea_ac.swing_step:使用开关控制蜂鸣声的示例
Section titled “使用开关控制蜂鸣声的示例”switch: - platform: template name: Beeper icon: mdi:volume-source optimistic: true turn_on_action: midea_ac.beeper_on: turn_off_action: midea_ac.beeper_off:感谢以下人员对 UART 协议逆向工程和源代码的贡献,相关仓库如下:
特别感谢项目 IRremoteESP8266 对 IR 协议进行了描述。