XIAO Smart IR Mate Review – A compact smart infrared remote control hub for Home Assistant

SeeedStudio sent us a tiny Smart IR Remote hub for review: XIAO Smart IR Mate, or XIAO IR Mate for short. At first glance, it looks like any other WiFi IR blasters, but what makes it interesting is that the device is built on an open architecture using the XIAO ESP32C3 module and runs on ESPHome, working natively with the Home Assistant open-source home automation platform. As usual, SeeedStudio gives access to the source code, so it’s super convenient if you want to tweak the functions yourself to fit various needs.

For those who are new to Smart IR, it’s a device that acts as an infrared (IR) control hub. The idea is to let you control legacy IR-based devices (old TVs, air conditioners, stereos, etc.) via a Smart Home system.

We did several tests with several devices we had lying around, namely a Hatari oscillating fan, a Dyson blade-less oscillating fan, and a Mitsubishi Mr. Slim air conditioner.

The XIAO Smart IR Mate can work in two main modes:

  • Universal Remote mode – where you “teach” it commands from your old remotes (learning mode). Perfect for stuff you usually find at home, like TVs and fans.
  • Smart Air Controller mode – Made specifically for AC units. Seeed Studio actually provides another set of source code plus ready-made profiles for lots of AC models. So you don’t even have to bother with learning commands yourself.

Two modes are required, as air conditioners’ remote controls send additional data over infrared. Let’s dive into the details.

XIAO Smart IR Mate Unboxing

Seeed Studio XIAO IR Mate Unboxing

The package we got was a small brown box. No USB-C cable inside, and no manual either. The device itself is smaller than the palm of our hand, with a USB-C port for 5V power and a reset button on the bottom. We tried opening it up to peek inside, but no luck. It looks like it’s glued shut pretty tight.

SeeedStudio XIAO IR Unbox

Anyway, we asked Seeed Studio to send over extra details along with pictures.

  • Seeed Studio XIAO ESP32C3 as the main controller
  • 3x high-power IR emitters that cover a full 360° around the device for sending commands. The emitter LEDs are tilted upward at a 45° angle
  • 1x high-precision IR receiver on top for learning commands
  • Touch sensor (tap it to send a command)
  • Vibration motor (to acknowledge the command)
  • Multi-color status LED
Seeed Studio XIAO Smart IR Mate Internal
Courtesy of Seeed Studio

To get a better idea of how the IR signals are sent out — and to figure out the best way to place the IR Mate — we have asked ChatGPT to plot a 3D image based on Seeed Studio’s explanation. They described the signal pattern as a conical surface, like in the picture below.

SeeedStudio XIAO IR Internal3
Courtesy of ChatGPT

Besides setting up the Smart IR Mate in the right direction, it’s also good to understand how the IR receiver on top works. That way, you’ll make sure signals are picked up as efficiently as possible. In the next section, we’ll show some experiments with different placement angles to give you ideas on how to get the best results.

XIAO Smart IT Mate can control devices over Infrared, WiFi, or Bluetooth

You can use it to control home appliances — both the old-school ones through IR signals and the newer ones through WiFi (Bluetooth is not supported for now). Commands can come from your smartphone, a simple tap on the Smart IR Mate itself, or even voice control (i.e., Siri).

It’s not just about turning things on and off, either. You could automate stuff like adjusting the bedroom temperature to save energy, or build out your own DIY projects with it.

XIAO Smart IR Mate specifications

  • MCU module  – XIAO ESP32C3
    • SoC – Espressif Systems ESP32-C3
      • CPU – Single-core RISC-V microcontroller @ 160 MHz
      • Memory – 400KB SRAM
      • Storage – 384KB ROM
      • Wireless Wi-Fi 4 & Bluetooth LE 5.0 connectivity
    • Storage – 4MB flash
    • Connectivity – Wi-Fi 2.4GHz and Bluetooth Low Energy (BLE, for custom development)
    • Antenna – External u.FL antenna (Probably using a flexible antenna)
  • IR Transmission – 3x high-power infrared LEDs for 360° signal coverage
  • IR Reception – 1x high-sensitivity IR receiver for signal learning
  • USB – USB Type-C port for power and firmware flashing (via CH343)
  • Misc
    • Touch sensor
    • Vibration motor for haptic feedback
    • Status indicator LED
    • Reset button
    • Stores up to 10 learned IR commands
  • Dimensions  – 65 mm (diameter) x 19 mm (height)

First-time Setup

Getting it set up the first time is quite easy since it already comes pre-flashed with ESPHome from the factory. Once we plug in power through the USB-C port,  a Wi-Fi access point pops up with the name starting with xiao-smart-ir….

Just connect to it using the default password 12345678. After that, the Smart IR Mate will ask us to pick our own Wi-Fi access point and enter the password.

SeeedStudio XIAO IR Setup1If the XIAO IR Mate is on the same network as the Home Assistant server, it’ll get discovered automatically and pop up inside Home Assistant. From there, we can just add the XIAO IR Mate right away as shown in the screenshots below.

SeeedStudio XIAO IR Setup2

In Home Assistant, we’ll see the entities show up. At this point, it’s ready to go to the next step – Learning in Home Assistant. Since the source code doesn’t include a web server, we can’t just access it via a web browser to monitor or control it directly.

We can tweak or add features to the XIAO IR Mate using a YAML file. We’ll do that a little later

Seeed Studio XIAO IR Mate Home Assistant GUI

Testing the XIAO Smart IR Mate with a Hatari Fan in Home Assistant

For our first test, we set the Xiao Smart IR Mate to Universal Remote mode, which requires “learning” commands. We picked a Hatari AC Max cooler fan, which comes with an IR remote shown in the picture below.

Seeed Studio XIAO IR Mate with Hatari Electric Oscillating Fan

Learning codes from the Hatari remote with the XIAO Smart IR Mate is super easy using Home Assistant. We can configure up to 10 buttons (Signal 0–9).

Start by picking a signal number — for example, Signal 0 (we set this one for turning the fan on/off). Then hit the Learn button on the screen. The Smart IR Mate will vibrate, that’s it’s now in Learn mode. We just press the button on the fan remote that we want it to learn.

If everything goes well, the “Is Learned Signal” on the screen will turn green (like in the screenshot below). That means the learning was successful. Then we just repeat the same process for the other remote buttons. By the way, XIAO IR Mate still remembers the commands even after a reboot.

SeeedStudio XIAO IR Learning1

When we want to control it, just pick the signal number we want — like ‘0’ — and hit the Send button to turn the fan on or off. We also tested all the other buttons: oscillation, speed changes, lights, and the mist function. Everything worked just like when using the original remote.

Our old-school Hatari fan is finally officially part of our Smart Home 😉

SeeedStudio XIAO IR Learning

In practice, writing an Automation is way more convenient and useful than manually pressing buttons. So we also tried a simple automation.

We have a smart plug connected to the Hatari fan to check if it’s running and to measure its power consumption. We created a script that turns on the Hatari fan whenever the motion sensor at the desk detects movement — and at the same time, it also turns on the ceiling light.

Since IR remotes can’t tell whether the command actually worked or if the fan is running, that’s why we’re using the smart plug to monitor the fan’s power usage, and it shows up in the dashboard.

We also made another automation: if the motion sensor detects no movement, it turns off the ceiling light and tells the XIAO Smart IR Mate to switch off the fan. It checks the power usage to make sure the fan really stopped before updating the button in the dashboard from yellow to blue (off).

SeeedStudio XIAO IR Test1 Automate the Fan

Overall, the Xiao IR Mate in Universal Remote mode works really well as long as the IR signal reaches the device. In our test, we gradually moved the fan away from the IR Mate and found that it works perfectly within about 2.5 meters when the IR Mate is placed upright.

However, if we look closely, our IR Mate wasn’t in the optimal spot based on the 45° angle of the LED signal we mentioned earlier. So we tried changing the mounting angle. Instead of just sticking it upright on a shelf, we tilted it 45°. Therefore, the beam would hit the fan’s IR receiver more directly.

The result? The effective range increased to 3.8 meters — almost a 50% improvement! Check out the picture below for reference.

SeeedStudio XIAO IR PlacementEffect

Testing the XIAO Smart IR Mate with a Dyson Fan

Next up, besides the old-school Hatari fan, we also tested the Dyson Pure Cool TP00. This model doesn’t have Wi-Fi — it only comes with its IR remote.

However, the remote’s code seems way more complicated than Hatari’s. In Universal Remote mode, we could only get it to turn on. Other functions like turning it off, making it oscillate, or changing the speed just didn’t work.

SeeedStudio XIAO IR Test2 Dyson Fan

Since the standard Universal Remote mode didn’t work perfectly, we tried a different approach by tweaking the Universal Remote code — basically capturing the code in ESPHome logs by following Seeed Studio’s guideline on their Wiki.

The main idea is to tweak the XIAO Smart IR Mate’s YAML file from GitHub. We add the ESPHome “dump all” command so it shows the number code whenever a remote button is pressed. Then we use those numbers as triggers in the automations. It’s kind of a bit more work, but way more flexible.

Here’s a rough outline of the steps:

  • Install the Dev version of ESPHome Device Builder
  • Add ‘dump: all’ in the remote_receiver section of the original ESPHome code so that it will show the codes that the infrared remote control sends
  • Add web server code so you can view the code in the log section

Check out the example picture below for reference

SeeedStudio XIAO IR Test2 Dyson Fan (Manual Learnining)

After tweaking and uploading the code via OTA to the XIAO Smart IR Mate, point the Dyson remote at the XIAO Smart IR Mate and press a button. We see the letter and number appear in the log (in green).

At this point, check the Receive Data values and the number sequence. Write them down because we will use them to create the buttons in the next step using the two-line number codes shown in the example below.

SeeedStudio XIAO IR Learning Code

Next, we take those numbers and use them to create Template button actions to send the command. The idea is we can use these buttons in both the ESPHome web browser and the Home Assistant UI.

In the screenshot below, we copied the code to create buttons that aim to send those codes back. After OTA uploading is completed, the buttons show up in both the ESPHome web browser and Home Assistant.

SeeedStudio XIAO IR Learning Code CreateButton

Now the Dyson Fan TP00 is fully under Home Assistant control via the XIAO Smart IR Mate. We’ve added it to the dashboard, and it’s finally ready to use — check out the next screenshot below.

SeeedStudio XIAO IR Learning Code Dashboard Automation
This kind of learning takes a few more steps compared to the Universal Remote mode, but it gives you a lot more possibilities and flexibility to integrate more devices into Smart Home ecosystems, by letting users connect almost any IR remote device. Way better than off-the-shelf IR learning remotes, which sometimes don’t cover devices that have more complicated IR codes.

XIAO Smart IR Mate and Mitsubishi Mr. Slim Inverter air conditioner

Next, we tested another feature of the Xiao Smart IR Mate — ‘Smart Air Conditioner Control’ mode. We flashed the Smart IR Mate with a different ESPHome YAML file that turns it into a smart AC controller, so we don’t have to teach it commands from the AC remote anymore.

Seeed Studio leveraged data from AC profiles that ESPHome has collected to make it work.

SeeedStudio XIAO IR Test3 AirCon Mitsubishi Slim

Setup Steps:

SeeedStudio XIAO IR ESPHome Climate IR List

  • In our case, we chose this platform for our Mitsubishi Mr. Slim MSY-GN24VF:
  • Finally, tweak other necessary settings like Wi-Fi or even add a web server (view from browser), then OTA upload it to the XIAO Smart IR Mate again

After rebooting the XIAO Smart IR Mate, the Smart Air Conditioner Control (ESPHome) shows up automatically in Home Assistant. Just add the device, and you’ll see your AC in a Thermostat card like in the screenshot at the top of this section. It’s ready to use right away — you can turn it on/off, adjust fan speed, change modes, and set the temperature just like normal.

Of course, we also tested creating automations to control the AC based on our needs. The goal? Make the AC smarter while we’re asleep.

1st Automation: Turning the AC on

  • Wait for the Power On button to be pressed to trigger the XIAO Smart IR Mate
  • During the first 10 minutes, set the temperature cooler than usual (25°C) and ramp up the fan to High to make sure the room is cooling faster
  • After that, adjust the temperature to 27°C as well as lower the fan speed to Medium

2nd Automation: Dynamically controlling and turning the AC off

  • At 04:00, raise the temperature to 28°C (so it won’t be too cold just before dawn and save power)
  • At 04:50, switch the AC to fan mode (helps reduce humidity that could cause mold in the zircon)
  • At 05:00, turn the AC off

We ran tests with these automations for a week, and the results were just as expected. We didn’t feel too cold before sunrise thanks to the dynamic temperature adjustment. Power consumption went down, the room cooled faster at the start, and the AC left less humidity after turning off.

Of course, you could go even further — like turning the AC off sooner and turning on a Dyson fan to compensate. It’s really just up to your imagination.

SeeedStudio XIAO IR Test3 Automate Aircon 2

SeeedStudio XIAO IR Test3 Automate Aircon

Conclusion

The XIAO Smart IR Mate is quite an interesting device. It lets old IR remote devices join your Smart Home setup without breaking the bank. We were impressed with how it works both as a Smart IR Remote — letting you choose how to teach it your remotes — and as a Smart Air Conditioner Control, using existing ESPHome profiles so it works with a lot more AC models.

On top of that, its open architecture means you can tweak features however you want. Seeed Studio even shares the ESPHome YAML configuration files, which are super handy for Home Assistant fans looking for a ready-made Smart IR Remote that’s flexible and works natively with Home Assistant.

Lastly, a few things we think could be better are. It should come with a temperature/humidity sensor, as we will most likely use it with climate-control equipment. The signal range could also be longer, as our tests showed it only works at up to 4 meters, quite shorter than regular IR remotes often working up to 10+ meters. It would be perfect if it could match or exceed the range of standard remote controls.

We’d like to thank Seeed Studio for sending the XIAO Smart IR Mate for Home Assistant for review. It can be purchased on AliExpress for about $11 and on Seeed Studio’s store for $9.90.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.

Radxa Orion O6 Armv9 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
6 Comments
oldest
newest
Boardcon MINI1126B-P AI vision system-on-module wit Rockchip RV1126B-P SoC