This was originally posted in THIS forum.
Alright. I have read this forum and I understand it, relatively. I have a similar problem of my own, and I need to solve it quickly for a robotics club event. Using an Arduino Pro (ATmega328) I am driving six 1-Watt green Luxeon LEDs, using a 2N2222 NPN for each. I have 4 LD1117V33 3.3V regulators (supposedly rated at 800mA), two driving just one LED, and the other two driving two LEDs each. As I analyze the transistors I've used, I think I made a silly mistake, maybe? The problem is: the LEDs are not running at full brightness based on lumen output (I can tell). These are also rated for 350mA each. When I drive them with 50% PWM, they are fine. But when I turn them completely on, something weird happens. They shine extremely bright for about 1/2 sec, then they go very dim, and stay that way until I reset the Arduino. To test if this is a brownout issue in the AVR chip, I set the code to keep an LED lit (pin 13) when running; when this issue happens, the LED does not flicker. Another tip: I forgot (bad, I know) to add 1W resistors (10-Ohm in this case would be necessary) from the output of the 3.3V regs to the LEDs. I have 1k-ohm resistors going from the arduino's PWM outputs to the 2N2222 switching transistors. What is going on and how can I fix it? I tried to gain an understanding for what could be happening by reading this post, but I think I still need some help.
Thanks in advance :)