“This cube is easy to build with no circuit board and minimum external components; and it comes with a lot of animations and effects.
This is the third and final project in a series to see how much LED cube technology we can create using just an Arduino Mega, i.e. what can be accomplished using only the Mega itself without a PC board full of shift registers and LED drivers. Why do I want to avoid shift registers? Because they are absolutely horrible to hand wire. (I’ve tried it.) You really need to design and fabricate a PC board if you want to use them.
We would normally build an 8x8x8 cube by bringing 64 anodes down to the main board, where they would be configured by a bunch of shift registers. Then we would activate one of the eight layers in the cube and turn on the appropriate LEDs in that layer for about 1 ms. Then we would reload our shift registers and activate the next layer, etc. So to do an 8x8x8 cube the normal way, the minimum digital pin requirement would be 64 for the anodes and another 8 for the cathode/layer drivers. That’s 72 digital pins and not possible with the Mega without resorting to some tricks.
All three of my cube projects using the Mega are done without shift registers. We are relying strictly on the large number of pins available on the Mega. The trick in the case of this 8x8x8 is the somewhat whimsical approach of building our cube out of pairs of LEDs put in parallel but in opposite polarities. With voltage applied in one direction, one of the two LEDs is forward biased and lights up. With voltage applied in the other direction, the other LED is forward biased and it lights. Our refresh routine takes turns lighting up one and then the other. It happens fast enough that we see both on at the same time, if they are both programmed on.”