Picture of LED Cube 8x8x8
Create your own 8x8x8 LED Cube 3-dimensional display!

We believe this Instructable is the most comprehensive step-by-step guide to build an 8x8x8 LED Cube ever published on the intertubes. It will teach you everything from theory of operation, how to build the cube, to the inner workings of the software. We will take you through the software step by step, both the low level drivers/routines and how to create awesome animations. The software aspect of LED cubes is often overlooked, but a LED cube is only as awesome as the software it runs.

About halfway through the Instructable, you will actually have a fully functional LED cube. The remaining steps will show you how to create the software.

A video is worth a thousand words. I'll just leave it up to this video to convince you that this is the next project you will be building:

I made this LED cube together with my friend chiller. The build took about 4 days from small scale prototyping to completed cube. Then another couple of hours to debug some faulty transistors.

The software is probably another 4-5 days of work combined.

Remove these adsRemove these ads by Signing Up

Step 1: Skills required

Picture of Skills required
At first glance this project might seem like an overly complex and daunting task. However, we are dealing with digital electronics here, so everything is either on or off!

I've been doing electronics for a long time, and for years i struggled with analog circuits. The analog circuits failed over half the time even if i followed instructions. One resistor or capacitor with a slightly wrong value, and the circuit doesn't work.

About 4 years ago, I decided to give microcontrollers a try. This completely changed my relationship with electronics. I went from only being able to build simple analog circuits, to being able to build almost anything!

A digital circuit doesn't care if a resistor is 1k ohm or 2k ohm, as long as it can distinguish high from low. And believe me, this makes it A LOT easier to do electronics!

With that said, there are still some things you should know before venturing out and building this rather large project.

You should have an understanding of:
  • Basic electronics. (We would recommend against building this as your very first electronics project. But please read the Instructable. You'll still learn a lot!)
  • How to solder.
  • How to use a multimeter etc.
  • Writing code in C (optional. We provide a fully functional program, ready to go)
You should also have patience and a generous amount of free time.

1-40 of 2910Next »
KoussayS8 days ago
Guys plz i use atduino uno and i need thé code plz help me
Lukhman10 days ago

it is different from the board that you made. i found there are some large difference in the blue print and the completed pcb. i need your help urgently. can you give your any other contact details like skype.

Lukhman10 days ago

hello, i would like to make a cube. so i need your help. i had the items you have written above. but i cant understand anything from the blue print.

the_fbomb13 days ago

Hi guys, if you want the code for a 8x8x8 Led cube controlled by an Arduino mega 2560 and coupled with a IR detector you can check out that code:

It includes a complete library of letters and numbers! Feel free to use it and also improve it ;)

Please note that the pre-processor, and the effect functions are snippets, so thank Chr for that!

salar naser13 days ago

wowthank you boy

its best

T0BY15 days ago

Absolutely stunning! This will definitely be my next project!

tomxu16 days ago

it is fxxking cool! I will do it ! thanks!

MohammedZ417 days ago

can someone help me with my led cube when i try to test the leds more than led work it should be one one led working???

MohammedZ417 days ago

can someone help me with my led cube when i try to test the leds more than led work it should be one one led working???

shashankr117 days ago

i prefer building one myself

shashankr120 days ago

can anyone please post the link of how to build the power supply in step 12

You are better off just buying one from Jameco. They are not much more than $10.

Team10 made it!18 days ago

See the link for our infinity LED cube

Team1018 days ago
dvberger1 month ago

Love your work.

Something I'm not following is your LED calculation. Most blue 3mm led's that I see have a forward voltage of 3 or 3.4 volts. With a 5V supply, a 3.4 volt LED and a 100 ohm resistor, aren't we going to draw 16mA per LED [5-3.4=1.6/100=.016a]. You suggested you shouldn't go over 50/8 = 6.25 mA per LED. While 16mA stays beneath the 25mA of the latch chip, don't 8 of them give 128mA exceeding the 50mA ground sinking ability of the chip?

What am I missing? Is that a 4.4v LED-> 5-4.4/100 = 6.25mA??

Little help would be appreciated!



So many have asked this, and nobody reads the comments for the answer first.

This is why I created an entire step discussing this in my "revisited" instructable. Please read the page at

Okay, I've viewed your video and thought about it. I apologize for not having the practical electronics background -- my major was computer science which is basically math and systems back in the day. I see how your cube doesn't draw more than ~180mA for 64 leds activated at a time and how, I suppose if you divide that by 8 "driving" chips you're well under the maximum current per chip.

But, can you help me understand how I'd reconcile that with the math of a 5V circuit with 3.4V led & 100 ohm resistor. Are you saying each LED simply doesn't draw 16mA*8 per chip?

We aren't driving DC into the LEDs - we are sending short spikes of power to them. You'll notice that things like transistors for instance may have a much higher peak current than continuous rating. LEDs are the same, and so are most semi-conductors. So while we are measuring the continuous or average or "RMS" current, what we may be driving could theoretically be much higher, but since the time period is short, it's still well within the working parameters of the devices. In short, you cannot calculate the current draw in this circuit unless you completely take into account the frequency, and duty cycle (ON pulse width VS off pulse width) etc.

I think I see. After you account for how long LED's are lit up considering 1/8th duty cycle, a few instructions to run the program and the like, the sustained current draw winds up practically being quite a bit less on average over a period of time.

Just to check, we're not really worried about overloading a 3.4V led since there's a 100 ohm resistor guarding it but rather than 8 of them would overload the latch or shift register they were hooked up to -- which we're also saying practically speaking isn't really going to be a problem, right?

I'll have to do some thinking, but is the short answer that 6.25mA is more than sufficient to drive an 3.4V LED? I tried it tonight to see (stuck a 270 ohm) resistor in front of one and it lit, not as brightly as 100 ohm.

I'm presuming you'll make an argument that relative the amount of time an led is on, it's acceptable to sink more current into a chip than the math says you should?

Sorry if I didn't 100% follow your point.

Thanks -- I'll do some more reading. There's alot of "noise" on the site...

I'll circle back if it doesn't become obvious...

Have you used a zybo board before?
PianistosY27 days ago

Here is the 3D spectrum analyser that I made:



myadav827 days ago
Hey guys, I'm trying to use the arduino uno instead of the ATmega 32 controller, does anyone have codes for the animations for arduino? Pls post :)

Instead of soldering so many times with your arguably flawless technique :D somebody can also use a stripboard:

Or you could use one of my cube base boards coupled with my improved construction method at

I mean, is there any LED with a 25mm long legs? And for example, 40mm, and will look like a cube at a distance of 4 meters? not too seldom?

If you look at my links to cheap parts on my "revisited" instructable, or the link to the LEDs on my website, you will see that we use 28MM lead LEDs. This allows construction of a cube that fits the 26.5mm LED spacing quite perfectly (some length lost in bends)

eccoecco1 month ago

Hi, I'd like to recreate the cube but on a large scale and would just like to know if it's possible to string together christmas lights or perhaps made of layers with something like this:

If you build the right driving circuit (remember to use opto-couplers if using high voltage, such as triac output optocouplers tied to triacs if using 120V AC for the lights). It will be quite an undertaking, but possible.

Thanks for the reply. There's a hacklab here in Toronto that I'll take your suggestion to as i'll need it "translated". Thank you though.
Onurrr41 month ago

Hi , I'm a 17 year old high school student. Did your project , but I would be glad if you help 'and encountered an error . "Plane boing " effect on the horizontal burning at the same time passing 1-3-4-5-6-7-8 not as alone as 2 and 2, respectively . When voltage is Applied separately from the power supply to the sort order is burned separately. I would appreciate if you can help, thanks again .

make a video because I cannot understand what you mean.

use the power on self test from my arduino beta code in the revisited instructable

TEXHO1 month ago
Hello, from Russia! I have one question: I started made cub 8.8.8 and interval for 23-25mm it's very small, cub = 160.160.160 mm, how max intervals I must make do it? Led one to one that on your videos. Distance from man and cub ~ 4 meter. Thank you! Sorry for my English.

That's about the size of my cube. From that distance it should still look OK, but you can of course space them out as much as you want running stiff wire between them - but you may lose the effect if the spacing is too great.

DrewP41 month ago

Sorry for the basic question, but do you have to have both the USBtinyISP and the RS232 to program the cube, or would one of them work by itself? Thanks!

The RS232 is not used to program the chip - it's for letting the cube be controlled by a serial device such as a PC instead of running as a standalone device.

danieltos1 month ago

I have made an oddly shaped cube - 14 x 6 x 6 cathode layers. Is it correct that I need 12 multiplexers to run the 504 leds? Since there are 84 anodes + 6 cathodes (90 / 8 "multiplexer channels" = 11.25)

I guess I need two tc138 too then?

I am also wondering if I can use 74HC573 instead of 574?

Thanks for the help!

The math for the matrix on that is going to be strange to say the least, but you are going to need at least 11 demultiplexers assuming a parallel layer control which is what we use here...we don't use the demultiplexers to control the layers, so it's 84 outputs, not 90, and yes, using two 138's will make life easier - your MSB (most significant bit) will go into an active low enable on the first chip, and an active high on the other, with the 3 data bits going in parallel to both chips. As for the chips, one is level triggered, one is edge triggered. In this specific circuit, I don't think you would see a difference, but if you want to be sure, use the 574.

Anesa1 month ago

Hi, I have some problem with the cube's programming. I installed the driver and the usbtinyisp can communicate with the chip. But when I tried to set the cube, in the cmd i read something like "change ... 0i ... (y/n)". I writed "n" and from this moment, when I try to communicate to the Atmega 32, the cmd tell me "connection failed, rc=-1"

1-40 of 2910Next »