I am trying to make a universal IR remote somewhat following the TV B Gone schematic from adafruit
I will be using an atmega328 I think, so there are a few differences that the attiny85. But my question is, Will the LED driver circuit using the MPS2907 and 2N3904 transistors burn out the IR LEDS because there is no current limiting resistor? It will be powered off 2-3 AA batteries if that changes anything.
There are two types of IR Leds, a pair of narrow beam and a pair of wide beam. They need driver circuits because they draw more than the 40ma supplied by the atmega. I assume there are 4 for better range...?
Could you suggest an adequate circuit to drive just 2 (a wide and a narrow beam) LEDS then? I would like to use more that just 40ma from the atmega, but what transistors and current limiting resistors should I use?
If possible using 2n3904 transistors would be nice because I have lots of them, but anyway...
If you want to stick with the 2N3904, you need one for each LED. This design calls for pulses of more than 100 mA through each LED, which they can tolerate for short periods of time. Here are the design comments that explain why no current limiting resistor is used (taken from the Ladyada tutorial):
Please note that at the DC currents we are pushing through the transistor and the LED, the beta of the transistor is not 200 but closer to maybe 20-50, Vbe is about a volt, and Vce_sat grows to a volt or so. Of course it depends on the transistor but just be aware that 'simple' transistor modeling is not valid anymore..
To add to those comments, the ~1 volt Vce_sat of the driver transistor plus the ~2 volt drop across the LED is about equal to the battery voltage. You might run into trouble (e.g. burn out LEDs) if you use more than 2 alkaline batteries or more than 3 NiCD/NiMH without a current limiting resistor.
I regard this design to be a bit shaky and would use one high-current, high beta transistor or a MOSFET with low Rds_on for both LEDs but include a current limiting resistor for each LED.