Midea Air Conditioner

The midea_ac component creates a Midea air conditioner climate device.

This component requires a auto-loaded midea-dongle component, that use hardware UART.

Note

This protocol also used by some vendors:

Example of hardware implementation is Midea Open Dongle in free KiCad format.

# Example configuration entry

# Disable logging over UART (required)
logger:
  baud_rate: 0

# UART settings for Midea dongle (required)
uart:
  tx_pin: 1
  rx_pin: 3
  baud_rate: 9600

# Optional (if you want modify settings)
midea_dongle:
  strength_icon: true

# Main settings
climate:
  - platform: midea_ac
    name: "My Midea AC"
    visual:
      min_temperature: 18 °C
      max_temperature: 25 °C
      temperature_step: 0.1 °C
    beeper: true
    swing_horizontal: true
    swing_both: true
    outdoor_temperature:
      name: "Temp"
    power_usage:
      name: "Power"
    humidity_setpoint:
      name: "Hum"

Configuration variables:

  • id (Optional, ID): Manually specify the ID used for code generation.

  • midea_dongle_id (Optional, ID): Manually specify the ID of the midea_dongle if you want to use multiple devices.

  • name (Required, string): The name of the climate device.

  • outdoor_temperature (Optional): The information for the outdoor temperature sensor.

    • name (Required, string): The name of the sensor.

    • id (Optional, ID): Set the ID of this sensor for use in lambdas.

    • All other options from Sensor.

  • power_usage (Optional): The information for the current power consumption sensor.

    • name (Required, string): The name of the sensor.

    • id (Optional, ID): Set the ID of this sensor for use in lambdas.

    • All other options from Sensor.

  • humidity_setpoint (Optional): The information for the humidity indoor sensor (experimental).

    • name (Required, string): The name of the sensor.

    • id (Optional, ID): Set the ID of this sensor for use in lambdas.

    • All other options from Sensor.

  • beeper (Optional, boolean): Beeper feedback on command. Defaults to False.

  • swing_horizontal (Optional, boolean): Enable swing horizontal option. Defaults to False.

  • swing_both (Optional, boolean): Enable swing both option. Defaults to False.

  • All other options from Climate.

Configuration variables of midea-dongle component:

  • id (Optional, ID): Manually specify the ID used for code generation.

  • uart_id (Optional, ID): Manually specify the ID of the UART Bus if you want to use multiple UART buses.

  • strength_icon (Optional, boolean): Set if your device have signal strength icon and you want to use this feature. By default, on connected state, icon show maximum signal quality. Defaults to False.

Acknowledgments:

Thanks to the following people for their contributions to reverse engineering the UART protocol and source code in the following repositories:

See Also