Any Support for Midea A/C?

Same problem here, were you able to make it work somehow?

No luck yet, I went ahead and setup a Broadlink Mini to send basic commands for now.

has somebody tried to decipher the USB protocol between the wifi module and the AC? the wifi modules are somewhat unreliable: need to be repaired every month, at least for me. it would be nice to a mini computer (e.g. pi) directly to the AC’s usb slot.
Any ideas on how to get started on that project? I was thinking of snooping the USB communication using some MITM setup.



Anyone have come across the SK103 usb device ?? can it be adopted to work ?? Currently I tried both default components for both Mac_zhou and andersonshatch with no sucess …

I think this project is a more promising solution for HA, it will bypass the whole cloud idea

…as does this component. It is working only via LAN, the cloud is not needed at all. :slight_smile: As you can see, your module is based on the work of the component here in this thread.

But nevertheless it is another way to get to it, I’m always happy to see more than one solution. But your module isn’t a component for HA, and it isn’t working right now, or do I misunderstand:

In the current version of this module communication using the WiFi SmartKey and the Midea Cloud and communication via a TCP serial bridge connected to the UART port is supported. Direct connection to the WiFi SmartKey interface via a local LAN connection will be added later.

But…a (fake) cloud never the less :thinking:

Correct, work in progress :yum:
(it is not my project either…i’m just monitoring it closely)

Depends on the model. :wink: Different models need to have the fake cloud, others don’t. My Olimpia Splendid (a labeled Midea) for example doesn’t. This component or better the underlying library does account for that.
It is a very deep project, and can be confusing… I need nearly an hour every week to read and check the Telegram group… :wink:

But as I said, please keep monitoring the new module, if it works, especially only internal (on LAN), it would be great to have an alternative. And the HA bit (the custom_component) shouldn’t be hard to implement, if the module is ready. :+1:

An intresting differentiation there. “OSK-103”. The previous attempts were based on the OSK-102 usb stick. Newer models (like xreme save) use the 103 variant.

1 Like

I managed to setup Mac_zhou’s component through HACS successfully.

Quick Question… is it expected that it takes 10s for the AC to receive the command and turn on or off for example?

Still no luck with my Olimpia Splended (also not working very hard on it)

Yup, also reading Telegram :stuck_out_tongue:

Nope, that is the easiest part hehe :wink:

Since ReneKlootwijk’s project doesn’t use neither OSK102 nor OSK103 it will be irrelevant :smiley:

Wonder if anyone can provide any info on how to add newer models to any of the existing add ons

Any clue about the update with fan workaround?
I think that the problem is in the base command that triggers the fan mode, I can’t find the previous mentioned code with chinese comments.
I’ve also tried to grab data from the android apps (Nethome Plus and Midea Air) but I can’t understand the query-response. It seems that there is a plain-text query to with: applianceId, src, format, sign, stamp, language, sessionId, funId, order. I think that the command is the latest one but I can’t decode/understand that and/or relate this tho the known base command.

It seem’s that my modified lib solves the update-fan-issue in midea-ac-lib, now I’m trying to get it work in HA. here the repo

UPDATE: moved to LAN readings with fake cloud, the midea-ac-lib modification made works on HA (to do that, I’ve directly modified the py file in hass venv) but after while I start getting the unauthorized message (too many connection by hour to the cloud).

1 Like

Hi @mac_zhou , hope you’re doing fine!

I just realized that when I restart HASS from the web interface I get the following errors:

Oct 08 20:27:35 microserver hass[26526]: Traceback (most recent call last):
Oct 08 20:27:35 microserver hass[26526]:   File "/srv/homeassistant/lib/python3.8/site-packages/homeassistant/helpers/", line 278, in async_update_ha_state
Oct 08 20:27:35 microserver hass[26526]:     await self.async_device_update()
Oct 08 20:27:35 microserver hass[26526]:   File "/srv/homeassistant/lib/python3.8/site-packages/homeassistant/helpers/", line 469, in async_device_update
Oct 08 20:27:35 microserver hass[26526]:     await self.async_update()  # type: ignore
Oct 08 20:27:35 microserver hass[26526]:   File "/home/homeassistant/.homeassistant/custom_components/midea_ac/", line 114, in async_update
Oct 08 20:27:35 microserver hass[26526]:     await self.hass.async_add_executor_job(self._device.refresh)
Oct 08 20:27:35 microserver hass[26526]:   File "/srv/homeassistant/lib/python3.8/site-packages/homeassistant/", line 350, in async_add_executor_job
Oct 08 20:27:35 microserver hass[26526]:     task = self.loop.run_in_executor(None, target, *args)
Oct 08 20:27:35 microserver hass[26526]:   File "/usr/lib/python3.8/asyncio/", line 775, in run_in_executor
Oct 08 20:27:35 microserver hass[26526]:     executor.submit(func, *args), loop=self)
Oct 08 20:27:35 microserver hass[26526]:   File "/usr/lib/python3.8/concurrent/futures/", line 179, in submit
Oct 08 20:27:35 microserver hass[26526]:     raise RuntimeError('cannot schedule new futures after shutdown')
Oct 08 20:27:35 microserver hass[26526]: RuntimeError: cannot schedule new futures after shutdown

Do you think you can take a look on that?
Thank you.

Hi been trying to read through the 1.2 million posts here to add midea heatpump to home assistant and have a huge headache. :slight_smile:
Can someone point me to the latest and easiest way to get this working


Hi there,

Did spend a couple of hours trying to integrate my Midea AC with Home Assistant but it seems like I’m out of luck.

I’m using the WiFi Pen CE-SK103 and running the midea-discover command is returning my AC unit as “unsupported”.

INFO:msmart.cli:Midea Local Data 837000b8200f04015a5a0111a8007a80000000000000000000000000ba460000001d00000000000000000000000000003c5172d3d0a4df844ee8df64f035a7fe64e10262e80db9f1f6aa496389544fd6eca23a289a63df94c3329e3b9fec32def646686eec66b7b29f616b9c4bcbee4c55fd6e01d5cd6102e942d91d7c28c18790b13be000894715b606127e07c2fecff31443d17c3aac03a7656614ae1dca44458727958a779ee5e6fbb540f6db8302dfa542a14e63271e56d829714f7d5ba5
INFO:msmart.cli:Decrypt Reply: 8601a8c02c19000030303030303050303030303030305131353032444242354233343338303030300b6e65745f61635f333433380000000001000000040000000000ac00000000000000502dbb5b3438069fcd0300080103010000000000000000000000000000000000000000
INFO:msmart.lan:Couldn't connect with Device
INFO:msmart.cli:*** Found a unsupported device - type: '0xac' - version: V3 - ip: - port: 6444 - id: MY_ID - sn: MY_SERIAL - ssid: net_ac_3438

Still, I did install and configure the HA component found here and my unit is correctly listed on HA entities, but the AC state is wrong and sending commands don’t do anything.

Is there anything I can do to fix this or it’s simply not supported yet? Any extra information I could provide to help?


Looks like it is finally working!
It is awaiting the pull-request into esphome
but you can already obtain it here

Thanks Mac-Zhou, ReneKlootwijk, SergeyDudanov, Fraschi for awesome collaboration.
(it already works, but development still ongoing to support more models and functions)

I’ve secured all info in a new topic here:

Great, ty all for you hard work. Can you please provide some info on how to test it ?? (download the repo and add it as custom component) ?