Easy Peasy RGB LEDs - the holy grail!

For all those who love their blinking lights, you'll appreciate these:


There's 5 types of LED modules, including some huge domes that are 50mm in diameter.

  • You can run hundreds or thousands from only two Arduino pins (clock and data) - but you'll need some power for the LEDs of course.
  • Each LED can be individually addressed and assigned a 15 bit color.
  • The refresh rate is fast enough to do some amazing animations even a small video screen is possible.
  • The modules are pre-wired - no soldering required!

For those wanting to do a nice big LED Audio spectrum analyzer...stay tuned.

Excellent! Thanks for the link.

Does anywhere outside Australia carry these?

As far as I know nobody else carries these.

You have problems ordering from Australia guvna? :D

Seriously though, post to UK takes about 1 week.

any plans on selling the enclosure with the grid like the one in the video? those LEDs look great

The front panel is Perspex with a grid of black viny adhesive applied to the front. Behind that is a grid which I made from coroplast covered with silver vinyl adhesive. It works really well as the light from the LED gets diffused nice and evenly. On a bigger scale it would look awesome...I'm working on that ;)

If I can find somewhere to cut up the coroplast or some similar material I'll sell them as a kit. Maybe 10x10 grid.

My problem isn't buying from Australia, per se, any more than buying from the USA, Canada or China. It's HMRC (Her Majesty's Revenue and Customs), who used to be HM Customs and Excise. The last couple of times I've bought stuff from outside the EU, I've had to pay what I consider excessive duty on it, even though the declared (trade) value was well within their defined limits. "Not for personal use" or some such guff is the excuse they use. Of course, given the size of our national deficit, the money has to come from somewhere; I just object to it being from me....

Those are great. thanks for the heads up!

SteveS: Yes, you’ll get bitten 17.5% VAT for any orders over 18 UK pounds.
Mind you, you can get quite a few LEDs for under that price :smiley:


blip - you need to release a version housed in a ping-pong ball, perhaps with really thin wires. Then, with enough of them, you could build your own arduino-based “cube-a-tron”!


What about color (or, I guess "colour", since you're in Oz ;)) correction?

One of the biggest hassles many of us have encountered with RGB LEDs is that the intensity of the 3 emitters doesn't match the spectral sensitivity of the eye. Which means that the RGB values that work well on a computer screen look like bleep (or, at least, "wrong") when used with LEDs. You have to scale them in software, or twiddle the limiting resistor values, to get acceptable results.

Do your LEDs include that fix?

The other big question is whether the clock and data lines are "repeated" from one module to the next, or all in parallel. I.e., if I wanted a string of dozens of them, would I find the Arduino overloaded by trying to drive many feet of wire, with lots of receivers? Or does it just drive the first module, which echos the signals to the next one?


could this be done with bit banging? i dont want to use a ISR like your example sketch because i have one running which is doing audio, and other ISRs cause clicks and whatnot. it would not have to update very fast. and there would only be 4 of the LEDs

The clock and data could be quite irregular if other things are going on.

these look great....im in for a try!

Ran: The color matching is up to you - these aren’t really designed to match PC screen color gamut. The secret would be to adjust any RGB value before using it for the LEDs.

The clock and data lines are repeated from each module to the next, so there is no load on your Arduino.

DeFex: Good question.
The smallest LEDs do not require the clock line to be continually run after data is clocked in, so you can bitbang those. The other types of modules will require a clock coming from your arduino, along the lines of my example code.

Cool a+

Awesome, these look like the "Asian LED Nodes" as experimented with on all the DIY Christmas forums the past few months...well known names like "mrpackethead" doing lots of tests and building driver hardware. Bunch of companies on Alibaba (LEDWalker, RightLED, etc) shipping these things...it's going to be pretty crazy in the next year or so, good to have people testing different types that are available. LEDWalker has a DMX pixel chip I've been looking into.

Yeah, these use the same controller chip by the looks of it. They are by no means new though, I first saw them in 2008. The coolest thing about them is they are pretty much plug and play, so for a big array eg 500 LED coffee table or something, you can have it running in next to no time.

Sweet looking stuff, just ordered a few.

Can't wait to see them in action.

I now see "the strip" available. This looks like the SMD strip someone hacked recently (headband is the demo I saw).

Nice to see it somewhere that says "arduino library" on the same page. Hoping this works with the same library.

I did not see that yesterday and had to try it out, so I just ordered a demo strip and some smaller LEDs (along with the 20mm's yesterday).

I'll report back to the forum on how well they work.

If anyone else has used these, I'd be interested in know how your experience in using them went (i.e. colors matched, program worked, etc). The demos and specs sure look good.

Here is a nice “linear plasma” if you get a sting of the lights it could be nice for xmas lights or something, i just made it while testing a string of the 10mm i recieved.

use the example code from bliptronics. (some could be removed, but for now i jsut added some variables and replaced the main loop)

add these variables at the beginning:

int R;
int G;
int B;
int DelTime =30;
int LiveR;
int LiveG;
int LiveB;
int LiveDelTime = 20;
int StartPlace = 0;
int LiveStartPlace = 15;

replace the main loop with:

void loop() {
  if (LiveR > R) LiveR--;
  if (LiveR < R) LiveR++;
  if (LiveR == R) R = random (0,31);
  if (LiveG > G) LiveG--;
  if (LiveG < G) LiveG++;
  if (LiveG == G) G = random (0,31);
  if (LiveB > B) LiveB--;
  if (LiveB < B) LiveB++;
  if (LiveB == B) B = random (0,31);
   if (LiveDelTime > DelTime) LiveDelTime --;
   if (LiveDelTime < DelTime) LiveDelTime ++;
   if (LiveDelTime == DelTime) DelTime = random(17,35);
   if (LiveStartPlace > StartPlace) LiveStartPlace --;
   if (LiveStartPlace < StartPlace) LiveStartPlace ++;
   if (LiveStartPlace == StartPlace) {StartPlace = random(0,(NoOfLEDs-1));}
    for (int i = 30; i > LiveStartPlace; i --){
    Display[i + 1] = Display[i];}  
    for (int i = 0; i < LiveStartPlace; i ++){
    Display[i - 1] = Display[i];}    

and i have a question:

if i cut a string of the lights does the first LED of the new string become LED0 automatically? or does it have to count from what number it was before it was cut?