3 Simple Ways to
Share What You Make

With Instructables you can share what you make with the world — and tap into an ever-growing community of creative experts.

PhotosPhotos

Share one or more photos of a project, recipe, or whatever you've made, quickly and easily.

Step by StepStep-By-Step

Share your step-by-step photos with text instructions of what you made so others can do it too!

VideoVideo

Share your how-to video. You'll need your embed code from a video site such as YouTube.

Open Source Microchip LED / PWM Driver Project

Open Source Microchip LED / PWM Driver Project
«
  • Floating_KLL.JPG
  • LitLamp3.JPG
  • IMAG0084.jpg
This instructable fully describes building a PWM driver to control four LEDs from one small Microchip 12F609 board.

The original design was called the "Kemper LED Lamp" and I sold a few lamps to several brave folks through my web site. However, I've come to discover selling small quantities to a few folks is a major pain in the backside. Hand soldering these together and then selling them at $4 bucks each is no way to make money.

So, I'm going Open Source baby. I'm hoping that more people can enjoy these wonderful little lamp drivers. I've put in way too much work for these little gems to sit idle on the shelf and not get used.

With the information I'm providing here, you should be able to program your own Microchip 12F609 micro, connect a couple LEDs, and have your PC command some LED action. 

For reference, here are links to my prior Kemper LED instructables:
http://www.instructables.com/id/Kemper-LEDs-on-Vixen-Music/
http://www.instructables.com/id/Designing-a-Multi-Node-LED-PWM-Lamp/

Those two links have a bunch of information that cover the lamp design in detail. There are even a couple video demos in those instructables that, I think at least, are cool too.

Note, if anything new comes up you can always check my web site at:
http://ph-elec.com/content/kemper-led-lamps

Thanks,
Jim
 
Remove these adsRemove these ads by Signing Up
 

Step 1Hardware Design

Hardware Design
«
  • pcb_top.jpg
  • pcb_bottom.jpg
  • KLL_Schem.jpg
  • pcb_array.jpg
  • DSC_4727.jpg
  • IMAG0093.jpg
The hardware is painfully simple. The micro drives four outputs and receives / sends commands on the fifth. Couldn't get much simpler.

Eventually, I ended up with a board design that is 20mm x 15mm. To keep the cost down I used CAMtastic to array the lamp boards onto a larger board. I arrayed the lamp boards using a grid of 8 x 8 with a 0.055" gutter between each lamp. The gutter makes it easy to cut the lamps apart with my cheap-o bandsaw.


« Previous StepDownload PDFView All StepsNext Step »
29 comments
May 16, 2012. 8:22 AMTester09 says:
Is possible to publish or receive the file .hex?
Which program has been utilized for compilation?
What should be connected to connectors P1 and P2, under Comm?
By chance the PWM Driver Project, must be connected to an Arduino?
Is possible to use it independently, without connecting all'Arduino (which I have)?
Thank you.
May 17, 2012. 1:08 AMTester09 says:
Thanks for giving me the answer and good explanation.
So your circuit, you can use it both with the Arduino and the computer, in the absence of the Arduino, right?
Is possible to use the file .hex for 12F629 and 12F675 pic (because right now I have no pic 12F609)?
As a USB-TTL, I have an inexpensive adapter CP2102 (already tried with other PIC and AVR).
What is the program to handle the RGB controller from Windows?
Hello and thank you.
May 17, 2012. 7:37 AMTester09 says:
Thanks for the replies.
When I can, I try if it works first on the 12F629 and 12F675, 12F609 then when I have, I try this, too.
Python, would only work under Ubuntu Linux?
Why at this time, the laptop I have Windows Vista, so not sure there is a version of the Python for Windows.
I'll know when I can.
Hello.
Apr 17, 2011. 2:26 PMsokomm says:
I got all the part for this project and some 4pin RGB Leds and now wonted to try it out and I realized that diodes in the schematic use a common anode, and 4pin RGB Leds use a common cathode :( .
If you ever decide to rework the design with the new micro it would be great if the polarity for powering led is inverted. Any way great job keep it up !!!
Aug 22, 2011. 9:36 AMForgerOfPie says:
I bet you could find some common anode RBG LEDs somewhere. After all, we have the internet!
Jan 18, 2011. 1:23 AMwaweru john says:
wow!! have very interesting and educating lessons thank you and keep it up.
Oct 28, 2010. 7:18 AMdave77459 says:
I've always imagined that I could use an Arduino to control glowy LEDs on my motorcycle, but haven't the stuff to imagine how. I'd like a solid on, as well as a "breathe" mode where the lights brighten and dim. Seems simple enough, but how?

Do you reckon this could accomplish that? Can it drive a couple hundred LEDs, and be vibration resistant?
Oct 28, 2010. 12:01 PMkimvellore says:
I have been playing with PICS for a while and when I wanted to control many LED's with multiple intensities it was a pain to code it and not to mention bulky add on drivers. In my quest for finding a solution I came across some chips listed below that kind of do the same function with built in drivers etc..
I like the ones with programmable intensity so dont have to bother with coding for independent LED intensity control.

CAT4016VS-T2 from On Semi
TLC5928DBQ From TI
STP16CP05MTR From ST
PCA9632TK2,118 from NXP

This is just a sample there is a huge variation of options including the number of LED, current, communication etc etc.
for a similar function listed here one can pick the 4 led version. This is a great project with many other pros.

Kim

Kim
Oct 28, 2010. 8:07 AMdave77459 says:
Thanks for the reply. So you are saying I wouldn't need the daughter board?

I apologize for my cluelessness, but I gotta think there is a cheaper and better way to light up my bike than with a $400 solution that has only on/off.

Thanks again!

Dave
Oct 28, 2010. 11:21 AMdave77459 says:
Thanks Jim! I appreciate your research and tips!

Dave
Oct 25, 2010. 12:40 AMrobot797 says:
are you selling those
else i want to buy a few from you
Oct 26, 2010. 5:33 AMrobot797 says:
what is the easyest way to controll the by arduino

a script put *******red=high (dots are the chip number)
Oct 26, 2010. 7:44 AMrobot797 says:
that is awsome
Oct 25, 2010. 7:37 AMkyle brinkerhoff says:
hey wanna sling one of those my way? i would love to use one of those on my robot for the under glow! http://www.instructables.com/id/how-to-build-MACKRA-a-serb-variant/
Oct 25, 2010. 1:03 PMkyle brinkerhoff says:
pretty cool idea! but you know what would be really neat is if you could integrate your robot all onto a single pcb, thus eliminating any need for extra materials for the chassis, of course it couldent handle the weight of a netbook, but it would make production even cheeper, although you would probably have to make some special bracket for the servos to stay in place on the pcb.
Oct 24, 2010. 12:41 PMdreadful90 says:
wow its really interesting

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
54
Followers
16
Author:jimk3038(www.ph-elec.com)
Founder of Powerhouse Electronics. For more info goto: www.ph-elec.com