Home Assistant custom integration to control Midea (and associated brands) air conditioners via LAN.
Midea is an OEM for many brands including: AirCon, Alpine Home Air, Artel, Beko, Canair, Carrier, Century, Comfee, Electrolux, Friedrich, Galactic, Goodman, Hualing, Idea, Inventor, Kaisai, Kenmore, Klimaire, Lennox, LG, Mitsui, Mr. Cool, Neoclima, Olimpia Splendid, Pioneer, Pridiom, QLIMA, Qzen, Rotenso, Royal Clima, Samsung, Senville, Thermocore, Toshiba, Trane and more.
A device is likely supported if it uses one of the following Android apps or it's iOS equivalent.
Note: Only air conditioner devices (type 0xAC) are supported.
See Getting Device Info to determine if a device is supported.
Thanks to the community the integration is available in the following languages.
Or search HACS integrations for "Midea Smart AC".
custom_components
directory in your Home Assistant configuration directory. It may need to be created.custom_components/midea_ac
directory into the custom_components
directory.Midea Smart AC is configured via the GUI. See the HA docs for more details.
Click the Add Integration button and search for "Midea Smart AC".
Devices can be automatically discovered and configured or manually configured.
For automatic configuration, select "Discover devices". Leave the host field blank to search the local network, or provide an IP/hostname to configure a specific device.
For manual configuration, select "Configure manually". Enter the device ID, IP, and port. V3 devices require the token and key parameter. This information must be acquired manually.
Name | Description | Required | Example |
---|---|---|---|
ID | Device ID | Yes | 123456789012345 |
Host | Device IP address | Yes | 192.168.1.100 |
Port | Device port | Yes | 6444 |
Token | Device token | For V3 devices | ACEDDA53831AE5DC... (Length 128) |
Key | Device key | For V3 devices | CFFA10FC... (Length 64) |
Additional options are available to tweak integration behavior per device.
Name | Default | Description |
---|---|---|
Beep | True | Enable beep on setting changes. |
Temperature Step | 1.0 | Step size for temperature set point. |
Fan Speed Step | 1 | Step size for custom fan speeds. |
Use Fan-only Workaround | False | Enable this option if device updates cause the device to turn on and switch to fan-only. |
Show All Presets | False | Show all presets regardless of device's reported capabilities. |
Additional Operation Modes | Empty | Additional HVAC modes to make available in case the device's capabilities are incorrect. |
Maximum Connection Lifetime | Empty | Limit the time (in seconds) a connection to the device will be used before reconnecting. If left blank, the connection will persist indefinitely. If your device disconnects at regular intervals, set this to a value below the interval. |
Use Alternate Energy Format | False | Use an alternative data format when decoding energy and power data from the device. |
Some users have reported issue with their devices periodically becoming unavailable, and with logs full of warnings and errors. This is almost always due to the device terminating the existing connection and briefly rejecting new connections.
It can usually be resolved by setting the Maximum Connection Lifetime
to a value of about 90 seconds.
Use msmart-ng to obtain device information.
pip install msmart-ng
msmart-ng discover
Check the output to ensure the type is 0xAC and the supported
property is True.
This project is a fork of mac-zhou/midea-ac-py, and builds upon the work of: