Midea branded AC’s with ESPhome (no cloud)

See post#1
something like this

I feel really stupid right now. I do understand AC uses USB connector, but for serial communication, no issue there, I can plug to header on AC board and get rid of the confusing usb adapter.

so this adapter creates 5v and 3.3v from esp01 ESP8266 module

then the module itself

then I should be able to progrram the module using this

then connect it to header on AC board using this

and done no soldering required?

Seems quite easy. But just to verify - apart from the now unavailable https://github.com/dudanov/iot-uni-dongle there is no single board option, right?

btw i’m creating this for harier ac, not any of the midea brands, but this is much more active.

also all of this is available on allegro, that is quite nice so no months as on ali

Yeah, that sums it up quite well…

The level shifter is used to supply 3.3v to the esp and also converts the 3.3v IO back to 5v.

And i think the esp12 you posted can be used, but you need to connect the serial to GPIO

and then these need to be shifted again :thinking:
Not too difficult, but does require some soldering

With the esp01 with level shifter there was no need to do any soldering so it was the easiest and fastest and cheapest way to try it out :yum:

No. I did not get feedback from here or the telegram channel.

JLCPCB has a shortage of KT-0603RG which is a LED on the board.

Aside from the USB connector (i found this one and I think it would work), they have everything else.

I think this would be a replacement, but I am not experienced enough to know: https://www.mouser.com/ProductDetail/ROHM-Semiconductor/SML-522MUWT86?qs=sGAEpiMZZMuCm2JlHBGefmdlRmH3tfeBcLZB%2Bj4BtpQ%3D

Be carefull regarding the USB connector; most boards use a USB ‘lookalike’
image
(note the notch at the sides)

I recommend to use the header plug:
image

That is a good point. I cannot tell from the “reference” image if it has the proper form factor.

image

It kind of looks like the edges are raised, but I just cant tell.

Is there a known good source for USB? I will have to dig into my window unit and see if there is a header.

Some connectors are easy to disassemble and modify:

1 Like

Hello and thanks for this awesome project!

I’m controlling a Midea AC using an esp01 dongle via UART, it works great.

I’m trying now to setup a remote_transmitter to use the IR-only functionality.
I managed to do it by connecting GPIO2 directly to the TSOP IR receiver output, and use the following config:

remote_transmitter:
  pin:
    number: GPIO2
    inverted: true
  carrier_duty_percent: 100%

The problem: although I can control the IR functionalities via the esp01, the AC’s real remote does not work! I guess the GPIO2 is pulling the IR receiver output high (or low?) when idle, preventing the real receiver from working.

Any way to workaround this? (my hardware experience is limited).

I guess I could use a real IR transmitter, but a direct connection seemed an easier/more reliable approach.

For anyone having a similar issue, the solution to connect directly to the IR receiver is to configure the output as “open drain” as follows:

remote_transmitter:
  pin:
    number: GPIO2
    inverted: true
    mode: OUTPUT_OPEN_DRAIN
  carrier_duty_percent: 100%

My understanding is that this changes the way a logic 1 is sent:

  • push-pull (default): sets the pin to HIGH state
  • open drain: leaves the pin “unconfigured”, to be pulled by an external pull up resistor.

When the dongle’s IR functionality is not used, we are effectively sending 1 all the time (the output is inverted), setting the pin to HIGH which prevents the real IR receiver from working. With open drain, we leave the pin unconfigured, so the IR receiver can drive it itself.

2 Likes

Good news for anyone that has a MAW08V1QWT (aka the U shaped window unit)

The AC side of the USB cable is not a keyed connector. It is just a normal USB A that I could stick any USB cable I had into it.

The dongle side is absolutely keyed, but that doesn’t matter.

I got a nodemcu and an esp-01(with esp-01 am). I tried to connect it to my midea climate, but it doesn’t seem to work. I noticed that none of them recive rx signal.
Any tips on what could be wrong?

Nodemcu & esp-01 log:

tried swapping tx/rx ?

Thank you, it solved my problem

Hi @aceindy,

First of all thanks for your amazing work here, I really appreciate it a lot! :slight_smile:

I read more or less the entire thread and tried multiple setups but didn’t hat any luck yet.

My board looks pretty similar to the one @nvschilleman posted but I don’t have the USB daughter board. Instead there is a separate PCB where some users have their Wifi USB board. On there are connectors for an external switch and the wired controller which I both tested without success.

I also soldered on a connector to the CN2 port on the display port but couldn’t get it working.

Without the board on CN3 the IR remote isn’t working.

Do you have any more ideas?

Here are the pictures.




The unit is a Remko MXW 354.

Thanks for your help!

UPDATE:

This manual shows the exact same setup as for mine, it looks like the WiFi board needs to be connected at the CM3 port where the other adapter board is connected in my case.

According to that my best bet is to connect via the CCM Comm.Bus / Wired Controller port?

Doesn’t looks familiar to me, sorry.
Maybe the optional wifi board looks like this?

(from an earlier post)
And as you mentioned, it should be connected to CN3 (as where your comm board is plugged in)

Thanks for the quick reply. I’ll try to find one of the wifi boards on ebay or aliexpress to see if it’s compatible. Otherwise I’ll try to find a wired controller and reverse engineer the protocol :stuck_out_tongue:

I use the same as from this post, wifi directly plugged into cn3:

I do notice however that my CN3 has 4 pins and yours uses 5 (and so does the wifi board from previous post🤔)
But i really don’t know if that wifi board goes with your ac….

Units with a 5 pin CN3 typically use a separate board which contains the uart bus thus the “USB” port. However, I have been told there are differences between a Wifi enabled indoor unit PCB and a non Wifi enabled one, which would mean just plugging in the PCB belonging to CN3 would not work.

Worth trying to imho

I looked at the board again and noticed that the wired controller is also labeled as 485 Wire-Controller. I guess this means the controller board somehow uses RS485 to communicate to the wired controller.

Does anyone know any details regarding the RS485/Modbus interface?

If it is a midea clone, it probably uses the same protocol…

Some one else posted this diagram, looks very similar to yours

it mentions both CN2 and CN3 on the display board (and your diagram only mentions CN3)

I also noted that that 485 board should appearantly be connected to CN2, but in your case it is actually connected to CN3, while CN2 is not installed??
:thinking:

It wouldn’t surprise me if you can just replace that 485 board with a wifi controller…
(how are CN2 and CN3 wired on the pcb? parallel ??)