Historically, back in silicon dinosaur days, when the 2N3055 power transistor and the 2N2222A General purpose transistor were king... the power transistors seemed to be able to gain their current capacity at the expense of Hfe (gain). So, to create a high current solution, the darlington configuration was conceived, where a lower current/higher gain transistor would drive the base of a power transistor that had less gain... with the resulting configuration accomplishing the overall goal of hi-gain, high speed transitions, and high power.

The configuration was common enough that it eventually became a "device" you could buy, like the still popular TIP120. There is really no compelling reason "not" to use them where it makes sense to and that is why you can still purchase them. Using one "just because you have one" maybe not the best idea... but they have their uses... I use them to drive solenoids.

Some good info there. I've had many of the same experiences. On the site, you also mention "When might I use external pullup/pulldown resistors? Only when the internal 20k pullup resistor isn't suitable, for example, if the switches are connected with long wires that pick up noise".

You call this "Five things I **never** use in Arduino projects" [my emphasis],

but I might add ... external pulldowns are useful for building voltage dividers to interface voltages outside the normal 0..Vcc range. This scheme is also especially useful on A/D converter input channels.

Quote

the power transistors seemed to be able to gain their current capacity at the expense of Hfe (gain).

This is also interesting. Older bipolar transistors might have high current gain, hFE, in the 100-200 range for low collector currents, eg a few ma, but hFE would drop to 10 or so at higher currents, eg > 100 mA. Anyone know how they fabricate newer bipolars to get around this problem?

You call this "Five things I **never** use in Arduino projects" [my emphasis],

but I might add ... external pulldowns are useful for building voltage dividers to interface voltages outside the normal 0..Vcc range. This scheme is also especially useful on A/D converter input channels.

What I actually said I don't use is "Pullups or pulldown resistors on digital input pins used for reading switches". I guess the unspecified assumption is that I have control over how I connect both ends of the switch.

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

What I actually said I don't use is "Pullups or pulldown resistors on digital input pins used for reading switches". I guess the unspecified assumption is that I have control over how I connect both ends of the switch.

Capacitors and debouncing on rotary encoders? I haven't seen that thread yet, but LOL anyway...

No, I don't answer questions sent in private messages (but I do accept thank-you notes...)

You call this "Five things I **never** use in Arduino projects" [my emphasis],

but I might add ... external pulldowns are useful for building voltage dividers to interface voltages outside the normal 0..Vcc range. This scheme is also especially useful on A/D converter input channels.

What I actually said I don't use is "Pullups or pulldown resistors on digital input pins used for reading switches". I guess the unspecified assumption is that I have control over how I connect both ends of the switch.

Some Darlington arrays are pretty useful tho - ULN2803 can be quite a handy part when you need to pull lots of lines low.I use TPIC6B595 more often tho, like having a 74HC595 but with much improved current sinking ability. Can't drive high tho, need something else as the current source.

Modern devices use ion-implantation to get far greater control on the base region dimensions and doping levels andgradients. Older technology was limited to thermal diffusion of dopant atoms. Precise base thickness and accuratedoping profiles are essential to high beta and low emitter resistance I believe.

Well, quite impressive 250mV at 5A, only there is no way arduino could deliver 200 mA base current.You can't use such transistor even for 1A load, I don't know any micro with 50mA outputs driving capability. TIP120, for comparison, needs only 3 mA for 3A collector current.

Other things, ztx851 according to "safe operating area" can supply 5A during 1 sec. TIP120 will run 5A forever.

MOSFET's are nice alternative, same time even logic level transistor would require special high capacitance driver IC for most PWM application.

It seems to me, that old TIP120 is ONLY the best friend for microprocessor application, with one nuisance - base resistor