Interfacing multiple TIP120's with PWM

Hello all,

I am trying to interface six 12v, 5w halogen bulbs with an Arduino using six TIP121 transistors each connected to a PWM output of the Arduino. They should each flicker randomly.
The problem I ran into is that when I connect the TIP array to the Arduino, all lights flicker together (so all have the same brightness at the same time) instead of separately. Its not a code problem, the code works perfectly when I connect small bicycle lamps directly to 5v and the separate PWM pins, I used this code: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1192693288#6
For the TIP array I used the Tom Igoe example at http://itp.nyu.edu/physcomp/Tutorials/HighCurrentLoads and multiplied it by six like in the attached image (only three shown but you get the idea)
Now is the question, what am I doing wrong?

Thanks for all help and advice!

I don't see any resistors in your diagram. You should have a resistor (1k should work fine) between the Arduino pin and the Base of the TIP's.. That'd be pin 1. The Collector (pin 2) should go to the negative side of the bulbs, positive side goes to your battery, you didn't label your battery, but I assume you have that part right. Emitter (pin 3) goes to ground, which I see you've joined the source battery ground with the Arduino. That is the correct way to do it. So if you have the pins right, and the resistors installed, it should work. :slight_smile:

Thanks UnaClocker!

I modified an image of a single TIP setup from tom igoe's website that I linked, it did not have the power source labeled so that's why I omitted it in my modded image. But I have the power connected correctly. I will try the 1k resistors, they where not used in toms setup. Will keep you posted.

Nop, its not the resistors. One more thing I noticed, even with only half of the PWM's plugged in ALL bulbs are still powered...
So what can it be?
Do I need diodes? They are not needed for lights but maybe? I found this schematic of a POV circuit for driving LED that includes thems:


And also the Darlington array ICs have them internally.

Or maybe I am totally overlooking a mistake in wiring my perfboard.

It sounds like you have the pinout wrong. Or do you have these TIPs all bolted to a single heatsink? The metal tab is the output, so if you have the metal tab grounded, or connected to each other, you'll encounter this sort of issue. They need to be electrically isolated.

Multo Grazie! There was indeed one single bad ass heatsink connected. Removed it and the issue solved!
It looked neat though :slight_smile:

That's great. You can still use that heatsink, you just have to get insulator kits for the TIPs. Mouser sells them, part # 532-4880M, $1.15 a piece..

OK, I'll do that. Still have to order some stuff at RS so will add it to the list, their order number for this part is 2509004540 (just in case someone needs it in the future)

Hello , is this the first ever post on Arduino forum for the Motors, Mechanics, and Power category :stuck_out_tongue: ??? I feel so weird XD

Sorry to bring up an old thread, but I have not found what I was looking for.

I am using the Arduino to power the TIP120 transistor through a 1k ohm resistor. The transistor in turn powers a 12 volt relay. The diagrams I have found shown that the emitter is common, and triggers the relay through the collector (which is tied into the mounting tab for the transistor). This works fine, however, if all the transistor is doing is closing the emitter and collector, am I able to use the collector as common ground and emitter as the relay trigger? I would like to tie all the transistor tabs together on an aluminum heat shink for multiple relay circuits and want to use the heat sink as another ground.

Also, if this in theory works, is there a possibility of damaging the Arduino??

No, a switching transistor must have the emitter common to input and output, not the collector.

Its called a common-emitter circuit.

The collector and emitter are not symmetrical in any way, you cannot interchange them. You need
proper insulated mounting kit for the heatsink (this is standard stuff for mounting TO220 package
devices).

MarkT:
No, a switching transistor must have the emitter common to input and output, not the collector.

Its called a common-emitter circuit.

The collector and emitter are not symmetrical in any way, you cannot interchange them. You need
proper insulated mounting kit for the heatsink (this is standard stuff for mounting TO220 package
devices).

Thank you very much for the clarification!