Midea branded AC’s with ESPhome (no cloud)

This evening, I got mine working.

Here’s what I learned:

That 5 conductor wire is not the USB wire. There must be some little board in between the two. But I am only taking out a couple screws and gently prying at the front right area of my unit, so I’m very limited in what I can see and reach.[0]

I had tested for voltage on the 5-pin connector, but couldn’t find any. So I plugged it back together, then I got the expected 5VDC on the outer USB pins.

I then put everything together on a breadboard to test:

After some initial fits and starts[1], I was off to the races!

@topdog360, I have not tried to use the remote yet, but I did also experience some temperature weirdness (in the thermostat in HA web UI). After doing the following, it started working:

climate:
  - platform: midea
    # was originally:
    visual:
      min_temperature: 70
      max_temperature: 80
    # changed to:
    visual:
      min_temperature: 70°F
      max_temperature: 80°F

Now that I’ve proved to myself this works, I will work on miniaturizing it so I can tuck it back away in there nice and tidy (I did not have any ESP-01 on hand, but I will order some; or perhaps the Dudanov boards…).

I am also very seriously considering going out and buying 1 or 2 more of these units for other rooms in the house, and altogether stop using our extremely inefficient central A/C unit(!).

@balloob, If I do that, I should have 1-2 spares I could send you to play with. I’ll let you know.

Now, time for a celebratory cold one (or three)… :beers: :smiley:

[0] I had come across a pretty good teardown video for the Midea U-Shaped and I did not want to get into all that just yet, as my unit is still brand new.

[1] First I had logging enabled, which conflicted with the UART communication, so I disabled that. But I was still able to get logs via ESPHome wireless API (neat!). Then I realized I needed to flip TX/RX around.

1 Like

I don’t think the driver in the ESP32 can handle the current of the LED. I’ve only done this once (not on one of these dongles but on an Adafruit ESP32 development board) and in my research this is what I learned.

See this for reference

Typically the output of an Arduino type board does not have sufficient current to drive an LED so you need a driver circuit using a transistor.

It looks like maybe the transmitter you linked has all of that built in?

Got it. Honestly, I don’t know and i am winging this entire thing. I’ll give it a shot and report back whether or not I was successful.

Hi! Can you explain how do you do it???

thnks

Is it necessary to supply DE and RE ?

This works great but I’m experiencing an issue when setting min_temperature to 16.

The oddness comes because the UI keeps resetting the temp to 17C, on the web page of the dongle running ESP Home, and thus Home Assistant.

The AC stays at 16C, unless I turn it off and on again.

Anyone else seen this?

Hi all,

i am quite new, but i am as well interested in AC Dimstal to Home Assistant.

I running the “SMLIGHT.SLWF-01Pro” at the Dimstal Air Condition and it seems to work plug and play. I can switch it on and off and as well changing some settings.
But what i dont understand it seems that the step motor of the “air outlet control” shows a bit strange behavior now. It seems that the SLWF Stick runs other stepper values, so it can get now into a undbefined state where it still belives open and did not close completly. I hope you understand what i mean. By the way here are some debug messages of the module itself. Maybe u know something about this topic.

14:04:43	[D]	[AirConditioner:178]	
Enqueuing a GET_STATUS(0x41) request...
14:04:43	[D]	[ApplianceBase:173]	
Enqueuing the request...
14:04:43	[D]	[ApplianceBase:075]	
Getting and sending a request from the queue...
14:04:43	[D]	[ApplianceBase:162]	
TX: AA 21 AC 8D 00 00 00 00 03 03 41 81 00 FF 03 FF 00 02 00 00 00 00 00 00 00 00 00 00 00 00 03 9A 58 E6 
14:04:43	[D]	[ApplianceBase:063]	
RX: AA 22 AC 00 00 00 00 00 03 03 C0 00 41 28 7F 7F 00 30 00 00 00 5A 6E 00 00 00 00 00 00 00 00 00 58 42 73 
14:04:43	[D]	[AirConditioner:205]	
New status data received. Parsing...
14:04:43	[D]	[ApplianceBase:154]	
Destroying the request...
14:04:44	[D]	[AirConditioner:178]	
Enqueuing a GET_STATUS(0x41) request...
14:04:44	[D]	[ApplianceBase:173]	
Enqueuing the request...
14:04:44	[D]	[ApplianceBase:075]	
Getting and sending a request from the queue...
14:04:44	[D]	[ApplianceBase:162]	
TX: AA 21 AC 8D 00 00 00 00 03 03 41 81 00 FF 03 FF 00 02 00 00 00 00 00 00 00 00 00 00 00 00 03 9B 06 37 
14:04:44	[D]	[ApplianceBase:063]	
RX: AA 22 AC 00 00 00 00 00 03 03 C0 00 41 28 7F 7F 00 30 00 00 00 5A 6E 00 00 00 00 00 00 00 00 00 06 86 81 
14:04:44	[D]	[AirConditioner:205]	
New status data received. Parsing...
14:04:45	[D]	[ApplianceBase:154]	
Destroying the request...
14:04:45	[D]	[AirConditioner:178]	
Enqueuing a GET_STATUS(0x41) request...
14:04:45	[D]	[ApplianceBase:173]	
Enqueuing the request...
14:04:45	[D]	[ApplianceBase:075]	
Getting and sending a request from the queue...
14:04:45	[D]	[ApplianceBase:162]	
TX: AA 21 AC 8D 00 00 00 00 03 03 41 81 00 FF 03 FF 00 02 00 00 00 00 00 00 00 00 00 00 00 00 03 9C 85 B7 
14:04:45	[D]	[ApplianceBase:063]	
RX: AA 22 AC 00 00 00 00 00 03 03 C0 00 41 28 7F 7F 00 30 00 00 00 5A 6E 00 00 00 00 00 00 00 00 00 85 E8 A0 
14:04:46	[D]	[AirConditioner:205]	
New status data received. Parsing...
14:04:46	[D]	[ApplianceBase:154]	
Destroying the request...
14:04:46	[D]	[AirConditioner:178]	
Enqueuing a GET_STATUS(0x41) request...
14:04:46	[D]	[ApplianceBase:173]	
Enqueuing the request...
14:04:46	[D]	[ApplianceBase:075]	
Getting and sending a request from the queue...
14:04:46	[D]	[ApplianceBase:162]	
TX: AA 21 AC 8D 00 00 00 00 03 03 41 81 00 FF 03 FF 00 02 00 00 00 00 00 00 00 00 00 00 00 00 03 9D DB 60 
14:04:46	[D]	[ApplianceBase:063]	
RX: AA 22 AC 00 00 00 00 00 03 03 C0 00 41 28 7F 7F 00 30 00 00 00 5A 6E 00 00 00 00 00 00 00 00 00 DB 2C 06 
14:04:47	[D]	[AirConditioner:205]	
New status data received. Parsing...
14:04:47	[D]	[ApplianceBase:154]	
Destroying the request...
14:04:47	[D]	[AirConditioner:178]	
Enqueuing a GET_STATUS(0x41) request...
14:04:47	[D]	[ApplianceBase:173]	
Enqueuing the request...
14:04:47	[D]	[ApplianceBase:075]	
Getting and sending a request from the queue...
14:04:47	[D]	[ApplianceBase:162]	
TX: AA 21 AC 8D 00 00 00 00 03 03 41 81 00 FF 03 FF 00 02 00 00 00 00 00 00 00 00 00 00 00 00 03 9E 39 01 
14:04:48	[D]	[ApplianceBase:063]	
RX: AA 22 AC 00 00 00 00 00 03 03 C0 00 41 28 7F 7F 00 30 00 00 00 5A 6E 00 00 00 00 00 00 00 00 00 39 79 5B 
14:04:48	[D]	[AirConditioner:205]	
New status data received. Parsing...
14:04:48	[D]	[ApplianceBase:154]	
Destroying the request...
14:04:48	[D]	[AirConditioner:178]	
Enqueuing a GET_STATUS(0x41) request...
14:04:48	[D]	[ApplianceBase:173]	
Enqueuing the request...
14:04:48	[D]	[ApplianceBase:075]	
Getting and sending a request from the queue...
14:04:48	[D]	[ApplianceBase:162]	
TX: AA 21 AC 8D 00 00 00 00 03 03 41 81 00 FF 03 FF 00 02 00 00 00 00 00 00 00 00 00 00 00 00 03 9F 67 D2 
14:04:49	[D]	[ApplianceBase:063]	
RX: AA 22 AC 00 00 00 00 00 03 03 C0 00 41 28 7F 7F 00 30 00 00 00 5A 6E 00 00 00 00 00 00 00 00 00 67 BD E9 
14:04:49	[D]	[AirConditioner:205]	
New status data received. Parsing...
14:04:49	[D]	[ApplianceBase:154]	
Destroying the request...
14:04:49	[D]	[AirConditioner:178]	
Enqueuing a GET_STATUS(0x41) request...
14:04:49	[D]	[ApplianceBase:173]	
Enqueuing the request...

have you figured it out? I am also stuck on this one

Hi currently, i did not find the issue,
and this just perhaps with the ESP Module, in case i using the remote control it works fine. The commuication seems even good, i guess there is a command which creates the issue.

I’m not sure if it is better to start a new thread or not, but I’m having issues with a mr cool DIY-24-HP-C-230B (outside label). I can change modes and set points, but almost nothing else. I can’t change fan modes at all, it just flips back to auto constantly. It’s like the new setting isn’t being sent correctly. Sometimes even changing modes doesn’t work and you have to turn the device off, then change modes to the desired one. Has anyone else bumped into this?

Hello!
I’m also trying to add an esp to my climate controller. It’s a Comfee MPPH-07CRN7, apparently Midea rebrand also sold as Arctic Cool or so.
It has a labeled wifi port that is unpopulated, so no connector and no 5V regulator and also no jumper resistor for ground, but there are 2 signals connected to the MCU with a termination resistor both at 5V, which I guess indicates it’s a uart port.
I have connected an ESP32-S with levelshifter to those two pins and unfortunately it seems it’s not quite working.

I’ve scoped out the UART pins, on one pin the signal only drops to about 0.6V when low and on the other all the way to 0, so i suppose this would be the proper Rx pin on the control unit, however on neither pin I get a response from the unit. There is also no signal at all when the ESP is not connected and I probe the pins (which I did before connecting anything).

Here’s a few images of the board:



Are the pins maybe not UART after all? Do I need a wifi daughterboard with the USB port on it? Since I only have 4 pins I figured likely not …

I also wonder if Q9 plays a role, it seems to be in place to switch wifi on and off. If I’m unlucky maybe the MCU does not have the uart port flashed after all :thinking:

Maybe anyone has some pointers for me? :hugs:

Hey @dydx did you make any progress on connecting with the HA/HB connectors - i have a KJR-120X which is connected to a mrcool ducted heat pump/air handler that i’d like to get control of :slight_smile:

I tried the same thing connecting an rs-485 USB connection from my laptop to the HA/HB connection in parallel with the KJR-120X and the KJR-120X turned off, I haven’t tested any further yet, but was curious if you had any progress?

Also in your previous posts you mentioned getting successful rs485 info from your carrier unit - how were you connecting/getting that info if not from the HA/HB connection ?

According this post it also requires a certain software component for wifi to work:

A bummer, I was kind of afraid this was the case. Thanks for the info! Will go the wired IR route then … maybe even grab the 7segment data line so I can read error codes …

Thank you, It’s the only thing that has worked for me! :slight_smile:

1 Like

Doing a quick check, I recently got a duct-type midea unit which comes with a separate IR receiver/display and a cable to connect to…something


e

Is this an option to connect the esp based solution as discussed here? Alternatively the manufacturer is able to supply a wifi module. There is no USB socket somewhere.

1 Like

Goeie vraag (good question).

Well, the wifi module must connect somewhere, and it most likely uses a serial connection.

If you can figure out where the serial TX/RX signals are, then it would be easy to connect the esphome module :wink:

1 Like

You will need this:

1 Like

You also need wf-60a1 module, that will provide uart interface.

2 Likes

Hi, does anyone know if V5MDI32 (https://inventor-klimatizace.cz/klimatizace-potrubni-v5mdi/) is compatible with Midea Air Conditioner — ESPHome I spent last few hours searching but I can not find anything which would point me in the right direction. Any advices appreciated.