IR remote schematic review - Page 1
Forum section: electronics / beginners

author: Wax Flame
author_rank: Newbie
timestamp: August 22, 2025, 09:59:43 pm
content: Hii, I am completely new to this forum and pcb design and want to make sure my design is not completely terrible.I want to make an IR remote and have come to a point where I think I am almost done, but am not sure if this will work.I want to run the IR LED at around 100mA, but I am using a cr2032(3v) battery, I've heard that using a 470μF capacitor could make 100mA possible. I am not sure if I have done the math around the LED circuit correctly and I also am not sure about the whole schematic in general, is this how you make schematics or is there a better way/are there conventions I need to follow? Also am I missing things or are there things that I should add?

author: Fire Doger
author_rank: Regular Contributor
timestamp: August 22, 2025, 11:21:07 pm
content: Hello.In schematics, usually the power goes from top to bottom. (Not left to right)Left to right usually is the flow of information, in you example left should be the buttons (user input), right should be the IR led (device output).Your battery looks like it has wrong polarity or maybe bad library design. Vcc should be the big line.Capacitors have leakage, which means that it will constantly draw current from battery. Is this acceptable in your application? What capacitor are you considering to use? You need to check its datasheet about how leaky it is.

author: Peabody
author_rank: Super Contributor
timestamp: August 23, 2025, 03:41:00 am
content: I think there is a chance your LED drive circuit will work. 100mA would normally be at the edge of what a CR2032 could do on a very short pulse. But the big capacitor will help supply that. And you'll be driving the transistor at a 33% duty cycle, or possibly 30% or even 25%, and during the "off" phase the capacitor can recharge from the battery. If possible, try to use a capacitor rated at 6.3V - it should perform better for this.But I don't think the battery will last very long. The Energizer CR2032 has a capacity of 235mAH, and that's at a low current draw. Two alkaline AAAs would be four or five times that, and could easily supply 100mA.One thing you want to look out for is the brownout detector. The BOD voltage is set by the fuses, and I think the 13A comes with the BOD disabled from the factory, which is fine. Just don't let your IDE set it to 2.8V. That would forfeit a significant portion of the battery's capacity since the 13A would stop working below 2.8V.Edit: I don't know if the 10 ohm resistor is low enough. It depends on the voltage drop across the transistor and the Vf of the diode when current is 100mA, and of course how low the battery voltage is. You may need to put two 10's in parallel to get 5.

author: Wax Flame
author_rank: Newbie
timestamp: August 23, 2025, 12:29:53 pm
content: Quote from: Fire Doger on August 22, 2025, 11:21:07 pmThanks,I will change my schematics and you were right about me messing up the battery polarity.I have checked the leakage of the capacitor and I'm ok with it, I don't really care about having to renew the battery every now and then cause they are very cheap to buy. I am going to use this just as a remote for some lights in my basement and won't be using the remote often.

author: Wax Flame
author_rank: Newbie
timestamp: August 23, 2025, 01:02:57 pm
content: Quote from: Peabody on August 23, 2025, 03:41:00 amThank you for the reply,How long do you think the battery will last, I won't be using it too much since it's just for some lights in my basement that I don't use frequently. I do want to use cr2032 batteries since they are cheap and very compact. Thanks for mentioning the BOD, I will make sure that the it is disabled.The transistor has a voltage drop of 0.7V, but that is at 500mA so I'm not sure what it would be at 100mA and the LED has a Vf of 1.35V. Those are the values I used to calculate the resistor value and I did not really acount for the battery voltage dropping. But the voltage of the battery will mostly be 3-2.8V and near the end of the battery lifetime it will quickly drop to ~2V according to the datasheets.

author: tooki
author_rank: Super Contributor
timestamp: August 23, 2025, 02:43:07 pm
content: The thing is, a 100mA IR emitter won’t be very powerful. Good IR remotes pulse their infrared LEDshard, like 1-1.5A. The reason the LEDs don’t blow up, and why the remotes still have long battery life, is that the duty cycle is quite low, so the average current is low, even if the peak current is enormous.There is a reason your emitter’s datasheet specifies its behavior at 1A: that’s what a really good remote will pulse it at.At 1A, the emitter’s Vf is 2.2-3V, so with a 3V battery and your stated 0.7V Vce*, in the very best case you would have practically zero margin with a new battery, never mind a drained one. Worst-case, with an emitter with 3V Vf, you are already screwed.Of course you don’t have to go to the full 1A, but you should consider something more, like 500 or 700mA.You could run two or three emitters in parallel, each with e.g. 200-300mA, to get equivalent output while keeping Vf low.Most IR remote controls don’t use CR2032 cells because of their very low maximum current. The ones that do tend to be very thin remotes, and rarely have room for a decent capacitor inside. The IR remotes with CR2032 cells that I’ve used have predictably low range and have to be pointed right at the receiver to work reliably. Regular AA/AAA batteries can deliver more current and are usually cheaper, but also more prone to leakage. For that reason, I actually think using the CR2032 is a good idea for your project. Just with a good capacitor to deliver the current pulses needed.*Are you sure about this value? Most BJTs have a Vce(sat) of around 0.3V. The datasheet for your S8050 specifies Vce(sat)(max) of 0.5V, but the graph shows a typical value of 0.1V. (It is normally Vbe that’s around 0.7V.)

author: Peabody
author_rank: Super Contributor
timestamp: August 23, 2025, 03:10:40 pm
content: If you're only using it occasionally to control lighting, battery life shouldn't be a problem, even with the CR2032.So it looks like your 10R resistor is about right. There is some part variability in the Vf of the LED. The maximum goes up to 1.6V. Anyway, if you end up not getting enough range, the things you could change are the base resistor (not likely) and the 10R. You might consider designing your board with an extra resistor in parallel with the 10R. It would be unpopulated initially, and only used if your range is too short.The biggest issue for battery life is making sure you put the 13A into power-down sleep with things configured for minimum current draw. The datasheet says the typical sleep current with optimal settings is 0.15uA, which is vanishingly small. But you have to jump through some hoops to get that. So I'd suggest you program the 13A to go to sleep, and actually measure the sleep current. Get that right before you connect anything to it. Then your battery will last years.There's one option I should mention that's probably not workable at 3V, and that would be to use two IRLEDs in series. In theory, with the right resistor, you get twice the IR power on the same current. If Vf really is 1.35V, two in series would just barely work if you replace the NPN with a mosfet having a very low threshold voltage. The NPN won't work if the 0.6V saturation voltage is correct. Well, I just thought I should mention it because it's one of very few "free lunches" in electronics.On @tooki's point about driving it at 1A, I agree that a lot of remotes work that way. Some don't even use a resistor. But I built a remote using this same IRLED, and it drives three different devices at about 40 feet with no problem. That's using 5R with with two AAs in series, so about the same voltage, but using a mosfet. My scope shows about 250mA with brand new batteries, reducing to 190mA with the batteries discharged to about 1.35V each. So my point is that it works quite well for me at substantially below 1A. So I would again suggest that you provide for an additional resistor in parallel with the first, which you could populate if you find you need to.You haven't said anything about the receiving end or the protocol you will be using.

author: Peabody
author_rank: Super Contributor
timestamp: August 23, 2025, 04:06:04 pm
content: A few other things.You may find it easier to use the ATtiny85 instead of the ATtiny13A. The Arduino IRremote library works on the 85, but not the 13A.I think you're going to need a programmer to flash code to either of these chips. But a more useful option might be to use something like an Arduino Nano as the ISP programmer.I think you will need a 10K pullup resistor on the Reset pin. Not sure about that on the 13A, but generally required for most chips.

author: Wax Flame
author_rank: Newbie
timestamp: August 23, 2025, 04:25:45 pm
content: Tbh, I though that the "peak forward current" of 200mA was like absolute max and I knew that the cr2032 would have trouble delivering 200mA so I went for 100mA, but if with 5 ohms resistance I can hit ~200mA and the capacitor can deliver that I will do that. If the capacitor can deliver more I could even go for less resistance, but I don't really know how much a 470μF capacitor can deliver.About the Vce(sat), I see it's 0.6V at 500mA, I don't see any graphs that say 0.1V, but I also don't understand all of them/ there is a good chance that I am misreading them.I do think that I will stick to the cr2032, mostly because I already have some laying around, I only need 1 cr2032 to get 3V whereas AA batteries would require 2 and I like the compactness of the cr2032 batteries. If the cr2032 could last be a few years(provided putting the A13 to sleep) that is perfect with me.@Peabody, you mentioned using a mosfet instead of a BJT, I don't have really know the difference except that mosfets generally have lower voltage drops, maybe I should also use a mosfet, what specifications do I need to look for? And for the receiver end, it's just a lamp that I want to turn on/off and it uses the RC5 protocol.You also said that the IRremote library does not work on the 13A and that I should consider the attiny85, but those are twice as expensive as the 13A and do I need that library? I only need to send a few predetermined IR signals. For the programmer I was planning on using the USBasp, since I already have one.Edit: I was looking at LCSC for the price of the 13A and the 85 and there the 85 is about $2, but I found it for half the price so that isn't really a problem, still wonder if it is possible to do it on a 13A though.

author: Peabody
author_rank: Super Contributor
timestamp: August 23, 2025, 09:53:05 pm
content: I don't know that a mosfet would make much difference with your circuit. One advantage it has is that there is no wasted base current. But that's only a couple milliamps. The main thing is the voltage drop across it is much lower than a bipolar. The mosfet I used is the AOSS32136C, which has an On resistance of about 26 milliohms in this situation. So at 200mA, the voltage drop across the mosfet would only be 5.2mV if I did the math right.But if the power supply is 3V and the Vf of the LED is 1.35V, then the remaining 1.65V will be dropped across the resistor and the NPN, and it doesn't make much difference which one. If for some reason you do need the drop to be low, as in using two LEDs in series, then the mosfet would have a clear advantage. If you use one, the main thing besides the RDSon resistance is the threshold voltage, which is the gate/source voltage at which the mosfet just begins to conduct. You would need your 3V MCU to provide a couple volts above the threshold voltage to make sure it's fully turned on.RC5 is an oddball format, but is still pretty simple. It's biphase encoding (Manchester), and everything happens in 889us chunks. It also appears that it uses a 36KHz carrier instead of the typical 38KHz for NEC. So conveniently, one 889us chunk is exactly 32 carrier cycles. So I think you could just write your own code. You could bit-bang it, or you could set up the timer in PWM mode, with a 30% duty cycle, and there should be a register setting somewhere that connects the PWM output to the drive pin, or not, and you could just turn that on or off every 889uS as needed.Below is what I found on RC5. Also attaching the circuit I used on my remote.

author: ledtester
author_rank: Super Contributor
timestamp: August 23, 2025, 11:08:20 pm
content: Have a look at the design Adafruit high-power IR LED emitter:https://learn.adafruit.com/adafruit-high-power-infrared-led-emitter?view=allIt claims 100mA per LED at a supply voltage of 3V (200mA/LED at 5V).Scroll down close to the end for the schematic.

author: Peabody
author_rank: Super Contributor
timestamp: August 24, 2025, 02:38:08 pm
content: Their mosfet has a typical threshold voltage of 2V, with a maximum of 2.5V. I guess it works ok or they wouldn't have used it, but I feel safer using one with both of those values being 1V lower. As the battery discharges, I don't want the limiting factor to be the threshold voltage.

author: tooki
author_rank: Super Contributor
timestamp: August 24, 2025, 04:58:16 pm
content: Quote from: Wax Flame on August 23, 2025, 04:25:45 pmYou need to spend more time really looking at the datasheet in detail. Once you start thinking about things, and reading between the lines, so much more will make sense. I’ll try to walk you through this datasheet, so you get an idea for how you have to proceed when really trying to interpret a datasheet and apply it to a problem.For anyone who wants to follow along at home, here’s the datasheet:https://www.vishay.com/docs/81009/tsal6100.pdfYou will notice that many of the specs are given at both 100mA and 1A. It’s not normal for a part to be specified at a condition that it cannot do.If you look at the absolute maximum “peak” that gives a maximum of 200mA, it’s given with the condition “tp/T = 0.5, tp= 100μs”. tpis the pulse duration, and T is the period, so this means that “tp/T = 0.5” is the duty cycle. So what they are saying is that at a duty cycle of 0.5 (50%), you can do no more than 200mA.But in an infrared remote, your duty cycle is far, far less than 50%. We will revisit this later.For the most part, LEDs are limited simply by heating. So (super oversimplified) if it can do 200mA at 50% duty cycle, and 100mA at 100% duty cycle, you can kinda interpolate that you could do 400mA at 25% duty cycle, or 1A at 10% duty cycle. But it’s limited by how fast heat can dissipate, so it’s actually going to be less than that.But we don’t need to guess: the graph “figure 3” plots the maximum current vs. pulse duration, and this will be key to our calculations. But we haven’t gotten to that page yet, so let’s pretend we don’t know this quite yet.Back to the specs table: the absolute maximums also gives a maximum “surge” of 1.5A with a single pulse of 100μs. This should also have given you a clue that the “peak” spec is not the whole picture.Remember also that the “absolute maximums” are only the values beyond which you can expect damage to occur; they’re not the values you’re supposed to target.(Also, a reminder that “absolute maximums” are always to be taken with a grain of salt. They do not mean you can pushmultiplespecs to their absolute limits at the same time. For example, you might see some component that can handle a maximum voltage of 20V and a maximum current of 5A, but the maximumpoweris 10W, so if you tried to operate it at 20V and 5Aat the same timeyou’d blow it up, because 20V x 5A = 100W, far beyond the 10W maximum.)Next, we look at the “basic characteristics” table on the following page. Thosearevalues intended to be used as engineering targets. And two of the key specs — forward voltage and radiant intensity — arebothspecified at both 100mA and 1A.Thatis a HUGE clue that that 1A is considered to be a normal operating condition. At 1A, they always give a pulse duration of 100μs, so they’re telling us “you can’t push it to 1A indefinitely”.Back to figure 3: as I said, it plots the maximum current vs. pulse duration, and the different curves are marked with different duty cycles (and one for a single pulse).The 100% duty cycle curve is actually a straight line at 100mA, so we know that’s the most you should run the LED at continuously. At 50% duty cycle, it’s 200mA or so, rising a bit with 40μs or shorter pulses.The lowest duty cycle curves cut off at 1A, so this means they’re never intending for you to push them beyond 1A. (Though they cut them off at the 1A line, remember that those curves invisibly continue horizontally to the edge of the graph, since a shorter pulse obviously isn’t going to be a problem.) The 10% (0.1) duty cycle curve actually indicates about 0.6A with 100μs pulses, not the 1A our oversimplified calculation predicted. We also see that at a 100μs pulse duration, only the 5% duty cycle line goes up to 1A. So we now know that at 1A, 5% is our maximum duty cycle.So now we can calculate the actual duty cycle of your signal (RC5, in your case) and determine what current you could do.I used the protocol details at:https://www.sbprojects.net/knowledge/ir/rc5.phpThe carrier is 36kHz at 25-33% duty cycle, so your carrier period is 27.8μs, and your pulse duration is 25-33% of that, or 6.9-9.3μs. So we will look at 10μs on the x axis of the graph, which is actually the left edge of the graph.Now, there is no curve for 25 or 33% duty cycle. So we’ll have to interpolate between the 50% and 10% lines and just imagine somewhere around halfway between those.If you were going to transmit this carrier indefinitely, you’d be limited to a bit over 400mA, according to our interpolated curve.But because of the encoding, which uses a period of 1.778ms per bit, of which half is pulsed with the 36kHz carrier and half is idle, the duty cyclewithin a bitis 50%, and you are never going to transmit more than 1.778ms bursts, after which there is always a pause of 889μs or 1.778ms. So the effective duty cycle is even lower, since there are “cool-down” periods. The whole message is 14 bits of 1.778ms each, giving us a total message duration of 24.9ms. When repeating, messages are repeated every 114ms, meaning the LED has about 89ms to cool down before the next message, and a message duty cycle of 24.9ms/114ms = 21.8%.So we calculate the total effective duty cycle, by multiplying all of our duty cycles: the message duty cycle (21.8%), the bit duty cycle (50%), and the carrier duty cycle (25-33%).That gives us an effective duty cycle between:0.218 x 0.5 x 0.25 = 2.73%and0.218 x 0.5 x 0.33 = 3.6%So if we use the 5% duty cycle curve in the graph, we can see that it intersects and ends at the 1A line at a pulse duration of 100μs — but our pulses are actually less than 1/10 as long as that, so we have plenty of breathing room.Conclusion: for RC5, we can pulse this LED at 1A and be comfortably within its limits, as we actually have a margin of over 10x.(And in fact if we just used a 50% duty cycle for the carrier (giving a pulse duration of 13.9μs), that would still give an overall duty cycle of 0.218 x 0.5 x 0.5 = 5.45%, more than enough margin for the 5% curve at 100μs.)

author: Peabody
author_rank: Super Contributor
timestamp: August 24, 2025, 06:13:13 pm
content: Thanks very much for taking the time to do that. I would just offer a couple of notes:Different protocols generate different demands on the LED. As you said, the above is for RC5. But something like NEC has a solid 9ms burst of carrier at the beginning. That may reduce the current you can build into your circuit so that burst can be handled safely by the LED.If I remember correctly from researching this back in the day, the TSAL6100 is substantially "brighter" than typical IR LEDs. So it may work quite well on substantially less current than other LEDs.That said, there are a lot of el cheapo remotes running on 1A or even a bit more, and they seem to work fine. So the main benefit of using the TSAL6100 at a low current is probably just battery life, and in the case of the CR2032, the maximum current you can draw from it.I don't know how much difference the capacitor makes in determining the current, or how to size that capacitor. As a hobbyist, this is above my pay grade. But in my experience, a honking big capacitor does seem to help a lot.