loading
*** Check out my blog for updated version of this project and more! ***

My obsession of LEDs has led me to this. Aurora 9x18 is a thing of beauty (if I can say so myself) - has 162 RGB-LEDs in a circular configuration. The color of each circle is controlled by a microcontroller using a twisted form of PWM.

The microcontroller (PIC24F08KA101) only has one PWM module, yet Aurora is capable of 27 (9xR,G,B) independent brightness control. This Instructable reveals the inner-working of Aurora 9x18 through the building process.

Step 1: Concept


A RGB LED is nothing more than a LED that actually encases 3 small LEDs of primary colors inside. RGB LEDs can create wide range of colors by combining 3 primary colors - Red, Green, and Blue. By changing the ratio between the 3 colors, you get many in-between colors. RGB LEDs are often called full-color LEDs.

Most of brightness controlling circuit utilizes the method called PWM. Many of microcontrollers today have a PWM controller or more built in, however there are usually less than 4 or 5 of them in a controller. So if I were to control 9 LEDs, I needed to use multiple controllers or external circuits. If those 9 LEDs were RGB LEDs, then there would be 27 PWM controllers needed.

I've gone through a few approaches - multiple microcontrollers working together in various configurations - some are complex and exotic. I was trying to solve more than just the number of LEDs that I can control - I wanted to make the fades in/out of brightness as smooth as possible. Turned out, 8 to 10 bit PWM resolution that most PIC microcontrollers provide was not good enough to create smooth transition in the darker/dimmer part of the brightness change. When the brightness is low, the transitions look more like steps than fading. Due to human eye's non-linear or exponential response to light intensity necessitates gamma correction of the brightness change curve, which requires at least 12 bits of PWM resolution to give smooth fades (in my conclusion).

If I simply design a circuit where each LED is controlled by it's own PWM controller having 12 bit or more resolution, I'd have to use a speciality LED controller IC. While this solves the problem, the added cost and size to the final product did not appeal to me. (Those LED controller IC are not very small or cheap.)

So I came up with an idea of combining PWM with multiplex drive. I further broke up each PWM cycle into multiple pulses, so that multiple LEDs were lit multiple times within one PWM cycle. (Kind of hybrid between PWM and PDM, I guess.) This way, the average output of LEDs are the sum of the many pulses within the short period. By combining more than one PWM pulses increases effective PWM resolution.
This technique also helpes reduce the perceived flicker of the light out of LEDs. Aurora 9x18's LED refresh rate is about 246 Hz, but LEDs blink a lot more often. This creates the illusion of much higher refresh rate.

Take a look at the timing chart. I picked 7 LEDs and R/G/B bus signals to present the concept.
As you can see, R/G/B buses go up momentarily, taking turns. These pulses control the actual duration that LEDs light up. Each common lead of the LEDs controls whether that LED will light during the period that R/G/B buses go high. The actual timing that LEDs light up are marked with the color on the chart.

The condition here is:
LED 1 is on level 1 red (the lowest brightness).
LED 2 is on level 2 green.
LED 3 is on level 3 blue.
LED 4 is on level 3 yellow (red + green).
LED 5 is on level 3 purple (red + blue).
LED 6 is on level 3 turquoise (green + blue).
LED 7 is on level 255 (maximum brightness) white.
* time scale is about 8.1 ms for the entire width of the chart.

Hope this explains the way Aurora controls the brightness/colors of LEDs.

References
- PWM on wiki
- PDM on wiki

Correction
LED refresh rate originally stated was wrong - it's 246 Hz not 123 Hz.

Step 2: Circuit


Aurora 9x18 has 18 RGB-LEDs in each of 9 circles, total of 162 LEDs. Each circle is LEDs are connected in parallel, so there are 9 LED circuits (x3 because they are RGB) to control.

I chose PIC24F08KA101 as the controller. It needed to be powerful enough (16 bit), and requires minimum of external parts (no crystal needed to run at the max speed of 32 MHz) to save space.

The circuit itself is quite simple. The microcontroller is connected to a joystick like switch (5 switches in it) and there are 3 MOSFETs and 12 BJTs controlling the current that goes into LEDs. There's a 3.3V linear voltage regulator to supply for the PIC as well. (The LED circuit is driven by 5V power.)

If you look at this circuit you might realize that it's just like 9x3 matrix circuit, but instead 3 rows are replaced with 3 primary colors of RGB LEDs. So now you know that RGB channels are multiplexed - in other words those 3 colors turn on one by one, not together at the same time. In general I don't like multiplexing, but I needed to compromise in favor for the simplicity and physical space.

Given that this microcontroller only has one PWM module (to control the brightness of LEDs), I had to come up with a way of extending that PWM signal into 3. I'm doing that with a simple "AND" logic utilizing the lower part of the R/G/B bus driving circuit. In short, R-BUS only turns on when PWM signal is high and R-DRV signal is low. For G-BUS, PWM -> high and G-DRV -> low, and so on. This circuit works remarkably well, saving my precious space on the board and a few dimes.
I'm using MOSFET on the high-side switch simply because BJTs that I can find in the small package do not handle the current drawn by 162 LEDs in parallel (about 3 A peak!). This MOSFET (DMP3098L) has a remarkable current handling capability. Highly recommended.

Low-side (column, or each LED) driver/switch circuit is very straight forward. NPN BJT in common emitter configuration.

There are 1k Ohm resistors connected to the output of each driver, which some of you wonder as to why. Those resistors help the transistors turn off quicker when there are no LEDs conducting (transistors turn off quicker when there is current going through drain or collector). Those transistors are switching at the timing in the order of nanoseconds, so turn on/off speed becomes critical.
In a nutshell, those resistors allow PWM to run at a higher speed (less visible flicker).

References
- PIC24F08KA101 datasheet
- DMP3098L datasheet

Step 3: PCB


I wanted to make this object as small as possible, so designing the PCB took some work. In reality, I went back & forth between the circuit design and PCB design, trying to reduce part count to the minimum.

I had the PCB fabricated by DorkbotPDX. They have a community based PCB program (kind of like BatchPCB) that I like. As you can see, the boards are beautifully manufactured (in the USA :). The solder mask is dark purple.

Links
- DorkbotPDX PCB Order

Step 4: Parts


Here are the list of parts, or BOM. You can download BOM file that can be uploaded to Digi-Key for quick ordering.

162x 150Ohm (0603)
9x 220 Ohm (0603)
13x 1k Ohm (0603)
3x 470 Ohm (0603)
1x 10k Ohm (0603)
2x 10uF (0603)
1x 1uF (0603)
1x AP7333-33 or AP7313-33
3x DMP3098L
12x MMBT2222A
1x PIC24F08KA101
1x 4-way Stick Switch (Panasonic EVQQ7)
162x 5mm Tricolor LED (common-cathode) - AliExpress.com
1x 5V regulated power supply or 4 NiMH batteries & case

I source LEDs directly from China via AliExpress . Takes a few days for delivery, but the prices are great. Other parts are available at Digi-Key .

You can substitute transistors if you have something compatible. BJTs can be substituted by number of others, finding substitutes for the MOSFET might not be easy, however. Please let me know if anyone knows of a more economical devices here.

Step 5: Tools & Supply

  • Magnifier visor or other visual aid device
  • Solder paste in syringe
  • Tweezers
  • Electric hot plate
  • Soldering iron
  • Solder (flux core. go for the highest quality solder you can afford.)
  • Wire cutter (I recommend this one.)
  • Microchip PIC programmer (supports PIC24F08KA and capable of In-circuit programming through a standard 6-pin ICSP connector) and a computer

Step 6: Assembly


Due to the high number of part count (371 parts), and tight and unusual placements. The assembly requires excellent soldering skills and takes quite an effort.

As most of the parts are SMD (surface mount device), I use "paste, place & grill" method. If you have built a few things with SMD, you would know what I mean. There are many ways to solder SMD parts, and you are free to go with any method that you are comfortable with. I will show how I've done this one.

1. Count and prepare all SMD parts for the placement
I recommend prepping the SMD parts, so that they are ready to be placed on the PCB as soon as you dispensed the solder paste on it.

Step 7: Assembly 2 - Dispense solder paste on PCB


I wanted to use stencil for this step, but unfortunately due to the PCB layout I could not have made the stencil (low cost stencils can not contain non 90 degree angle parts). So I manually dispense microscopic dubs of solder paste using a syringe. This is a tortuous process.


Step 8: Assembly 3 - Place SMD parts on PCB

After the mind-numbing process of dispensing solder paste. You get to pick & place the SMD parts. Due to the overwhelming number of parts, you need to proceed with a plan. Please follow the part placement guide that I prepared. This PCB does not have markings for parts (for a cosmetic reason), you will have to rely on the placement guide for correct placement.

I recommend following the order listed, starting from the center and move outwards. Also be mindful of electrostatic charge. Use anti-static desk mat if you have one. Or place aluminum foil under the PCB like I do.

Pay extra attention to the orientation of the switch. With this switch placed in a wrong orientation, you can't even program the microcontroller. Then you will need hot air reworking equipment to remove the switch. (Yes I made that mistake once and had to purchase a hot air tool…) This one is more obvious, but make sure that the PIC is in the correct orientation as well.


P.S. careful not to over caffeinate yourself when you work on SMD placement. You fingers will shake, and make the placement difficult.

Step 9: Assembly 4 - Grill


I then place the PCB on a hot plate. (Yes, the one from the kitchen) I'm using an old & retired one. So long as it heats up hot enough, it will get the job done - I think. A laser thermometer is a must, unless you've done this a million times so you know the temperature setting by heart.

After carefully placing the PCB (not to disturb the SMD parts on it) on the hot plate (I use center part, because the temperature seems to be more stable there), turn on the power. I'd turn the temperature control to the highest, then watch the actual temperature of the hot plate around the PCB. Then turn down the dial when the temperature hits close to 160 degrees C (yes I use Celsius here). Then try keeping the temperature around the same for a minute or two. Then finally turn up the dial again to let the temperature hit over 200 degrees. At this point, you'll see the solder melt and maybe a little smoke coming off the solder paste.
As soon as you can see all the solder paste melted, turn of the hot plate. Some people keep the PCB on the hot plate to cool down, but I get too nervous so I take it off. However careful not to cool the PCB down too quickly. (Do not place it on a cold surface.) Use tweeters to handle the PCB of course.


After the PCB has cooled down enough to touch, it's time for inspection. I wear a magnifier visor to examine all the details. Unless you are super good (or maybe I'm not good enough), there will be a few things to fix. SSOP (PIC24F) legs are close together, so check carefully for bridging. I always have to use solder wick to un-bridge them.)

Step 10: Assembly 5 - Electronic check & Programming

Before moving on further, take out your multi-tester and check the Ohm reading of the power connector and ICP connector pads. Make sure there are no shorts.

Then fire up your PC, launch Microchip IDE and program the PIC microcontroller on the PCB with the HEX file provided. You need to connect a 5V regulated power supply - I use a straight 2 pin header to supply the 5V to the PCB (be mindful of the polarity - round pad is positive and square pad is negative), and a 5 pin header to connect (square pad marks the MCLR pin) the programmer. Mine is ICD 2, but any compatible programmer should work.
If your programmer is an older one like mine, you need to make sure that the programming voltage for high voltage programming mode is below 9V. Microchip suggest using high-speed shunt regulator on MCLR pin to clip the voltage - I found this overkill - I just put a 7.5 V zener diode between MCLR and GND. It works! Just use the PCB pads as though they are the female connector. Give a bit of tension sideways to make sure the electrical connection is stable.

(July 5, 2011 - HEX file is updated to include all configuration words)

If all is well, you'll see the IDE reporting successful programming. If not, go back to more inspection.


Step 11: Assembly 6 - Testing the LEDs


Since there are some percentage of defect in any parts and it sucks to find out that the LED you just soldered onto the PCB was defective, I'd test all 162 LEDs before soldering onto the PCB.

Since testing RGB-LED with a multi-tester is tedious, and there are no RGB-LED tester commercially available, I have a home made a RGB-LED tester.


It's a simple rig with an 8 bit microcontroller (PIC16F627) I just had laying around. It takes 5 minutes to put together, and I promise that I will put another Instructable on it.

The tester runs through all possible combination of RGB colors (7 of them) so you can easily spot if any of them are not lighting or dim. I've had a couple of defective LEDs that I spotted by using this tester, like one of the colors not lighting, or dim. You can test up to 3 LEDs at the same time, so you can compare the relative brightness between them, too.

Desoldering and removing through-hole parts from PCB is a pain and sometimes damage the PCB. Testing the LEDs is totally worth the time.

Step 12: Assembly 7 - Soldering LEDs


You are almost there! As an added assurance, do a quick test. Stick in 9 LEDs into the holes - make sure that the orientation is correct, and push in tight. Put them into two straight lines. Then connect the power. See the video so that you know what I'm talking about. If you see the color fading, you really are almost there.



Now try keeping your head cool and carry on with the assembly. Now remove the 9 LEDs that you tested with. You need to cut the leads of LEDs before you insert into the PCB, like the picture shown.

Then insert the LEDs starting from the inner-most circle. Flip over and solder. Then connect the power and check if all LEDs are working. Repeat until you solder all of the LEDs.

Step 13: Assembly 8 - Power Supply


I use 2 pin Molex connector to connect the power supply. The supply needs to be 5V regulated type with at least 1A capacity. You can remove the plug from the AC adapter and attach an Molex plug like I did, or solder the leads from the power supply directly to the PCB.

You can also use NiMH batteries to power Aurora 9x18. 4 NiMH batteries connected in series provide just about 5V, perfect power supply for most circuits that call for regulated 5V power. 4 AA NiMH can power Aurora 9x18 for hours.

Step 14: Enjoy!

I hope you enjoy the beautiful and hypnotic color patterns as much as I do. I have 5 well tweaked parameters in current firmware to choose from. The up/down of the switch changes the pattern, while left/right changes the speed. Push of the switch pauses/un-pauses the move. Hold down the switch for two seconds turns the lights off.

There might be more functions added to the firmware, as there is a plenty of room left on the programming memory.

The 5 pin header contains two pins that can be used as analog inputs - so there are possibilities of adding interactivity based on analog input, such as sound. Hackers are invited.


 
Hola. A ver si por ahi lo cuelgas su DIAGRAMA . gracias .
<p>I love the project and plan on starting it. One question though, I'm not a fan of smd, will this:</p><p><a href="http://uk.farnell.com/microchip/pic24f08ka101-i-p/mcu-16bit-pic24-32mhz-dip-20/dp/1707617" rel="nofollow">http://uk.farnell.com/microchip/pic24f08ka101-i-p/...</a></p><p>PIC work as well. I believe it's the same as yours only in a DIP package. </p><p>THANKS!</p>
hi, led artist, <br> <br>according to the Current limits of DMP3098,3A. a RBG bus line can hold 600LED? because one LED current= 5V/(1k+150ohm)=5mA. 3A/5mA=600. <br> <br>so if the PCB is larger, it will be even much beautiful.
LEDs get about 11 to 18 mA each. The formula is: (supply voltage - LED forward voltage - transistor C-E saturation voltage) / 150 ohm<br> So you can only connect about 166 LEDs. In practice you can push more - in fact I doubled that with no problems. So about 350 might be the limit.
<p>There are 162 LEDs in this project,but only 9 LEDs will be lighted at the same time.Does it mean that the maximum current is 9x(11~18 mA)=160mA,?Thanks for your help.</p>
<p>why not use 9 resisters in the emitter of BJT to limit current,rather than 162x150ohm?</p><p></p>
The layout of the LEDs nailed it for me, great work
hi, LED artist, <br> <br>what's the camera with you to get to beautiful Pictures and videos of &quot;aurora&quot;? not only the art itself ,but also the pictures and videos are art!
I shot the video with Canon HF S200 camcorder. Stills are shot with Nikon D700, but many of the stills are from the video. <br>
Hi,Ledartist, <br> <br>i was quite empressed by the beauty of your LED art. and made a 18mini (easiest one). thanks for your study and share on the net! <br> <br>when i passed by supermarket , a question rised. can a full color screen do the same? what's the cost of a full color screen the same area of an 9*18 art? <br> <br>as long as you limit your work in toy, that's ok ,but when i was used in industry, there should be an answer. <br> <br>
Fantastic work! In your schematic for aurora R-DRV G-DRV B_DRV are all in parallel on the same PWM output so this means RGB lines receive same PWM pattern .. <br> <br>My question is that why in the aurora conceptial timing diagram the PWM patterns are not in sync ??
The 3 transistors Q2R/G/B effectively work like an AND gate.<br> So R-BUS only gets high when PWM = high and R-DRV = low, G-BUS gets high when PWM = high and G-DRV = low, and so on.<br> The microcontroller uses R/G/B-DRV pins to select which R/G/B channel PWM pulse goes to.
legit, awesome work. could be cool to see LEDs move in circular pattern too
Thanks! I know it would be cool if the colors moved in other directions too...<br>
Can I program it using an Arduino ?
Not sure... Some people are programming 8 bit PICs using Arduino:(<a href="http://arduino.cc/forum/index.php/topic,92929.0.html" rel="nofollow">http://arduino.cc/forum/index.php/topic,92929.0.html</a>)<br> <br> However I can't find any information on programming 16 bit PICs.<br> <br> Aki
I mean the PCB design that your showed in this page. Could you please share me that, because i am not professional.
Sorry, but I'm not sharing the PCB files. However, you can create the PCB with the information published here.<br>
I think you should sell the PCB as many of us cannot create PCB's in our kitchen... the MixMaster just ruins them. ;)
You can buy PCBs at my website - http://www.theledart.com/ .<br> <br>
Cool! Thanks! BTW the PCB is a pretty cool work of art itself! ... Looks decidedly Mayan in concept. Thanks!
......Thanks.
Hi. This project is sick as. I am working on my own version using an AVR uC. I was just wondering what the diameter of the PCB is. Also, how do you line the LEDs up on a circle? Thanks in advance
PCB diameter is 4.3 inches. Not sure that you mean by &quot;how do you line the LEDs up on a circle&quot;...
I'm really impressed by the project, but I must admit I didn't quite understand the part about the colors shifting.<br><br>Could you show the *.c program? If not, could you elaborate about how do you do to keep the colors going through the lines?<br>On the chart it seems like the LED 7 turns white in the end, and all the others fade out.
You can read the text in the instructable, but the LEDs will light:<br> <br> LED 1 is on level 1 red (the lowest brightness).<br> LED 2 is on level 2 green.<br> LED 3 is on level 3 blue.<br> LED 4 is on level 3 yellow (red + green).<br> LED 5 is on level 3 purple (red + blue).<br> LED 6 is on level 3 turquoise (green + blue).<br> LED 7 is on level 255 (maximum brightness) white.<br> <br> I wrote the program in assembler, so there's no .c file...<br> <br>
I love this innovative art did you intentionally use a Fibocci Sequence ? in the pattern?<br><br>http://youtu.be/-Ibc8sD5sgw
Yes, Fibonacci number was one of the influences in the design. I looked into the nature for timeless beauty.<br> <br>
ANY BODY....
COuld you please share me your PCB.
Absolute Genius!!!!! Thanks for everything.
1 x PIC24F08KA101<br> 3 x VP3203N3-G<br> 12 x PN2222ATA<br> 1 x MCP1702-3302E<br> 162 x rgb leds common cathode<br> 13 x 1000 ohm<br> 162 x 150 ohm (1/8 watt)<br> 9 x 220 ohm<br> 1 x 10k ohm<br> 1 x 7805<br> 2 x 100 nf<br> 2 x 10 uf
Excellent excellent<br> <br> Thank you for sharing!&nbsp; I ordered the components for this awesome project. Hope it will arive soon.<br> <br> Thanks!!<br>
Wow!!! A successful replica of Aurora 9x18 with TH parts!<br> Congrats!!!<br> <br> The picture looks as though the green LEDs are not lighting... or it's just that picture?<br> <br> Looking at the parts, VP3203N3 seems a bit weak for the job - 0.6 ohm RDS seems high. How does it perform?<br> <br> I'd love to hear more about it.<br> <br> Aki
Hi Aki<br> <br> Thanks for your comments but it was you who really did the hard work, I can't even write programs for micro-controllers, so I didn't modify your firmware at all. I have uploaded a hand drawn circuit diagram of my modification at:<br> <br> http://www.mediafire.com/?juaveff334ntzo3<br> <br> Basically, to add remote control (as well as keeping the original manual pushbutton switches) I added a pic16f628 together with tsop2236 receiver and slightly altered an RC5 example program for the Proton Basic Compiler to toggle outputs on the PIC in response to button presses of the remote. The outputs of the PIC feed an 'or gate' so that a logic high is produced when either a button on the remote is pressed or a manual push-button switch is pressed for each of the 'up', 'down', 'left', 'right', 'centre' cases. This logic high then feeds a cd4066 switch chip which then feeds the PIC24F08ka101.<br> <br> To add auto-dimming I simply fed the DMP3098L mosfets with a varying voltage of about 2.9V in dark conditions to about 5V in bright conditions (as opposed to a fixed 5V). As you can see in the circuit this is simply achieved using an mic2941 regulator and an LDR together with appropriate resistors. Oh, and to make sure the colour balance remains relatively unaffected at lower mosfet supply voltages I added a 1N4001 diode at the output of the R-bus to lower the red LED current (due to the lower voltage drop of the red LED).<br> <br> I'll have a look at your analogue input mode next.....hope it's as good as the rest. Amazing work (subarashi dekibae de odoroki mashita) Aki.<br> <br> Hibs
Thanks for uploading the schematics. I see you added a voltage based brightness control... IR remote is something that can be added to Aurora via a simple firmware upgrade - so long as you can let go of one of the switches to open an I/O pin. (I have working IR remote receiver code for 16Fxxx. My earlier work almost always had the IR receiver, but I started preferring mechanical switches somehow.)<br> This gives me an idea for the next round of enhancements. Great work. Yoku dekimashita.<br> <br> Aki
Hi Aki<br> <br> I've finally finished making your Aurora 9x18 display, and have added a temperature/clock display in the centre of it. I also added a remote control and auto-dimming functionality to it. Feel free to ask any questions.<br> <br> Again, many thanks for developing Aurora 9x18 - it really is hypnotic to look at. You'll find a couple of videos at:<br> <br> http://www.youtube.com/watch?v=7ArCmOtHIsc<br> http://www.youtube.com/watch?v=ZQ9bqS7RbhA<br> <br> Hibs
Just realized that there is a shot of the controller in the video...<br>
Wow! Congrats! Great looking finish. I wish I was that handy...<br> <br> I'd love to see the controller part of Aurora as well.<br> <br> How did you add the auto-dimming and remote control? Did you add code to the Aurora chip?<br> <br> I have IR remote receive firmware written for PIC16F, but haven't ported to PIC24F yet...<br> <br> Thanks for shearing.<br> <br> Aki
Can you send me a better picture of the PCB or maybe a CAD (if you have it) please? Thanks! --- rmashmoul@yahoo.com
I bought the kit and put it together without any problems. This project and instructable are very well done. I high recommend this project to anyone considering purchasing the kit (if there are any left).
Thank you for sharing a PCB. I think a lot of people have mixed results with soldering SMD components like me. When the size of the print exceeds the 5x5 cm I already know it will fail because of temperature differences between inner and outer regions of the board. If it succeeds the components are not positioned straight.
Hi,<br> <br> My name is Ika and i want to share a non smd components pcb with you. I have many reasons for it. I have spend more than a million of dollars trying to solder smd components without success. Also a project on instructables must be reachable for everybody so all people can learn from it. The pcb contains the leds and resistors only. The rest can easily be added by yourself (you have to find the non smd equivalent for the components). Attached the source files which can be imported in eagle. Also a self made library is attached which can also be imported in eagle.<br> <br> Greetings from Tokio,<br> <br> Ika
Thank you for sharing a PCB. I think a lot of people have mixed results with soldering SMD components like me. When the size of the print exceeds the 5x5 cm&nbsp;I already know it will fail because of temperature differences between inner and outer regions of the board. If it succeeds the components&nbsp;are not positioned straight.<br> <br> I'm not familiar with the Eagle PCB design software but if you succeeded to not use SMD components for this awesome project it is worth trying.<br> <br> Can you also make a PCB with all components included? You are only a few components&nbsp;away from having it fully available.&nbsp;I don't mind having a second board which can be put below the LED board like it is done in the LED Cube 8x8x8 project which is also an instructable winner on this website.
<br> If someone decides to make a through-hole only version of Aurora 9x18, I will help with the circuit design, etc.<br> I just don't have the desire to design the through-hole version of PCB...<br> <br> Aki<br>
<br> Wow! I applaud the effort to create the through-hole version of the layout.<br> I guess the rest of the circuit needs to be converted to through-hole as well. I know I could not find the equivalent MOSFET in through hole without going for a larger size ones (like TO-220). So the through-hole version of Aurora 9x18 would be quite large.<br> <br> Why don't you post your through-hole version Instructable?<br> <br> P.S. Do you speak Japanese?<br> <br> Aki<br>
Hello Aki,<br> <br> You designed an awesome project. It is more than a beatifull &quot;object&quot;&nbsp;as you described yourself :-)<br> <br> May I ask a question about why you choosed the powerfull&nbsp;DMP3098L MOSFED in your project? In step 2 you describe the current drawn by 162 LED's in parallel which can peak to 3A. In step 13 you describe the power supply with 1A capacity. It looks like less current is needed so a smaller MOSFED can be used?<br> <br> The LED Cube 8x8x8 project on this website with 512 LED'S&nbsp;(no full color) consumes at about 360 mA when&nbsp;I switch all&nbsp;LED's on because of the multiplexing (a single LED in this project consumes 20 mA when using the same resistor and voltage but no multiplexing).
Thanks for your compliments.<br> <br> The &quot;peak&quot; current that the R bus draws is 20 mA x 9 x 18 = 3240 mA. This is the worst case scenario, and in reality it's more like 2800 mA. So the MOSFET chosen is a nice/safe fit. A bit less capacity would be fine, but I could not find other MOSFETs that fit the bill.<br> <br> However, since LEDs are always blinking at a fast speed (about 86kHz), and average duty rate (rate between the LED on/off time) is about 33%. So the average calculated current draw is 924 mA. (Red LEDs draw the highest current, other colors draw a bit less, so the actual average is even less.)<br> <br> The current gets even lower as the supply voltage lowers even a bit. So with a USB supply tending to give slightly lower than 5V (I see 4.9V or less), Aurora 9x18 only draws about 400 - 600 mA (actual measurement).<br> <br> Aki<br>
Would this device be all that is needed to load the HEX file to program the PIC microcontroller??? Is this the least expensive device?<br><br>What about the Gerber files to have the PCBs fabricated? Did I miss that file somewhere???<br>
I'm not releasing the PCB file for this project. I _might_ be able to sell the PCB in limited quantities.<br><br>Please understand that this PCB requires very tight tolerance in fabrication, and it will be expensive to get it done in small quantities. (6 mil traces &amp; space, many holes, etc.) Bargain priced manufactures won't get it right for sure. <br><br>Aki

About This Instructable

113,350views

498favorites

License:

Bio: I am an electronic artist living in Brooklyn, NY. I work with LEDs and microcontrollers to create beautiful objects.
More by ledartist:T962A SMD Reflow Oven Fix/Hack Color Organ Triple Deluxe II Aurora 48 - 48 RGB LED Sequencer 
Add instructable to: