Midea branded AC’s with ESPhome (no cloud)

Hi everyone,

I wanted to share an update for those using follow me action. I’ve created a pull request on ESPHome that improves the functionality of the Follow Me action for Midea AC units, specifically allowing temperature updates to be sent in Fahrenheit. This should resolve an issue where Midea AC units would switch to Celsius by default when receiving updates from ESPHome, which was inconvenient for users who prefer Fahrenheit.

The action, midea_ac.follow_me, now supports temperature input in Fahrenheit. Here’s a quick example of the YAML setup:

on_...:
  then:
    - midea_ac.follow_me:
        temperature: !lambda "return x;"
        use_fahrenheit: true
        beeper: false

Configuration options:

  • temperature: Sets the external room temperature for the AC to use.
  • use_fahrenheit: When set to true, sends temperature in Fahrenheit (defaults to false, Celsius).
  • beeper: Optionally enables a beep on each update (defaults to false).

I’d love some help testing this to ensure it works well across various Midea based AC models. If anyone here is able to test it and share feedback here or on github pull request, it would be greatly appreciated!

For more info how to test it, take a look at pull request external component example. Syslog is not needed.

Thanks for your time and support!

1 Like

I tried your PR, it works wonderfully! thank you, thank you!

for others, if you want to try:

$ pip3 install git+https://github.com/DjordjeMandic/esphome.git@midea-follow-me-temp-f
# update your_config.yaml to add `fahrenheit: true`
$ esphome run your_config.yaml --device 192.168.x.x

can’t wait for this to get merged! thanks again @DjordjeMandic

1 Like

Yes, XYE seems the best way to go.

Some Units have a directly impelented Modbus-Port (PQE) that should work as well.

Maybe someone figures out, how to design a little circuit that works for the HA-HB interface as well :wink:
It seems to be described in this patent:
US20230239167A1 - Control method and control apparatus for communication device, and communication system and storage medium - Google Patents
or the Chinese (engl. translated) version
CN112556105B - Control method, control device, communication system and storage medium for communication equipment - Google Patents

For HAHB it do not think that it is that complicated as described in the document, but that the power is taken from the 2 wires over a transformer that blocks modulated differential signals from other sources and that there is enough dampening by capacitors, that the power-consumption ripples are much lower than the communication patterns.

I’m happy to help with both hardware development and testing for xye and pqe and ha-hb interface. Just i need some intro about hardware required. I’ve got minisplit inverter ac that’s midea under the hood. I posted photo of indoor wiring diagram in #1218 above but i only have display board currently. What’s exact part number for multifunction board?

For wall mounted splits AC with internal 12V connection this module is often used: (in this case as Bosch brandlabel)

This module is shipped with 2 wiring harnesses which are the same BUT does not have the adapter cable that connects the plug on the AC’s main control board pcb (CN32) with the harness (because Bosch unit come preinstalled?)

On my unit at home i use a kit that is almost the same as the Bosch.
At my unit the 12V (CN32) cable was not already mounted and shipped with the board, but i had to fully disassemble the unit to plug it into the right connector.
–>The wiring between CN32 (main control board) and CN43 (multifunction/adapter board) is split into 2 cables.

(My unit: Midea All easy Blue == Xtreme Save Blue)

My module was sold as MFB-C and is shipped with the missing 12V cable (for me the other wiring looked the same incl. same poliarity as the bosch labeled, PCB has same ID sticker!)
The bad thing is, that i need the box formfactor like the bosch module has, but MFB-C is some other formfactor. If i have some time in the next days, then i print a housing.

@DjordjeMandic thanks a lot for your investigation! You added another brandlabel for that kind of AC - i was not aware that Midea is behind some Samsung variants too…

Indoor Fan Speed RPM Query

For the AR12TXHQASINEU AR3500 mini-split, operating at 23°C in heating mode with a maximum airflow of 540 m³/h, we can estimate airflow at different fan speeds based on proportional RPM scaling. This approach gives us the following approximate values:

Fan Speed and Corresponding Airflow Rates (approximately)

Mode IF Parameter (HEX) Indoor Fan (DEC) RPM Approximate Airflow (m³/h)
Silence 41-42 65-66 650-660 RPM ~280 m³/h
Low 47-48 71-72 710-720 RPM ~305 m³/h
Medium 5B-5C 91-92 910-920 RPM ~390 m³/h
High 6F-70 111-112 1110-1120 RPM ~475 m³/h
Boost/Turbo 7D-7F 125-127 1250-1270 RPM ~540 m³/h

Calculating Power Transfer and COP

With measurements of inlet and outlet air temperature, humidity, pressure, and airflow, you can calculate the power transferred to the air using:

P = density × flow rate × specific heat × ΔT

Here:

  • Power Transferred to Air (or Power Output) can be calculated from airflow and temperature difference.
  • Power Input can be read directly from an electricity meter.

For instance, with an airflow of 540 m³/h in turbo mode, my manual calculation (using only ΔT and airflow) resulted in a power output of 4.16 kW at 2°C outdoor temperature, while drawing approximately 1.3 kW from the wall, yielding a COP of ~3.2.

Inquiry Mode and Accessing RPM Data

These fan speeds were obtained manually using the IF parameter in inquiry mode. I’m exploring whether there’s a way to read RPM directly via UART or XYE/Modbus protocols.

While the unit has a built-in fan RPM sensor that could be tapped for direct readings, there may be a simpler way to access this data. If anyone has experience with accessing RPM values through these protocols or knows whether COP and EER are directly reported by the unit, that information would be helpful.