I’ve been asked to secure this info from Any Support for Midea A/C
I’ve put here all relevant info from that topic:
Looks like it is finally working!
Thanks Mac-Zhou, ReneKlootwijk, SergeyDudanov, Fraschi for awesome collaboration.
(it already works, but development still ongoing to support more models and functions)
Or make your own:
and to program it
(Check this link for more options flashing esp-01’s)
I used this to flash the esp-01: USB Serial Adapter CH340G 5V/3.3V USB to TTL-UART.
As the AC itself doesn’t use USB (even though it uses an USB connector), you cannot use the programmer adapter there, you need the 5V/3.3V Adapter.
Mine looks like this (my A/C was both equipped with USB as well as header plug, so I could choose)
Normally ‘programming’ would be done from the ESPHome add-on
example of my mideahvac.yaml:
# Example configuration entry esphome: name: mideahvac platform: ESP8266 board: esp01_1m wifi: ssid: "mywifissid" password: "mywifipassword!" # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Midea-Hvac Fallback Hotspot" password: "53416ef6123" captive_portal: # Enable Home Assistant API api: ota: # Disable logging over UART (required) logger: baud_rate: 0 # UART settings for Midea dongle (required) uart: tx_pin: 1 # hardware dependant rx_pin: 3 # hardware dependant baud_rate: 9600 # Optional (if you want modify settings) midea_dongle: period: 1s timeout: 2s num_attempts: 3 # Main settings climate: - platform: midea_ac name: "Midea AC" # Use a unique name. autoconf: true beeper: true # Beep on commands. visual: # Optional. Example of visual settings override. min_temperature: 17 °C # min: 17 max_temperature: 30 °C # max: 30 temperature_step: 0.5 °C # min: 0.5 supported_modes: # All capabilities in this section detected by autoconf. - FAN_ONLY - HEAT_COOL - COOL - HEAT - DRY custom_fan_modes: - SILENT - TURBO supported_presets: # All capabilities in this section detected by autoconf. - ECO - BOOST - SLEEP custom_presets: # All capabilities in this section detected by autoconf. - FREEZE_PROTECTION supported_swing_modes: - VERTICAL - HORIZONTAL - BOTH outdoor_temperature: # Optional. Create outdoor unit temperature sensor (may display incorrect values after long inactivity). name: "Temp" power_usage: # Optional. Create power usage sensor (only for devices that support this feature). name: "Power" humidity_setpoint: # Optional. Create indoor humidity sensor. name: "Humidity"
A full overview of parameters can be found here
Checking size /data/mideahvac/.pioenvs/mideahvac/firmware.elf RAM: [===== ] 45.2% (used 37064 bytes from 81920 bytes) Flash: [==== ] 40.1% (used 411128 bytes from 1023984 bytes) Creating BIN file "/data/mideahvac/.pioenvs/mideahvac/firmware.bin" using "/root/.platformio/packages/framework-arduinoespressif8266/bootloaders/eboot/eboot.elf" and "/data/mideahvac/.pioenvs/mideahvac/firmware.elf" ========================= [SUCCESS] Took 8.98 seconds ========================= INFO Successfully compiled program.
OTA works for me nowadays(which was not the case when i used the dev repository).
But, if it fails, you can also compile it on HA, and then download and flash it over ser2usb,
Or compile the bins on W10 and flash it using the serial2usb com-port.
Below my command lines used to compile on W10:
cd c:\workshop\esphome pip install esphome pip install esphomeflasher pip install --upgrade git+ https://github.com/esphome/esphome esphome mideahvac.yaml wizard esphome mideahvac.yaml compile esphomeflasher using the compiled C:\_workshop\esphome\mideahvac\.pioenvs\mideahvac\firmware.bin
Assuming you already installed python
More info here:
PS: If you have a Midea branded AC which uses an osk102/103 wifi module, and it doesn’t work (or works partially), please contact the Midea-msmart development team on Telegram and they will try to fix it😉