Controlling 12 Solenoids from Arduino / ShiftOut

Hi Guys -
I’ve tested my understanding using the ShiftOut tutorial, and made the circuit using LEDs - but now need to step it up to power 12 number 12V solenoids. I’ve put in diodes (IN5404) to stop the current reversing when the solenoid is discharging, and also transistors (TIP-122) to step up from the low current / voltage of the Ardunio circuit to the solenoid circuit.

A couple of questions I have relate to:
_If a resistor is needed between the output pin of the 595 to the gate pin of the transistor (and if so, what size); and
_If a capacitor is needed across the latch pin (and if so, what size).

The solenoids will only be on one at a time - details as follows:
Rated Voltage: 12V
Operation Voltage: 10.8V - 13.2V
Rated Current: 0.58A
DC Resistance: 20.57 Ohm.

Any suggestions on what I’ve missed / how to improve efficiency greatly appreciated.

Many thanks for you help in advance -


_If a capacitor is needed across the latch pin (and if so, what size).

No that was a mistake in the original tutorial. There should be a 0.1 ceramic capacitor on the 5V and ground of each shift chip.

You don't need a seriese resistor for FETs as you have drawn but your text says you are using a TIP122 that is not a FET and you will need a 1K seriese resistor.

Change from TIP122 to some more modern as IRF 540 or similar. Your drawing are OK. 1N5404 are overkill, the peak current from the solenoid are max 0,58 A and 1N400X are a better choice. Have you already attached the 5404 so let it be.


Grumpy Mike / Pelleplutt -

Thanks for the quick response - no components brought yet - but keen to keep costs down!

To confirm I'll keep the drawing as is with the following components:

Diode: 1N4004 FET: IRF540N (so therefore no resistors required) Capacitor: 0.1uF 50 Volt Ceramic Capacitor

Thanks again -



No. Not only is that vastly overpriced, it is not a logic level FET, it takes 10V to fully turn it on. You want a FET that takes only 5V. The gate threshold voltage is where it just starts to turn on not when it is fully on. For that see the gate voltage in the Ron or drain source resistance line of the spec.

Hi Grumpy Mike - I'm now thoroughly confused - but keen to learn so I know for next time!

I've found another supplier that has this to replace the IRF540N:

What do you reckon?

Cheers Ewen

Correct Grumphy Mike IRF 540 are not logic level, ( but If you look in the datasheet it will condukt many amps with only 5 volts on gate.

Ewen has found an logiclevel but it is much overkill with an 30 A switching 0,58 A. IF the pricing are right it's OK.


Hi ewen,

As you haven't purchased components yet, maybe I can help simplify things!

There are high-current versions of the '565 which mean you won't need to use other transistors etc. I would suggest: TPIC6C595

As only one solenoid will be activated at once, the chip should cope with the required current:

Continuous drain current, each output, all outputs on, IDn, TA = 25°C... 350 mA Peak drain current, single output, TA = 25°C (see Note 3)... 1.1 A

The chip's outputs are protected against reverse current spikes, so you won't need those diodes either.


No that is very misleading. The data sheet says:-

Eight Power DMOS-Transistor Outputs of 150-mA Continuous Current 500-mA Typical Current-Limiting Capability

The 500mA is for pulsed current where .... Pulse duration ? 100 ?s and duty cycle ? 2%. So nowhere remotely long enough to turn on a solenoid.

Given that the OP is using a solenoid ...... Rated Current: 0.58A Then the TPIC6C595 is not suitable to drive it.

My bad, I said TPIC6C595 when I meant TPIC6A595, which is the data sheet I linked to.

So the peak current is 1.1A for a single output, not 500mA, but as GM says, that is for <100us. Your solenoid will probably hit its peak current for a moment but probably still too long.

Apologies ewen, back to your FET hunting…

Hi All -

I did a bit of digging on the TPIC6A595 based on your link and decided that I'd go with the logic N-Channel MOSFET's - still keeping the transistors and diodes - on the thought that the 74HC595 is well canvassed in Arduino forums when I come to programme the code!

Thanks all again - will come back and post photos once I've built the other 11 of these!! (first video on the left):

Cheers -


ewen: the 74HC595 is well canvassed in Arduino forums when I come to programme the code!

Actually the code for TPIC6A595 would be identical (it is a high power version of same chip). Shame your solenoids are so current-hungry - would have saved some complexity for you.