LED Cube 8x8x8

 by chr
Contest WinnerFeatured
IMG_6445.JPG
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

IMG_6413.JPG
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 1926Next »
pufonel says: May 22, 2013. 2:09 PM
Hi, I created this 3D cube and I have a question,where to run and where to send files to the cube via RS232 commands files effects "PC software"?how can I make an executable file in windows?
Thanks
Dreaded Boss says: May 22, 2013. 12:41 PM
This is a great instructable. I finally found the time to finish mine. Works perfectly.Thank you chr.
IMG_20130522_153320.jpg
arighi1 says: Apr 8, 2012. 2:56 PM
(removed by author or community request)
gokhank in reply to arighi1Apr 10, 2012. 12:01 AM
hepsi bu şemaların ben bu şemadan yaptım.instructables ve chr teşekkürler
say��c�� kart.pngana kart.png
omid-el in reply to gokhankMay 22, 2013. 12:17 AM
teşekkürler kardeş.
rafjr00 says: May 21, 2013. 6:55 PM
Anyone know what is wrong with the sch files, just downloads a tmp file?
Thanks
DaveHolds says: May 19, 2013. 7:31 PM
I would love to buy one of the pcbs if yiu have any left.
Also I am unable to read schematics... is there any way I can get it changed so I can understand it?
cheers.Dave
turbatu.andrei says: May 19, 2013. 9:13 AM
hello,

I just finished putting all the parts together and hooked up the cube to an atmega328 and something seems to be off. when I upload the sketch all the led's light up and they stay lit and nothing else happens. did anyone else stumble upon this problem?
Mrjungleman says: May 14, 2013. 9:46 AM
can anyone tell me where to find the c files for the cube ?
please mail me Dwegke001@gmail.com
Geekaton says: May 13, 2013. 4:19 AM
good quality time lapse video of me making an 8x8x8 led cube with these instructables:
http://www.youtube.com/watch?v=gTZJOy70rrc

Let me know what u think!
Geekaton in reply to GeekatonMay 14, 2013. 8:27 AM
any thoughts?
domdomgin says: May 14, 2013. 2:01 AM
whats wrong with the circuit..
ThePast says: May 13, 2013. 7:07 PM
Hi everyone, i have aready finished led cube 8x8x8 with these instructable but it not work. I'm very disappointed... I don't know where it is wrong... :(
Could you give me this project (sch files, layout files, source code, ...)?. I want to make this project again.. It's really difficult for me.. Please please help me..
Thank you so much...
Mahmoud Basho says: May 13, 2013. 8:08 AM
Hii..that's interesting....can I play any word motion in this cubic?
Thanks
jenkycents says: Apr 30, 2012. 1:48 AM
good work ;)
could you please send me the hex file of this effect ?
I'm not good at math
jwestenberg in reply to jenkycentsApr 30, 2012. 3:03 AM
You can download the hex files from step 48 and 64.
jenkycents in reply to jwestenbergApr 30, 2012. 4:16 AM
ok i found the effects thanks .

But now I can not compile the hex file.

i have only the c files
jwestenberg in reply to jenkycentsMay 1, 2012. 12:05 AM
You have to download winavr. After you have downloaded and installed you can open and compile the files in the programmers notepad.

It ain't that hard to figure out.
jenkycents in reply to jwestenbergMay 1, 2012. 3:50 AM
how can I do to make the effects of the "PC Software" without a PC?
bpark1000 in reply to jenkycentsMay 12, 2013. 12:34 PM
Contrary to what jwestenberg says, you can! And easily! Keep in mind that all those "complicated" functions such as sin, cos, etc. need only need be "calculated" in low resolution (+/- 1/8) for a cube such as this. You can do this with lookup tables. Simplest angle unit to choose is 1/256th of a revolution per count, held in a byte. 256 bytes of table do for both sin and cos functions. The "problem" is that "nowdays" everyone programs in C, and tables can be done, but somewhat awkwardly, and the code runs slow! The way I would do this is in assembly. I have done this not for a cube, but for an X/Y laser projector, where my "cube" is 256 x 256 x 256. The worst limitation on Atmel processor is not having a lot of RAM (I have 32K of RAM in my system, 8-bit, 6MHz 65816 processor). 100% of code is in assembly, about 4K of code, and 600K of tables (512 K are for unsigned and signed multiply, which my processor doesn't have). Speed is fast enough unless you want to "stack" functions, such as morphing between 2 rotating objects. The other difficulty with Atmel processor is the Harvard architecture which makes writing assembly more difficult. I would choose a register-based Von Newman processor such as 65816 (RAM and ROM are external) , 6808 (RAM small), TI430 (but there is a voltage problem with that one). Now I would use a Renesas M32C/87 (>32K RAM, many megs flash, 5V power bus, 32M machine cycle rate). I would have it working now but I find myself fighting with the way too fancy assembler "librarian".
jwestenberg in reply to jenkycentsMay 1, 2012. 4:41 AM
You can't
jenkycents in reply to jwestenbergMay 1, 2012. 5:11 AM
so how i can execute the software ?
jwestenberg in reply to jenkycentsMay 1, 2012. 6:25 AM
You can only do this on a linux operating system since no one ever got this working in Windows.
So you need to unpack the file open the folder in terminal window and type "make" .
This makes an executable file for linux.
After that you have to type ' sudo ./cube' to execute the file you just made.
jenkycents in reply to jwestenbergJun 21, 2008. 9:21 PM
ok thanks ;)
jenkycents in reply to jwestenbergApr 30, 2012. 3:37 AM
i'm looking for the wave , the ripples and the fire works effect hex . i dont found it :(
ristdaro in reply to jenkycentsMay 7, 2012. 6:29 AM
Compile the following attached file, Thanks to triumphtotty for the code. It gives you all the waves and ripple effects running directly from the ATMEGA32

ristdaro in reply to ristdaroMay 7, 2012. 6:30 AM
Sorry didn't work the fist attempt

Here is the file again.
jenkycents in reply to ristdaroMay 7, 2012. 5:23 PM
works perfectly and has other effects! o.o
ristdaro in reply to jenkycentsMay 7, 2012. 12:15 PM
Triumphtotty posted the code a while back. If you read through the earlier messages he explains how you can amend the code to create your own variations. You will probably want to change the text from my initials "RR" to your own for instance.
Open Launch_effect.c in programmers notepad and amend case 20. You will see "RR and "LED CUBE"

If you read Triumphs messages he explains how to change some of the more interesting effects.

Have fun
jenkycents in reply to ristdaroMay 7, 2012. 4:38 PM
thanks so much ;)
jenkycents in reply to jenkycentsApr 30, 2012. 2:10 AM
the effect 1,2,3 and 4 . thanks
dpopov5 says: May 11, 2013. 11:42 AM
Can u hang it from the ceiling ?
espongy says: May 11, 2013. 10:52 AM
What are the components that were not used because of the Arduino? i.e. crystal
rrussis82 says: May 10, 2013. 9:58 PM
Triump, I have read about MSGEQ7 chips to make things respond to music, is there any way to incorporate that into these boards or at least into an Arduino to make this cube respond to music, maybe using a mode selector button to change from the programmed loop to a mode that listens to music and makes the cube into a spectrum analyzer? I am just learning, or trying to learn, programming. some other sites I've visited to research this shows using an ATMEGA 8 as a slave to the ATMEGA32 and with the MSGEQ7 to the ATMEGA8. could that work with this circuit and how?
SuperTech-IT says: May 9, 2013. 11:46 PM
For anyone that is following my build, I decided that all the drivers are going to be on one board, so that it will be easier to connect any other micro-controller to it (Atmel, Arduino, TI, whatever). This is the current layout (un-wired, but it's all planned out [I think] ).
CIMG1685.JPG
skadoosh619 says: Aug 5, 2012. 4:57 AM
Do we ever need to glow 512 leds at the same time, which takes almost 5amps.
SuperTech-IT in reply to skadoosh619May 9, 2013. 11:38 PM
No. Although it's technically possible with this circuit, with the program it's using 64 at a time is the max.
kcbaltz says: Jan 14, 2011. 2:46 PM
Just a thought for getting the LEDs to come out nicely. Think garlic press cleaner:

Using the board with the holes already drilled as a drill guide (the soldering jig board), you could drill into a second board below but not all the way through. This will be the "cleaning board". Then, find a wooden dowel with a slightly smaller diameter and cut lengths equal to (thickness of board with through holes + depth of non-through holes in the other board) and place these dowels in the hole. Then, when you're done soldering, align the solder jig board over the "cleaning board" and press down to poke out all the LEDs at once.
markbanang in reply to kcbaltzJan 24, 2011. 4:02 PM
It might be quicker to make a jig using a pair of thinner bits of wood, with the top layer about the thickness of about half to three quarters of the depth of your LEDs.To make the jig, clamp them together and drill into both bits. When you're done, remove the clamp and you have a two part jig.

Then, make up the layer just as described, using both halved of the jig to hold the LEDs. When you are done, separate the two halves, popping the bottom layer off first. Then put the upper layer on a flat surface and push evenly across the board to pop the LEDs out of their holes.

Let the LEDs be their own dowels. *8')
SuperTech-IT in reply to markbanangMay 9, 2013. 11:35 PM
I made a jig out of cardboard (found a screwdriver the exact size to poke the holes). Then after you just push up on the LEDs from below.
CIMG1632.JPGCIMG1631.JPGCIMG1633.JPG
1-40 of 1926Next »
Pro

Get More Out of Instructables

Already have an Account?

close

PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!