midea-ac-py
midea-ac-py copied to clipboard
This is a custom component for Home Assistant to integrate the Midea Air Conditioners via the Local area network.
English Version | 中文版
This is a custom component for Home Assistant to integrate the Midea Air Conditioners via the Local area network.
Tested with hass version 0.110.2
Installation
Install from HACS
Search the HACS Store for midea_ac
Install manually
- Clone this repo
- Place the
custom_components/midea_acfolder into yourcustom_componentsfolder
Configuration
Configuration variables:
| key | description | example |
|---|---|---|
| platform (Required) | The platform name. | midea_ac |
| host (Required) | Midea AC Device's IP Address. | 192.168.1.100 |
| id (Required) | Midea AC Device's applianceId. | 123456789012345 |
| use_fan_only_workaround (Optional) | Set this to true if you need to turn off device updates because they turn device on and to fan_only | true |
How to Get applianceId:
- you can use command
midea-discoverto discover midea devices on the host in the same Local area network. Note: This component only supports devices with model 0xac (air conditioner) and wordssupportedin the output.
pip3 install msmart
midea-discover
- if you use Midea Air app outside China, there is a easy way to get your deviceid.
- open Midea Air app, and share the device, you will get a QR Code.
- save the QR Code
- upload QR Code Sreenshort to https://zxing.org/w/decode.jspx or decode QR code use other tool.
- you will get the data like MADEVICESHARE:<base64_string>
- decode base64 string online https://www.base64decode.org/ or use other tool
- you will get the device id
- if you use android, you can use
adb,filter from log:
adb logcat | grep -i deviceid
-
if you use iPhone,iPhone connects to macOS with a data cable and filters the applianceId from the console log
-
If you do not have the above environment and conditions, you need to capture the air conditioner and save the files, after can be used pcap-decrypt.py to Get. Remember to use the number, not hex string.
Example configuration.yaml:
- Single device
climate:
- platform: midea_ac
host: 192.168.1.100
id: 123456789012345
- Multiple device
climate:
- platform: midea_ac
host: 192.168.1.100
id: 123456789012345
- platform: midea_ac
host: 192.168.1.200
id: 543210987654321
Buy me a cup of coffee to help maintain this project further?
- via Paypal
- via Bitcoin (3GAvud4ZcppF5xeTPEqF9FcX2buvTsi2Hy)
- via AliPay(支付宝)
- via WeChatPay(微信)
Your donation will make me work better for this project.