Since Home Assistant Core 2026.4 there is native support for infrared devices. For some longer time there are Zigbee IR blasters like Tuya ZS06 control via MQTT | Zigbee2MQTT.
They are supported via a sensor and text box. In learn mode the sensor shows a learned IR signal, and via the text box learned signals can be emitted.
With Home Assistant Core 2026.8 this functionality will be expanded in 2 ways:
Home Assistants MQTT integration will support MQTT entities voor both infrared receivers and for infrared emitters.
Zigbee2MQTT will add infrared entity support for Tuya based infrared blasters.
This means, that when you own a Tuya based infrared blaster that is set up in Home Assistant through MQTT discovery via Zigbee2MQTT, it will automatically set up an infrared emitter and receiver entity. This means that you can now emit IR signals via built-in integrations like LG Infrared via your infrared blaster.
To allow the receiver to work via the infrared receiver entity you will need to turn the learn mode on. The receiver I own, stays in learn mode for about 20 seconds, or till an infrared signal is received. An automation can help to keep the IR blaster in learning mode. Note that in my case the emitter worked as expected when the blaster was in learning mode.
My automation to keep the blaster in learning mode:
Note that the control to turn on learning mode is is button now (was a switch), this was changes because swiching off would also turn learning mode on.
With reference to this thread, I’ve created a similar Add-on (App) for Broadlink devices called as Broadlink2MQTT
The Broadlink RM4 devices didn’t natively support Always-on IR receiving and follows same ~20s listening window.
So the workaround is to add an MQTT bridge that works as an alternative to official Broadlink integration and can expose IR receiver along with a switch to learn IR codes.
Check it out here:
As a reminder to all Broadcom users, there is a bug in the Broadcom Python library used in Home Assistant Core.
This bug degrades learned signals on receive and on send. Up until this point, it was never known because it would cancel itself out within the Broadcom device, but now that codes are used directly within Home Assistant, it has become aparent.
I have reported it upstream and opened a PR with its maintainer. I do have Home Assistant developers involved, and they’re aware of the situation.