The WS2812 is an amazing piece of technology. 30 years ago, high brightness LEDs didn’t even exist yet. Now, you can score RGB LEDs that even take all the hard work out of controlling and addressing them! But as ever, we can do better.
Riffing on the ever popular Adafruit NeoPixel library, [Harm] created the WS2812FX library. The library has a whole laundry list of effects to run on your blinkenlights – from the exciting Hyper Sparkle to the calming Breathe inspired by Apple devices. The fantastic thing about this library is that it can greatly shorten development time of your garden-variety blinkables – hook up your WS2812s, pick your effect, and you’re done.
[Harm]’s gone and done the hard yards, porting this to a bevy of platforms – testing it on the Arduino Nano, Uno, Micro and ESP8266. As a proof of concept, they’ve also put together a great demonstration of the software – building some cute and stylish Christmas decorations from wood, aluminium, and hacked up Christmas light housings. Combining it with an ESP8266 & an app, the effects can be controlled from a smartphone over WiFi. The assembly video on YouTube shows the build process, using screws and nails to create an attractive frame using aluminium sheet.
This project is a great example of how libraries and modern hardware allow us to stand on the shoulders of giants. It’s quicker than ever to build amazingly capable projects with more LEDs than ever. Over the years we’ve seen plenty great WS2812 projects, like this sunrise alarm clock or this portable rave staff.
As always, blink hard, or go home. Video after the break.
Continue reading “More Blinky = More Better – The WS2812FX Library”




For starters, he got panels (as in PCB panels) of WS2812 boards from eBay. The advantage is it lets you choose your own pitch and strand length. The flip side is, you need to de-panel each board, mount it in a jig, and then solder three lengths of hook up wire to each LED. He planned for an eight sided star with ten LED’s each. And he built three of them. So the wiring was, substantial, to say the least. And he had to deal with silicone sealant that refused to cure and harden. But nothing that some grit and determination couldn’t fix.

Each digit is made using one pair of Neopixel rings, stacked to form a figure of eight. All the digits are composed of arcs, so readability isn’t the best but it’s not hard either. [rhoalt] does mention that the display is easier to read via blurred camera images rather than visually, which isn’t surprising. We’re long used to seeing numbers composed of straight line segments, so arc segmented digits do look weird. But we wouldn’t have known this if [rhoalt] hadn’t shown us, right ? Maybe a thicker diffuser with separator baffles may improve the readability.
There are 480 LEDs in his display, and he addresses them through TLC5927 shift registers. Synchronisation is provided by a Hall-effect sensor and magnet to detect the start of each rotation, and the Teensy adjusts its pixel rate based on that timing. He’s provided extremely comprehensive documentation with code and construction details in the GitHub repository, including 