You would think that there’s nothing to know about RGB LEDs: just buy a (strip of) WS2812s with integrated 24-bit RGB drivers and start shuffling in your data. If you just want to make some shinies, and you don’t care about any sort of accurate color reproduction or consistent brightness, you’re all set.
But if you want to display video, encode data in colors, or just make some pretty art, you might want to think a little bit harder about those RGB values that you’re pushing down the wires. Any LED responds (almost) linearly to pulse-width modulation (PWM), putting out twice as much light when it’s on for twice as long, but the human eye is dramatically nonlinear. You might already know this from the one-LED case, but are you doing it right when you combine red, green, and blue?
It turns out that even getting a color-fade “right” is very tricky. Surprisingly, there’s been new science done on color perception in the last twenty years, even though both eyes and colors have been around approximately forever. In this shorty, I’ll work through just enough to get things 95% right: making yellows, magentas, and cyans about as bright as reds, greens, and blues. In the end, I’ll provide pointers to getting the last 5% right if you really want to geek out. If you’re ready to take your RGB blinkies to the next level, read on!
If you like LED clocks and illuminated bicycle wheels, [Harald Coeleveld] has just the right weekend project for you. His RGB pixel LED clock is as simple as it is beautiful, and it can be built in no time: The minimalist and sporty design consist of not much more than a LED strip wrapped around a bicycle wheel rim.
[Harald] took 2 meters of addressable WS2812 LED strip (with 30 LEDs per meter, we assume), wrapped it around a 27″ bicycle rim padded with a foam strip, and obtained 60 equally spaced RGB LEDs on a ring, ideal for displaying time. Apparently, the rim-tape circumference of this particular 27″ bicycle wheel is close enough to 2 meters, so it lines up perfectly.
On the electronics side, the project employs an Arduino Nano and a DS3231 precision RTC module. For switching between two illumination modes for day and night, [Harald] also added a photoresistor. During the day, colored dots around the ring display the time: A red dot for the seconds, a blue one for the minutes, and a group of 3 green LEDs for the hours. At night, the entire ring shimmers with an effective red glow for easier readability.
The Arduino code for this build can be downloaded from the project page, enabling anyone to effortlessly replicate this design-hack in under an hour!
Sequencers allow you to compose a melody just by drawing the notes onto a 2D grid, virtually turning anyone with a moderate feel for pitch and rhythm into an electronic music producer. For [Yuvi Gerstein’s] large-scale grid MIDI sequencer GRIDI makes music making even more accessible.
Instead of buttons, GRIDI uses balls to set the notes. Once they’re placed in one of the dents in the large board, they will play a note the next time the cursor bar passes by. 256 RGB LEDs in the 16 x 16 ball grid array illuminate the balls in a certain color depending on the instrument assigned to them: Drum sounds are blue, bass is orange and melodies are purple.
Underneath the 2.80 x 1.65 meters (9.2 x 4.5 foot) CNC machined, sanded and color coated surface of the GRIDI, an Arduino Uno controls all the WS2812 LEDs and reads back the switches that are used to detect the balls. A host computer running Max/MSP synthesizes the ensemble. The result is the impressive, interactive, musical art installation you’re about to see in the following video. What better tune to try out first than that of Billie Jean whose lighted sidewalk made such an impression on the original music video.
Mathematicians. If you let them use the concept of infinity, there’s almost nothing they won’t be able to prove. Case in point: the Turing machine. The idea is that with an infinite length of tape, one could build a thought-experiment machine with only a few instructions that should be able to compute anything that’s computable.
[Igor]’s Turing machine is one of the nicest we’ve ever seen built. The “tape” is significantly shorter than infinity, which limits the computations he can achieve, the use of 3D printing, electric contacts, and WS2812 RGB LEDs for the tape are profoundly satisfying.
A bit on the tape is portrayed as unused if the LED is off, zero if it is red, and one if it is green. Each station on the tape is indexed by a set of blue LEDs observed by the gantry of the writing head which uses a 3D printed finger and motor to change the state of each bit. Programs are stored on a home-built punch card, which gets extra geek points from us.
Watch it run through “busy beaver” (embedded below) and tell us that it’s not awesome, even if it is a couple of LEDs short of infinity.
[burgerga] loves attending Music Festivals. He’s also a MechE who loves his LED’s. He figured he needed to put it all together and do something insane, so he build a huge, 15″ geodesic sphere containing 540 WS2812B addressable LED’s. He calls it the SOL CRUSHER. It sips 150W when all LED’s are at full intensity, making it very, very, bright.
As with most WS2812B based projects, this one too is fairly straightforward, electrically. It’s controlled by four Teensy 3.2 boards mounted on Octo WS2811 adapter boards. Four 10,000 mAh 22.2V LiPo batteries provide power, which is routed through a 5V, 30Amp heatsinked DC-DC converter. To protect his LiPo batteries from over discharge, he built four voltage monitoring modules. Each had a TC54 voltage detector and an N-channel MOSFET which switches off the LiPo before its voltage dips below 3V. He bundled in a fuse and an indicator, and put each one in a neat 3D printed enclosure.
The mechanical design is pretty polished. Each of the 180 basic modules is a triangular PCB with three WS2812B’s, filter capacitors, and heavy copper pours for power connections. The PCB’s are assembled in panels of six and five units each, which are then put together in two hemispheres to form the whole sphere. His first round of six prototypes set him back as he made a mistake in the LED footprint. But it still let him check out the assembly and power connections. For mechanical support, he designed an internal skeleton that could be 3D printed. There’s a mounting frame for each of the PCB panels and a two piece central sphere. Fibreglass rods connect the central sphere to each of the PCB panels. This lets the whole assembly be split in to two halves easily.
It took him over six months and lots of cash to complete the project. But the assembly is all done now and electrically tested. Next up, he’s working on software to add animations. He’s received suggestions to add sensors such as microphones and accelerometers via comments on Reddit. If you’d like to help him by contributing animation suggestions, he’s setup a Readme document on Dropbox, and a Submission form. Checkout the SolCrusher website for more information.
Thanks [Vinny Cordeiro], for letting us know about this build.
What makes the WS2812-style individually addressable pixel LEDs so inviting? Their rich colors? Nope, you can get RGB LEDs anywhere. Their form factor? Nope. Even surface-mount RGBs are plentiful and cheap. The answer: it’s the integrated controller. It’s just so handy to speak an SPI-like protocol to your LEDs — it separates the power supply from the data, and you can chain them to your heart’s desire. Combine this controller and the LEDs together in a single package and you’ve got a runaway product success.
But before the WS2812, there was the WS2811 — a standalone RGB controller IC. With the WS2812s on the market, nobody wants the lowly WS2811’s anymore. Nobody except [Michael Krumpus], that is. You see, he likes the old-school glow of incandescent, but likes the way the WS2812 strings are easy to drive and extend. So he bought a bag of WS2811s and put the two together.
The controller IC can’t handle the current that an incandescent bulb requires, so he added a MOSFET to do the heavy lifting. After linking a few of these units together, he discovered (as one does with the LED-based WS2812s eventually) that the switching transients can pull down the power lines, so there is a beefy capacitor accompanying each bulb.
He wanted each bulb to be independently addressable, so he only used the blue line of the RGB controller, which leaves two outputs empty. I’m sure you can figure out something to do with them.
Needless to say, we’ve seen a lot of WS2812 hacks here. It’s hard to pick a favorite. [Mike] of “mike’s electric stuff” fame built what may be the largest installation we’ve seen, and this hack that effectively projection-maps onto a randomly placed string of WS2812s is pretty cool. But honestly, no project that blinks or glows can go far wrong, right?