After building an 8x8x8 LED cube and spending days soldering, I wondered if I could just use digital LED strands to make one and skip all the soldering. It worked, and this project shows one way to make a 5x5x5 Digital RGB LED Cube with no soldering!
It uses strands of WS2811 digital RGB LEDs, and they are strung between two plates of clear plastic sheet. The 125 LEDs are all connected in row, and can be driven by an IR remote designed for those LEDs, or by an Arduino. This can be scaled up easily - with higher LED counts, you may need an Arduino with more RAM like an Arduino Mega.
I ended up using clear plastic on the top and bottom, and had a second wood bottom a couple inches below the plastic bottom with the idea that I would put the power supply and Arduino in there.
Step 1: Parts
These are the parts I used, and some possible sources for them:
- Plastic top and bottom 12" x 12" - I used clear Polycarbonate to avoid cracking while I was drilling the holes, but a laser cut version (file is in that step) using Acrylic is probably fine. You may also be able to drill Acrylic if you are careful. I looked at 3/16" and 1/4" thick plastic, and decided the 1/4" would flex less since it's supported at the corners, and there is some tension on each column.
- A base of wood or plastic if you do three layers. I used some 1/8" plywood. Also 12" x 12".
- Threaded rod to hold the plates apart. I used two 36" #8-32 threaded rods, and it seemed just strong enough to hold the plates apart without being too intrusive. I would not use smaller diameter rods, but larger ones would probably work fine.
- #8-32 nuts(8 per layer), washers(8 per layer), and split lock washers (4 per layer).
- LEDs - WS2811 strands. See the notes on the LED step. There is no standard on the connectors, so I had to change them on one strand. The easiest to use are ones that have three wire connectors (+5, Gnd, and Data), as opposed to two wire connectors that only carry the Data and Ground. The three wire ones allow you to simply connect the strands together end to end. The other thing to look out for is having the same gender connectors on each strand, which should be fine if you order them all from one place. The IR controller I tried had a three pin plug on it so the easy strands had a three pin socket on the input and a three pin plug on the output side. You could also use WS2801 strands with the Arduino, but the controller I used only works with WS2811 strands.
- zip ties - black 4" ones. You need about as many as you have LEDs. Not all the LEDs need one, but some will need to be re-done, so a few extra is a good idea.
- Twist ties - I used a spool of garden twist ties. I used green ones, but black might be good. Wire (copper etc.) would be good too.
- IR controller or an Arduino Uno + connectors (see the control step for details)
- A 5v wall adapter - I had a 10 amp one, which is probably bigger than needed for 125 LEDs, which together have a theoretical max current of 7.5 amps (see the LED step).
Step 2: The Frame
The below instructions are mostly assuming you will drill the top and bottom plastic sheets by hand. The attached DXF file shows how the holes are arranged, and if you have access to a laser cutter, you can also use that to cut the holes.
The #8-32 threaded rods came in 36" lengths, so I used 2 rods and cut them in half to make (4) 18" rods. I filed the the ends to remove any burrs and and allow the nuts to thread on easily. You may need to use a #8-32 die to re-thread the ends if they are too damaged to thread the nuts on.
For the corners, we need one hole in each corner - a 5/16 inch bit was the right size for the #8-32 rods. These holes were about 1/4" from the edges.
For each column, I drilled two holes at each point so the twist tie could go up and back through the plastic. I used the same 5/16" bit, but the size is not critical as long as a twist tie fits through. So, these pairs of holes were at 1", 3.5", 6", 8.5", and 11". They are 2.5" apart since the LED spacing on the strands is just over 2.5" and we are trying to make the rows and columns evenly spaced.
Drill the top and bottom together so the holes line up. I taped them together. Mark them on the edge so you can put them together later on - I used a sharpie on one side and did a single mark and a double mark separated by a couple inches.
To connect the rods to the layers, I used the following sequence of hardware: a top nut, lock washer, flat washer, the plastic, flat washer, nut - mounted to rod at the top of the nut - a hair lower so it does not stick out. See the pictures for details. The two nuts (+ washers) are tightened against each other to hold the plastic and wood layers apart.
Step 3: The LEDs
Note: I ordered LED strands from a couple different sources, and they did not all have the same connectors. So, I had to solder different connectors on one string. Once that was set, they all plugged in to each other.
For 125 LEDs, they can probably be wired together with power only coming in from one end. Each LED can draw 60ma when on full white, so for 125 LEDs, there could be as much as 7.5 amps. The strands have 20 gauge wire, so this is OK, and there does not seem to be too much voltage drop making the end LEDs dimmer. If you used more LEDs, you would want multiple power supplies or use power injection to add power from the power supply in a few places.
See the pictures for a better visual on the next steps.
I zip tied the LEDs to the LED wire to make them point up. Otherwise they tend to be in all kids of orientations. Since the strand loops around all the LEDs in a row, I reversed the direction for up and down LEDs. The top LEDs did not need a zip tie since they were being twist tied to the top anyway.
I used twist ties for the top and bottom, pulling each column tight, but not too tight. You could also use wire - I considered copper wire. I also tried zip ties on a couple, and the twist ties seemed easier. For the twist ties, I looped them up and back and twisted them together near the LEDs. It's a bit harder than twisting them at the top and bottom, but looks neater.
After doing a lot of these, I found that it's easier to first zip tie a full strand, and add twist ties to the strand - leaving extra and cut off once tied.
Step 4: Control
I tried two ways to control the LEDs:
The first was a nice compact WS2811 controller with an IR remote control. This was very easy and looked great. It has 64 patterns, and some patterns work better than others. This controller was very easy to connect sine I had the three wires connectors on the strands already.
The second approach used an Arduino Uno, and a program adapted from the 8x8x8 cube I made from a kit. To connect the Arduino, make a wire connector (see the pictures), and then you can program exactly what patterns you want. I have attached the program adapted from the 8x8x8 cube I made from a kit, and I think that kit cam from an older Instructable - Thanks! The blue video on the first step shows the Arduino version.
The GitHub repository for this code is at https://github.com/carl-tt/no-soldering-led-cube
For the strands I had, the wire colors were:
- Red: +5
- Green: Data
- White: GroundEasy
Step 5: Previous Attempts
Every project goes through a lot of trial and error - some pictures are attached showing previous versions.