Sunday 10 February 2013

Raspberry Pi and Leds strip RGB

Description
This project came up with my friend who wanted cover his room with leds strip and control all of them with a simple http request.
The idea was to be able to change color and the brightness, so I had to buy just a few components to make the controller:


  • 4x MOSFET N-Channel STP75NF75
  • 1x Breakout Adafruit
  • 1x 16 Channels servo Adafruit
  • 1x PCB
  • some wires

Schema
I just placed all my components on a PCB board, connected the 16 channels servo via I2C and each MOSFET to the leds strip.




Why MOSFET and 16 Channels?
Someone is maybe asking why I am doing this total mess with MOSFET.
The answer is that the 16 Channels couldn't give me the same result that I was expected. This means I couldn't pass the max power through this board, so I avoided the problem by using  4 MOSFET that are getting the main source power, 12V, and Raspberry is sending the right pulse to each ones.

HTTP Request
My friend made a little script in Python that is waiting for a POST request with Red, Green, Blu, Power as parameters and then it will send the new color through the 16 Channels.

Code?!
I don't really have so much code, I took the example from Adafruit to drive the 16 channels ( 3 lines ) and then parsed the 4 parameters to send the value between 0 and 4095.
Obviously I can post something if someones needs a little guide how to parse these values =).


Video


4 comments:

dyov said...

I was Curios if you had your code posted on github or if you could share it here? I am looking at putting a system like this in my car and could use some help. I've never worked with a pi before and should be getting on within the week.

Thank you for any help you can provide.

d9frre09ds0ds said...

I just used a simple pwm values from 255 to 0, I dont have the code because was a friend's project and I forgot to save it :)

Unknown said...

I'm looking to write a script on the raspberry that takes RGB values and changes the color of the LED strip accordingly. Any help on that part?

d9frre09ds0ds said...

You can use a PWM module or if you have a neopixel strip, you just need to use one pin of the PI. It is very simple