Category: NeoPixel

A Quick Test for Crappy WS2812B Neopixels

TLDR; If you see ink flooding around the die when you touch a Sharpie to the face of a Neopixel, you should probably throw away the batch. Disturbing video example after the jump. 

DSC_1614.JPG

I recently found a huge lot of WS2812B Neopixels on Alibaba for $3/meter, which is about 1/2 the going rate in China and about 1/8th the price for similarly spec’ed strips on Adafruit. So I bought a lot (both meanings) of them. A NeoPixel is a NeoPixel, right? How bad could these NeoPixels be? Very bad, it turns out…

Continue reading

DSC_1395 (400x267)

Bigger is better: Build an Arduino-powered monster scrolling LED sign for about $15 a foot

DSC_1381

Would you do with a massive full color animated LED display? How about…

  • Read your Tweets in giant 140 char gulps from a block away
  • Add English sub-titles to the Eiffel Tower
  • Display a live-updating, 45 digit long countdown of the number of atoms left in the known universe

What if you could build the display however long you needed it, for only about $15/foot?

What if it was really easy to build and used everyone’s favorite low cost micro-controller so you could easily change the software to do whatever you wanted?

Well you can! Read on for details and perfunctory video!

Continue reading

multibitbangpoc_bb (400x392)

Parallel Processing Arduino Style – Make Massive NeoPixel Displays With Nanoscale Concurrent Computing

We’ve already seen that it is possible to drive thousands of WS2812B NeoPixels with a lowly Arduino using careful bit-banging. But what if we could bang out 8 bits at a time rather than sending them single file? Could it be possible to drive 8 times as many strings (or get 8 times the refresh rate) from our Arduino by processing bits in parallel? It would be like having a tiny pipelined GPU render engine inside our Arduino!

Read on to find out the results of a quick proof-of-concept test!….

Continue reading

2016-03-31 11.20.43 (400x300)

What is the best way to mount LED strips on polycarbonate panels?

Polycarbonate panels are cheap, strong, light, durable, and easy to buy. They are perfect for constructing large scale LED strip installations. But what is the best way to secure your LED strips to the panels? I’ve done a lot of testing to find out, and the most reliable method turns out to also be one of the cheapest and easiest…

Continue reading

image.png

Inside Neouart – Tricking a serial port into being a signal generator

Last time, we connected a NeoPixel directly to a RaspberryPi. This is certainly fun and useful, but the real motivation behind this project was to explore clever ways to make use of limited hardware resources. NeoPixels need a precisely timed string of bits to be happy. Luckily, every RaspPi comes with built-in hardware for generating strings of precisely timed bits – a serial port!

If all you care about is making pretty colors the easy way, don’t bother reading this article. If you are wondering how it is possible to reliably generate a pulse train with +/-150ns precision on a Raspberry Pi pin without kernel mods or DMA, then read on!

Continue reading

DSC_0049

NeoPixels Revealed: Warping time and space to actually see inter-pixel jitter

This is Part 5 in a series. Read Part 1 here.

 

In the PWM article, we discovered that each NeoPixel has a clock that free-runs at about 500Hrz and each pixel will only update its displayed color at the end of a clock cycle. This means that there should be about 2ms of jitter when updating a pixel, which absolutely limits the maximum refresh rate.

This sounds good in theory, but how can we actually see something that happens over the course of 1-2ms?

 

Continue reading