Cheap and Easy Dial Controlled High Power RGB LED(s) Driver

Introduction: Cheap and Easy Dial Controlled High Power RGB LED(s) Driver

About: Designing electronic creations from microcontrollers, LEDs and anything else I can pull out of a dumpster and make use of. Check my Profile

There may be a lot of RGB LED Drivers out there, but this one is a bit different, its versatile, small, cheap, and is simple to control.

A potentiometer with built in switch is used for the controls. A quick press, switches between color cycling and solid color select modes. Pressing in on the dial and holding, toggles an Intensity control, to brighten or dim the LED. Pressing in and holding again, exits Intensity control. Settings are saved when turned on/off.

It supports common anode, common cathode, or single color LEDs. Selectable via jumper wires.

The PCB is  set-up for a single 3 watt RGB LED but, it can be easily made to power a 12 volt string of LEDs in series as long as each color channel isn't more than the recommended 2 watts ( though the transistors are rated for 2.5w ) or 500 miliamp per color channel. Correct resistor for R1, R2, R3 would have to be calculated and changed. Goto Step 7 to View.

This driver is great for ambient lights, mood lamps, display lights, case light for a PC, I have even made a lantern version that ran off 4 D batteries

And of course best of all its free, with PCB layout, HEX file, schematics are available.

Measures 1.5" x 1.5" x 1" finished.

Full Kits including 3 Watt RGB LED,  PCB, all the parts, interconnects, wire, heat sink and thermal grease. Can Be Found Here
All the parts you need. Just need a 5 volt @ 700ma+ Power Supply.

Or get a Full Kit with 0.5 Meters or 12v RGB LED strip with adhesive backing. Dial RGB LED Driver Kit, Full, RGB Light Strip

There is an Economy Kit and Basic Kit available for this project as well. For a Cheaper Project. No Headers, potentiometer or LED, see descriptions.

Get a Programmed PIC and PCB in a Combo Pack

ZIP containing HEX, PCB layout, Schematics, & datasheet is below

Download the Dial RGB LED Driver  v.1 Datasheet

UPDATE 2/15/12: A new refined version has been released.  It is recommended that devices are upgraded to this new firmware. Anyone who has purchased a kit, or programmed PIC can contact me for special price on a new version, or download the HEX from the ZIP file and re-program.

Changes v.1 to v.2:
- Faster PWM Rate
- Better Dimming down to 50%
- Color Select now goes Red -> Green -> Blue -> White (added white)
- Refined user controls
- Fixed misc bugs

I have included 2 modified versions of the firmware both use GP5 as a second button, one toggles the light on/off when the button is pressed, the other version holds the light on/off depending on the state of GP5, designed to work with a QT113 touch sensor. See readme for details.

This Instructable will assume that the kit with a 3 watt RGB LED is being assembled.

If you are not using a 3 watt RGB LED, R1, R2, R3 will be different values try to find the correct resistor values you should use, or send me a PM, I will help you out. Choosing incorrect resistor values can cause damage.

The author of this Instructable can not be held liable for any damage or personal loss in anyway resulting from the information in this Instructable. use at your own risk.

Common Anode - Common lead goes to V+
Common Cathode - Common lead goes to V- ( gnd )

Step 1: Prepare

Clear a work area, preferably with good light.
Layout the parts and ensure that they are all there.

- PCB - Buy a PCB with Free Shipping
- 12F675 programmed with the firmware Or Buy One Programmed
- 8 pin DIP socket
- 3x 500 ohm 1/4 watt resistor
- 1x 10k ohm 1/4 watt resistor
- 3x NPN Transistors, I chose MPSW45ARLRAG
- 2 Pin Locking Header
- 2 Pin Housings
- 10 Crimps ( Purchased kits come with 12, just in case)
- 3 Watt RGB LED
- 10k Potentiometer, with built in momentary Pushbutton
          - A regular Pot 1-10k ohm and a momentary Pushbutton can be substituted.
- 2x 4 Pin locking Header
- 2x 4 Pin housing
- Heatsink for LED
- 2 screws
- current limiting resistors for LEDs
     - For a 3 watt RGB Star LED
          - 1x 5.1 ohm 1 watt, for Green
          - 2x 16 ohm 1 watt for Blue and Red
           *Note: these need to be small resistors, 8 mm in length. I've only found PR010001 that fit.
                 though larger ones can fit, its just not pretty.
- 0.1uF disc capacitor
- 7805 if the input voltage and LED voltage is more than 7 volts.
- Wire, about 20" of twisted pair (2 wires)

A power supply of at least 5 volts, at least 700ma ( 1 amp is better ) is also required. 

Required Tools:
- Soldering Iron
- Wire Stripper
- Needle Nose Pliars

- Hot Glue
- Electrical Tape
- Volt Meter
- Shrink Tube

Step 2: Resistors and Jumpers

Place all the Resistors First, they have no polarity so they can go in either way. Save your lead clippings for later. Placing the resistors in, and then taping them temporarily with electrical tape helps.

( figure below )
R1 - 5.1ohm 1w
R2 - 16ohm 1w
R3 - 16ohm 1w
R4 - 500ohm 1/4w
R5 - 500ohm 1/4w
R6 - 500ohm 1/4w
R7 - 10kohm 1/4w

Then place the jumpers:

Using some solid strand wire of at least 24 gauge, or some of the 1 watt resistors leads that were clipped,.

Take a needle nose pliers, bend the wire into shape pictured below.

If you are constructing the Kit, do this:
If a common anode(common positive) LED is used (3 watt star)(red lines on the figure)
J1 is jumped to NEG1
J2 is jumped to POS2

If a common cathode(common negative) LED is used  (blue lines on the figure)
J1 is jumped to POS1
J2 is jumped to NEG2

Note: If input voltage is more than 5 volts goto Step 7 for jumper details.

All types connect these:
A1 is jumped to A2
B1 is jumped to B2

Place the capacitor C1. Its non-polarized so the capacitor can go in either way, even though the top-side shows polarity.

Step 3: Transistors and Headers

Now that the jumpers, resistors and capacitor are placed. Its time for the IC socket.

The socket has a notch on it that is placed as pictured on the top side illustration on the PCB, or there is reference image below.

When soldering, ensure that there are no solder bridges to other pins, I recommend checking with a continuity meter ( volt meter) to be sure if some pads look to be touching.

The transistors position is based on if the LED(s) to be used are common anode or cathode

For common anode (3 watt Star, This one if you are assembling the Kit)
   -The transistors are placed reverse of the topside illustration.  See Image Below

For common cathode
    -The Transistors are placed as pictured on the topside illustration.

The full kit with a 3 watt RGB LED should not use a 7805 voltage regulator. A input of 5 volts must be used. And the solder pads for the 7805 be jumped and filled.
     - Pin 1 & 3 are jumped ( the 2 outer holes of the 3) and the center hole's solder pad needs to be filled in with solder.

If you are using interconnects or have purchased the Full Kit.
    - Solder in the 2x 4 pin locking headers, they can go in either way works best.
    - Install the 2 pin locking header, keeping in mind the polarity.

If you are not using interconnects
You will just solder your wire directly into the holes and
Skip the Next Step

Step 4: Interconnects

The full kit
at comes with connectors to easily connect and disconnect your LED and potentiometer for easy installation into a lamp or diffusing medium.

There are 3 parts, the headers, the housings and crimp terminals.

Decide how long you need your LED wires and your potentiometer wires and cut the supplied twisted pair into 2 pieces, which you are going to make into 2 sets of 4 wires.

Trim 1/8th" of wire off each end and follow this Short Tutorial, to attach the crimps to the wire.

Once each piece has crimps on all the ends fold evenly and cut in half, so you are left with 2 pieces of double wire with 4 crimps, See images

Slide the crimps into the housings with the tabs facing the slots, they will click when they are in. 
Then cut evenly in half, see 2nd image.

Repeat with second set of wires.

Step 5: LED and Potetiometer

The 3 watt LED is a bit tricky to solder up since its attached to a heatsink. But if you have purchased a kit, the LED comes already tinned, which makes it a lot easier.

The heat sink the LED comes mounted on is not good enough for prolonged operation. So a larger one must be attached. The kits come with a black aluminum heat sink with fins. The fins can be easily bent to attached to something.
I also commonly use 3/4" aluminum strips, from a hardware store.

Its safer to mount the LED star to the heatsink before soldering:

 - Put a screw most of the way into 1 of the holes.
- Apply a drop or 2 of thermal compound to the bottom the LED
- Align the LED with the screw and the other hole, and screw in both screws snug.
- Wipe away any compound that oozed out.

Take one housing, with its 4 wires, and strip an 1/8th of insulation off.  Only strip minimum amount of wire, as the heatsink is conductive and exposed wire may short. Then tin the wire.

Now get your soldering iron quite hot, I found that it gets easy at about 500 F.
You gotta work quick, don't hold the iron on the LED longer than needed.
With the wire and solder pad already tinned, it should be easy enough.

Follow the pinout for Header 1 referenced to the part layout below.

 Let the LED cool between solder pads to help ensure no damage occurs.
Check to make sure no solder pads or wires touch the screws or side of the heat sinks. A drop  of hot glue/silicon when your are all done will help keep the wires out of the way.

Solder up the potentiometer and switch as pictured below.  ( Header 2 )

Header 1
4 - LED voltage, Pos or Neg, +
3 - LED Green, G-
2 - LED Red, R-
1 - LED Blue, B-

Header 2
4 - Pot Center Tap
3 - Switch, one side
2 - Negative, contacts 2 poles on the potentiometer/switch
1 - Positive

Step 6: Finish It

Plug the 8-pin PIC microcontroller IC into the socket. The top of the PIC has a dot in the corner,
which is placed so it is on the same end as the notch in the IC socket.

Plug in both the LED and the Potentiometer housings into their headers. * Ensure to plug into the correct header, otherwise black smoke might appear (I did it, with 12v input, 5v won't cause damage)

Again look over the board, look for solder bridges, loose wires, incorrectly placed parts.

Carefully hook up the power supply and double checking the polarity.
Connecting the wrong way can damage the PIC, LED or Potentiometer.

Take a good look and ensure everything is correct before applying the power.


Check for lamp ideas, updates, and more projects

Take a look at my CNC Driver and look out for my upcoming Insructables. 

- Infinity Mirror, with Kits available.
- DMX Controlled Wash Light
- Pulse Motor

More Projects and Tutorials can be found at
Please support this and future projects by purchasing something or donate.

Step 7: Optional: 7 - 12 Volt Input Diagrams

If desired LED voltage is greater than 5 volts, 12v at most.  A few things need to be changed.

- A 7805 must be installed as pictured.
- A jumper must be ran from Voltage Input to the correct jumper. See Diagrams Below.
- Ensure that R1, R2 and R3 are changed to their correct values or jumped.

If you are using sections of RGB Light Strip from the store:
The strip has its own resistors on it, so R1, R2, and R3 should be jumped with some 18-22 gauge solid strand wire. And follow the Common Anode Diagram below.

Be the First to Share


    • Mason Jar Speed Challenge

      Mason Jar Speed Challenge
    • Bikes Challenge

      Bikes Challenge
    • Remix Contest

      Remix Contest

    15 Discussions


    8 years ago on Introduction

    hi, i've got a challenge i need help with, i will be making a star sky in the roof of a buddys car and i was wondering what i need to do to get the effects from this dial controlled rgb driver to work with estimated about 200 pcs of rgb leds, how would i go about getting this done?


    9 years ago on Introduction

    What type of color sweep (palette )you used? it's kinda strange


    9 years ago on Introduction

    Hey again :) so after some time I have found the problem on my programmer and fixed it. And guess what? Everything is working properly. Now I just need to buy new RGB lamp because I have inadvertently burned up a red color :D


    9 years ago on Introduction

    Hello.I just wated to ask if the code that you have added to .zip file is completely done because when I try to program chip programm shows me error message?:)


    Reply 9 years ago on Introduction

    Yes, the HEX File included in the ZIP is correct and working. Check that your program software is loading in the correct CONFIG, 0x1F84. And check all your other connections.


    Reply 9 years ago on Introduction

    Maybe you could tell me which programmer you are using and what programme?Because I have RCD programmer and I have tried to program my chip with PICprog4U and WinPIC800 but they do not have that config setting and WinPIC800 do ot recognise my programmer and I do not know what to do.. :( Maybe somebody can help me?


    Reply 9 years ago on Introduction

    I use a PICKit2, which comes with its own software. But I have used ICProg in the past with a modified JDM with no problems. I checked the RCD Website and without knowing how the RCD works, it notes some computers with poor surge protection might not work with the RCD Design. Also below the chart it mentions that WinPIC may  not be able to verify after programming, when INTOSC & MCLR OFF/Internal is set, which they are in the firmware.
    It says that ICProg should work if you set the programmer device to a JDM programmer.


    Reply 9 years ago on Introduction

    Maybe you have PCB layout of this JDM programmer? :)


    10 years ago on Introduction

    Nice! But just a comment or two: on your schematics, your power capacitor on each schematic is shown shorted out.


    Reply 10 years ago on Introduction

    Good Eye, the Negative side of the capacitor should go to ground. I had made different schematics than I used to make the PCB and missed that.


    10 years ago on Introduction

    this is a VERY cool instructable, im going to buy the stuff to build it, i just dont understand how do i do to connect common rgb led, i cant find that kind of led here in my city! :( please can u tell me? mi child will be gratefull :P B.r.


    Reply 10 years ago on Introduction

    Buy a kit it has everything you need, even the 3 watt RGB LED. Those LEDs are usually sold for $10. The full kit is $25 with free shipping.


    Reply 10 years ago on Introduction

    okey, but if u can tell me how to conect common rgb leds to this ill be gratefull cause i can make more to use them in my house :D thanks a lot, great instructable! :D


    Reply 10 years ago on Introduction

    Jumpers and the transistors are positioned differently. Depending on if the driver is powering a Common Anode or Common Cathode LED(s). Step 2 describes placement of the jumpers for both Com Anode and Com Cathode. Also there is a bit more information in the datasheet at