Gross Planning

Our idea is a futuristic version of a beaded curtain, using vertical strands of LEDs. Hung from a rod, it might fill a doorway or act as a room divider. In order to be similarly functional — allowing a person (or the random cat) to walk through — there are some physical constraints on the design. Free-hanging strands like this requires they have connections only at the top; bottom connections or zig-zag wiring would snag passers-by.

Planning this out requires some simple “napkin calculations”…

A typical interior door measures about 30 inches wide by 80 inches tall (76 cm x 2 m), so we’ll aim for something close to that.

Goal: vertical LED strands to fill a 30 by 80 inch doorway, connections at top only.

Then there are technical factors to consider. A single Fadecandy board is designed to control up to 512 pixels: 8 strands of 64 pixels each, maximum. With our data connections all residing at the top of the curtain, this sets an upper limit to the number of LEDs we can hang vertically: 64.

We’d like to use flexible NeoPixel strips, they’re amazingly handy. These are sold in various pixel “densities”: 30, 60 or 144 LEDs per meter.

Given some of our constraints…the 64 pixel limit and the 2 meter door height…we can quickly determine the higher densities won’t work for this application. So…

Established: we’ll use 30 LED/meter NeoPixel strips.
The door’s about 2 meters tall, and NeoPixel strips are sold in 1-meter increments (5 meters on a reel). So…

Established: each vertical strip will be 2 meters long, containing 60 pixels.

This is quite convenient, it avoids lots of little fractional bits of strip. At worst a few strips will require joining two 1-meter sections. The 2m length comes close to using the full 64 pixel capability of the Fadecandy board. (This 64 pixel limit only applies because of our “single connection at the top” constraint. If you’re building something to hang on a wall, connections can be made anywhere, and much larger and more freeform layouts become possible.)

At 30 LEDs/meter, there’s about 33 millimeters spacing between pixels down the strip. To create a pleasing and proportional grid arrangement, we should try to match that spacing (or come close) on the horizontal axis. 76 cm door width (760 mm) ÷ 33 mm spacing = 23 strips.

Add one to avoid a fencepost error. 24 strips total. This is perfect! Each Fadecandy board can control up to 8 strips in parallel. 8 × 3 = 24. And the X/Y grid spacing will be very nearly uniform.

Established: there will be 24 vertical strips, 2 meters each (48 meters total), controlled by 3 Fadecandy boards. Math!

So the finished curtain will be comprised of 48 meters of NeoPixels. There’s one more number to determine, and it can’t be derived from simple math: what’s your tolerance for risk? How much, if any, spare strip should be ordered? And how much can you really budget for?

Accidents happen.


Sometimes wires get crossed, NeoPixels get fried. Occasionally a reel escapes the factory with a bad pixel or two. Defective strips can be replaced…but can you afford the downtime? Should you have some spare materials on hand, ready to swap out? Scratch monkeys?
Since the 30 LED/m strip comes on 5-meter reels, I started with 50 meters total (10 reels)…leaving just enough for one spare 2m strip. If a strip in my curtain should fail, an extra is immediately on-hand to replace it…but that’s it, just the one. That’s cutting it close. Though I’ve always had good luck on NeoPixel projects, my personal safety buffer would perfer two extra reels…a 25% surplus…and maybe even a spare Fadecandy board. Your personal buffer might be different, and there’s no hard number that I can provide here. Stuff costs money, and it’s uncomfortable looking at idle backup hardware just sitting on a shelf. Find your personal balance zone between cost and readiness.
This guide was first published on Aug 11, 2014. It was last updated on Aug 11, 2014. This page (Gross Planning) was last updated on May 04, 2015.