Xiaomi Chuangmi_ir (Universal IR Remote Controller)


I need the Toggle Switch Back!!! Please!!! Pretty Please!!! :slight_smile:


Thanks the suggestion helped, I wasn’t holding the button down the the air con sends lots of commands like turn on temp setting fan settings etc all at once.

I tested learning my tv remote and it works perfect turning on and off with the same script.

Thank you for the great work on this component


Is there any plan to build custom component for ac component ? I’m still hesitating to use my xiaomi ir.


Same thing happens to me when I try to send air conditioner codes!

When I send the command, the IR device’s blue light turns off and the device stops responding until I unplug it and plug it again. It’s like it crashes.

Any suggestion?


Oh, I got it! Maybe it was luck, but I re-learned the codes and this time I kept the button pressed on the remote until the Xiaomi IR’s blue light stoped blinking. Then I copied the codes and now they work.

I don’t know if this is important or not, but when I was having the “device hanging” problem my codes did not end with “=”. I’m not sure if all of the IR codes must end with an equal sign, but I can see that the codes that are hanging @lerroy_b 's device are not finished in “=” either.

Is this possible?

EDIT: I found out something that might be the root of the problem. In the documentation you can read:

After learning the command the base64 string can be found as a notification in Overview, the string can be copied by left clicking on the string and choose the copy option.

But this is only half the truth, because if you follow those steps (at least in Chrome / MacOS), only the code is selected, but the “=” sign is left off the selection.
I discovered this by right-clicking the code and selecting “Inspect element” in the context menu of the browser.

Now that I’ve added the “=” character at te end of the codes, everything works flawlessly :slight_smile:


I had the same issue and would have never found out the trick with the equal sign. I just added the = sign as a suffix of all my commands without relearning them and it worked.

Now the blue led is always on again or flickering and never ‘stuck’.

Thank you very much @matto



I’m glad it helped!

I guess this is something that should be present in the documentation of the component.


Wouldn’t it be awesome if we could algorithmically generate the RAW data to control our airconditioners. Like you I have saved some preset codes for some typical temp/fan combinations and have them working on three Xiaomi IR gateways around the house. The issue it I have quite a list of scripts to do just these few combinations. Worked great for summer but here in Aus it it coming into winter and will need to re-learn some codes for heating - I can see an exponential growth in the number of scripts to trigger all these!

now I saw this great piece of work https://github.com/markszabo/IRremoteESP8266/tree/v2.1.0

It has the essence of how to create the IR codes for a whole bunch of airconditioner models. So for example I can generate the code for 23° Cool, high Fan. Then I can step the temp up or down and send a code for 24° or 25° just as easily.

now - anyone out there have expertise for porting this into our HA component? :slight_smile:

Cheers in advance.


Hello I made Generic Thermostat component with Xiaomi IR check it:


Hi there - I had the IR remote set up in the latest MiHome app on Android but then uninstalled that and installed 5.0.0 as per the instructions for getting the token…

Now it won’t find the Remote… I’ve reset the actual remote but the app can’t seem to find it - any ideas?


Hi, I’ve managed to get this setup but am getting this error in the log when I try to send a command - any ideas?



Thank you @snarl for explaining in simple words HOW to learn IR codes! However, I just can’t seem to wrap my brain around how to SEND them. The documentation shows a snippet where you use a script, however this does not work, nor does it really “feel” right. I just want to teach my remote ONE code, and then be able to send it to my AC. How, and where??

Thank you so much in advance


There’s a custom component for this :slight_smile: