Organize and Share your Electronics the way you want. Sign-Up for a free account now. It takes only 30 seconds!

RGB LED Controller Project

RGB LED Controller Project

This project is a small (3.8″x2.1″) PCB that allows very simple control of upto 13 RGB full spectrum LEDs. LED settings (color, state, brightness) can be stored on the board as power-up defaults or can be set/changed over a serial link (RS232 or SPI) with a very simple command protocol.

The board allows you to omit parts that are not needed (if you only need to control 3 RGB LEDs, for example, you can omit a number of PWM chips, capacitors, resistors and terminal strips without altering the board or hardware). The board also allows simple color “animation” (washes from one color to another over a given period of time) and LED slaving (making multiple LED outputs all reflect the state of a master LED for either high current LEDs or for multiple LEDs that need to keep coherent settings with each other). Commands can target a wildcard address to change all LEDs at once. Multiple boards can be strung on the same serial line and each given a unique ID/address, allowing hundreds to thousands of LED. Commands can also target a wildcard board ID to control all boards at the same time.

The boards can be built for between $40 and $80 (USD), depending on where you get the board made, wher you get the parts and which parts you want to include.

Genesis
Dynamically controlling full spectrum RGB LEDs is not simple. Ideally, you want to be able to vary the levels of each component of the LED (R, G and B). That requires either some form of D to A converter or a simulation of such via PWM (pulse width modulation). The logic to track and correctly light a single LED may be workable in a small project, but it can eat up a fair amount of resources. The logic and effort to control multiple RGB LEDs can quickly overwhelm a project (which is exactly what happened to me). I needed a way to off-load control 1 or many RGB LEDs and do so in an easy, low impact (on the project using the LEDs) way.

Whats it made of
The controller is a PIC 16LF87 chip, stuffed to the gunnels with code. It manages the interface and directly controls the hardware. The LEDs are driven by 1-4 (per controller) MAX6966 PWM driver chips. Since the PWM chip and the PIC run at 3.3 volts, there is a 5-3.3 volt regulator and an optional MAX232 level shifter (for using RS232). Add in a few resistors a few capacitors.

The PWMs drive the LEDs (common anode LEDs) at a steady 20ma (switchable to 10ma) without use of resistors. Just hook the LED up and go. If the LEDs you want to drive require more than 20ma, you can gang multiple outputs together (in hardware and in software) to achieve higher current ratings.

The board design is very modular, allowing you to install only the components you need to get the level of service you want. If you have a completely hardwired solution for 2 RGBLED being controlled over an SPI serial interface, you can elimnate extra LED drivers, the barrier strips, a number of capacitors, the RS232 level shifter, etc. The number of PWM chips you install defines the maximum number of RGB LEDs the board can drive.

Visit Here for more.







 

More Articles to Read

Design for a Wideband, Differential Transimpedance DAC Output
Design for a Wideband, Differential Transimpedance DAC Output
Wrist thrusters let you fly through the water effortlessly
Wrist thrusters let you fly through the water effortlessly
Bertan/Spellman 225-20R HV power supply teardown
Bertan/Spellman 225-20R HV power supply teardown
Blinking Christmas Lights
Blinking Christmas Lights
Adjusting clock with alarm, hygrometer & thermometer on 1.8″ ST7735 display
Adjusting clock with alarm, hygrometer & thermometer on 1.8″ ST7735 display
Adding an “extra sense” with rangefinders
Adding an “extra sense” with rangefinders
This wireless game controller looks like a rug
This wireless game controller looks like a rug
How to run your ESP8266 for years on a battery
How to run your ESP8266 for years on a battery
Calibration of a 3-Phase Energy Meter Board on the ADE7754
Calibration of a 3-Phase Energy Meter Board on the ADE7754
Making beats on a tiny Arduino DJ controller
Making beats on a tiny Arduino DJ controller
Qinsi-QS5100 Sn63Pb37 solder profile
Qinsi-QS5100 Sn63Pb37 solder profile
Water Detection System
Water Detection System
Professional Hi-Fi 15W Tube Amplifier circuit
Professional Hi-Fi 15W Tube Amplifier circuit
This Arduino machine will judge how sick your ollies are
This Arduino machine will judge how sick your ollies are
Turn an old payphone into a boombox for ’90s hits
Turn an old payphone into a boombox for ’90s hits
Big F’n 3D printer build
Big F’n 3D printer build
Temperature alarm for boiling milk
Temperature alarm for boiling milk
QuadBot is a 3D-printable walking robot for everyone
QuadBot is a 3D-printable walking robot for everyone
MicroConverter I2C Compatible Interface
MicroConverter I2C Compatible Interface
An Arduino tachometer for your older vehicle
An Arduino tachometer for your older vehicle

Top


Shares