I have a 12V RGB 5050 LED Strip with no controller and I cannot change the color without modifying the circuit. What I want to do is hook it up to my Raspberry Pi or Arduino and control the color and brightness through the terminal or serial communication.

I realize I can't simply wire the strip to the RPi GPIO pins or the Arduino as neither of them support a 12V output, but I believe I can use a transistor with a 12V input and control it with an RPi to change the LED strip values.

What transistor is recommended to go about doing this? Is there any other way I could achieve what I want without having to buy expensive parts (> $5)? Any other recommendation about anything would be helpful. Thanks.


closed as off-topic by Keelan, Daniel Grillo, Matt Young, Nick Alexeev Oct 31 '14 at 5:45

This question appears to be off-topic. The users who voted to close gave this specific reason:

If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    \$\begingroup\$ Some IRLxxx mosfet should do the job. \$\endgroup\$ – Biduleohm Oct 26 '14 at 16:57

For RGB strip you indeed need 3 pcs transistors or MOSFET's. Most commonly RGB LED strips have "common anode", so they take in 12V from one wire, and 3 other wires need to be connected to ground make each color glow. So connect the power to 12V and take 3 Logic level N-channel MOSFET's (http://www.bgmicro.com/fet.aspx), put the MOSFET's between the R, G and B wire and ground. Then connect the MOSFET's gates to Raspberry GPIO pins and control the colours with PWM. Use pigpio, or WiringPi (https://github.com/wiringPi) to generate the three PWM signals.

  • 1
    \$\begingroup\$ Does any N-channel MOSFET work or are there special specification for different uses? \$\endgroup\$ – sjbhalli Oct 26 '14 at 22:00
  • 3
    \$\begingroup\$ @sjbhalli the mosfet needs to be selected for a less than 3v Vgs threshold, and the current rating should beat how much current your led strip needs. \$\endgroup\$ – Passerby Oct 27 '14 at 0:33

Not the answer you're looking for? Browse other questions tagged or ask your own question.