Multiple IR LEDs on different pins sending the same commands

I’m attempting to build an IR sender using a Wemos D1 Mini ESP8266 flashed with Tasmota ‘release-ir’ and multiple TSAL6400 LEDs to send commands to my AC units. I’ve also installed ’ Tasmota-IRHVAC’ on HA which is working well.
As they’re very directional, I need to point the LEDs directly at the AC receiver, and testing is proving to need them to be pretty close.
I can just survive with one LED per sender as it does work, but I’d rather have multiple LEDs, (more like seven).
Testing has shown that if I connect multiple LEDs in parallel, they stop working, and I can only connect two (sometimes three) in series before (I imagine) the voltage drop is too much.
I know that I can go down the more complicated route of adding transistors in the circuit, and pulling the 5v, but trying to avoid that has led me down the path of attempting to use one pin per IR LED.
This is a nice idea, but testing is showing so far that it will only allow one per (channel/relay? - the number next to IRSend) adding a second one to the same ‘channel/relay’ means it ignores one of them, and choosing a different ‘channel/relay’ doesn’t work either.
Is there a workaround for this other than getting a load of transistors, or am I restricted to one to two IRLEDs per Wemos?
I don’t necessarily need seven, but three would be nice.

You are on the wrong path. Recommended maximun current draw from esp8266 GPIO pin is 12mA, You can draw about double of that but it’s still only 25mA and you are risking to damage your board.
You only need one transistor and two resistors to do it correctly.
You can give your leds 100mA pulsed continously, but for brief ir commands you can safely give them 500mA. With two of your low angle leds driven with one GPIO you get 10+ meters range.

ps. I have doubts that your idea would work even if you could get unlimited current from GPIO pins, because single core MCU just can’t send two ir-signals simultaneously, so the pulses would be out of sync.

1 Like

Thanks for that, I think it’s fair to say that I’m not an electronics whiz, I came up with this after loosely following the diagram on the Tasmota IRHVAC repository (GitHub - hristo-atanasov/Tasmota-IRHVAC: Home Assistant platform for controlling IR Air Conditioners via Tasmota IRHVAC command and compatible hardware) I’m guessing I’d need three sets of two LEDs, and three transistors, or are you suggesting they can all go into one transistor? Also did I get the resistance correct?


Thanks again!

Each LED can draw as much as 20mA (check the specs) and the ESP8266 spec says not to source more than 12mA. It can sink about 20mA.

Also, the current limit of the GPIO is why you can’t drive the LED to its peak efficiency. I am not surprised that your remote range is in inches.

IR Remotes with multiple LEDs use a driver transistor. Also, look at the spec for the IR LED you plan to use. Calculate your current-limiting resistor for the pulse current rating. (Some, like the L12170 infrared LED from Hamamatsu has a pulse forward current spec of 5A.)

IR Driver

Putting parallel IR LEDs on multiple pins is also unlikely to work. The timing of the LED pulses is critical, and there is some delay internal to the ESP. When you instruct the ESP8266 to turn on multiple GPIO pins, the action is virtually simultaneous from a human perspective. However, in reality, there is a very small delay between each operation due to the time it takes for the processor to execute each instruction. This delay is typically in the order of microseconds, which is negligible for most applications. But unlikely in an IR remote.

You don’t need six leds if you are controlling only one AC with them. Just use one led pair of your circuit. Start with led resistor 27ohm so you are stil within specs (<100mA). Drop the base resistor from 1K to 470ohm. If you need more range swap led resistor to 15ohm, that would give around 160mA, above TSAL max, but with pwm it’s ok. Stay below your transistor max current.
I personally drive them by BC337 transistor with 4,7ohm led resistor (~500mA) and never burnt one in 20 years. In original AC remote controls there is often no resistor at all.

1 Like

No.
I did not know which IR LED you were using, so ignore my earlier math.

The specs for the TSAL6400 IR LED maximum pulse current is 1.5A for 100 μs or less: “Surge forward current tp = 100 μs IFSM 1.5 A”

The typical forward voltage at 1A is 3V (again, in the specs) which means your current limiting resistor will be 3Ω. You will get that in your wires and solder joints, so I wouldn’t hesitate to drive this LED with no series resistor at all.

1 Like

Thanks for everyone’s help with this. It still might be an avenue I pursue in future, as I’ve already ordered the transistors, but for now at least it seems I’ve got enough range from one TSAL6400 on one pin (about 3 metres) as long as it’s pointed directly at the receiver. On a whim, I purchased some 3v “lazer” pointers from Aliexpress which I’ll use from the Wemos D1 to home the LED to the receiver.

Probably won’t work. IR Leds, like in your remote operate at a wavelength of 950 nm. The red pointer LEDs operate at 650 nm. The detectors may not even see the red.

Sorry, I did not explain it at all well… the “laser” will serve as a directional pointer while attached to the same housing as the LED, the idea is I’ll turn it on for a few seconds while the Wemos is sitting in the correct place, then turn the LED/Laser toward the AC unit to line it up, then probably remove the laser.

OK, an aiming tool.

1 Like

When you have your transistor setup done, you don’t need it. When you power them 10X, even narrow angle led has wide range. 25deg half angle means that half of max power is available within 25deg sector.