# Picking a transistor for a circuit I'm building- Raspberry Pi

I am building a circuit that will connect a raspberry pi to a solenoid. I'm following roughly this schematic: http://playground.arduino.cc/uploads/Learning/solenoid_driver.pdf and modifying it so that it connects to pi GPIO pins instead of an arduino.

I need to pick a transistor, as shown in the schematic. I believe it needs to have at least 2.58 A to match my solenoid, and 5V to match the voltage from the Pi. However, when trying to pick a transistor it gets more complicated because I'm not sure what I need for V-EBO and V-CBO.

Can anyone help me figure out what specifications I should be looking for, or suggest a transistor? This one I found has a VCBO of 80V, but I believe that is too high because my Pi will have a power supply of 5-6V.

• here is a list of other components I will be purchasing: RASPBERRY PI POWER SUPPLY raspberrypi.org/products/raspberry-pi-universal-power-supply SOLENOID POWER SUPPLY alliedelec.com/speco-technologies-psr4c/70146364/… SOLENOID gamut.com/p/… – natalie Oct 18 '17 at 18:43
• Do you see a problem just using TIP102 like recommended in the linked pdf? – The Photon Oct 18 '17 at 18:45
• Those 80V are a maximum rating. You can go as low as you want. – Janka Oct 18 '17 at 18:46
• I just looked at TIP102, it is 100 V so I thought that wouldn't work- but the previous comment clears that up, if it's a maximum that wouldn't be a problem? Because my Pi will be running at only 5V or so. – natalie Oct 18 '17 at 18:50
• The solenoid power supply (12 V) is what's producing $V_{cb}$, not the Pi supply. But 12 V is still less than 80 or 100 V. – The Photon Oct 18 '17 at 19:02

V-EBO is the maximum reverse voltage applied between base and emitter. It doesn't really matter for your application because your circuit won't apply a reverse bias voltage to the transistor's base.

V-CEO and V-CBO do matter since they determine the maximum collector voltage of the transistor, and therefore limit the maximum solenoid drive voltage you can use. These voltages are maximum ratings, however - so if you use a 100 Volt transistor to switch 5 Volts, that's perfectly fine.

The BD679 is a bad choice for another reason, though. Its high collector-emitter saturation voltage, V-CE-SAT, means that the transistor will dissipate a large amount of power internally (solenoid current times V-CE-SAT). Your transistor has such a large saturation voltage because it's a so-called "darlington transistor": There's actually two transistors in there to get increased current gain. (Current amplification)

If you used the BD679, it would probably overheat and die.

You might be better off using a MOSFET for your application, since MOSFETs don't have a saturation voltage, only an on-resistance. You'd need a so-called "logic-level MOSFET", which is a special type of MOSFET that has a low turn-on gate voltage, because your Raspberry Pi only outputs 3.3 Volts and regular MOSFETs need about 10 Volts to turn on. The IRLZ34 is such a logic-level MOSFET and it is available on Mouser as well.

http://www.mouser.de/ProductDetail/Infineon-IR/IRLZ34NPBF/?qs=sGAEpiMZZMshyDBzk1%2fWi5%252bqVgN3%252bWS8nD5Xs%252bP1ym4%3d

Connect the MOSFET's source to ground, gate to the Pi's GPIO pin through a small resistor (~100 ohms), and drain to the solenoid. It shouldn't need cooling for this application.

You may also need to add a "pulldown" resistor (~10 kOhms) from the MOSFET's gate to ground to make sure it stays OFF until the GPIO pin goes high.

• @Irfann You should post your additional information as a separate answer. I recommend starting "In addition to Jonathan's answer..." In this way you can gain reputation from upvotes, and then be able to post comments. – JYelton Oct 18 '17 at 20:56