IR Remote
IR Remote driver enables sending IR codes through an IR transmitter and receiving them through an IR receiver via IRremoteESP8266 library.
Most builds support only the common IR protocols, but tasmota-ir.bin supports almost all protocols available in the IRremoteESP8266 library.
IR Transmitter~
Common transmitter modules in the market have a weak IR LED, thus effective transmit distance is really short. If you need range it is best to build your own. For the LED we recommend TSAL6400 for best performance.
YT-IRTM transmitter/receiver board is serial only and does not work with this driver (it's also limited to only NEC IR protocol).
Wiring~
IR w/ 2N222 | ESP |
---|---|
data | GPIOx |
+ | 3.3v/5v |
- | GND |
Tasmota~
In the Configuration -> Configure Module page assign:
- GPIOx to
IRsend (8)
See IR commands for use.
IR Receiver~
IR Receiver is used to capture IR codes. Those codes can be sent using IRSend
or used as a rule trigger.
Example uses the widely available KY-022 breakout board.
Wiring~
KY-022 | ESP |
---|---|
S | GPIOx |
+ | 5v |
- | GND |
Tasmota~
In the Configuration -> Configure Module page assign:
- GPIOx to
IRrecv (51)
On a captured code IR receiver sends a tele/%topic%/RESULT
JSON response:
{
"Time": "2019-01-01T00:00:00",
"IrReceived": {
"Protocol": "NEC",
"Bits": 32,
"Data": "0x00FF00FF"
}
}
Further Reading~
This covers only the basic IR protocols. Read Complete IR Remote Protocols for more advanced applications.
IR Send RAW configuration and use
User maintained codes database for IR
Linux Infrared Remote Control (LIRC) for more information.
Related Projects~
Example circuit with transmitter and receiver: