Fork this with Git

8x8x8 LED Cube

AVR LED Cube with Java Software and Music Visualization
Project started on October 27, 2011.
Last updated on April 03, 2016.

Recent activity on GitHub:

Get the current Codebase as Zip.

Youtube Link

My friends Max (hutattedonmyarm@me.com) and Felix built this single-color 8x8x8 LED Cube with me. On this page, you can get the Software as well as Schematics and the PCB Layout licensed under the GPLv3. Have fun!

Prototype Cube PCB Soldering

Hardware

An AtMega32 controls 8 8bit Latches. These 64 bits control, via a PNP Transistor, the anodes of 8 LEDs, each.

There are also 8 N-Channel MOSFETs connected to the AtMega32. They each control the cathodes of 64 LEDs on a Y-Plane.

It can talk to a PC via USB with a FT232RL. A 1Mbit FRAM is accessed over TWI (or I2C).

There's also an AtMega8 which acts as a TWI Slave and sends audio data to the AtMega32. This data comes from a MSGEQ7.

An extensive part list can be found in the Github repository, in Hardware, called parts.txt.

Frank mailed me and explained that the FRAM is operating outside of it's absolute maximum ratings. It should get 3.3V, not 5V. I'll probably update the board and schematic, soon. It seems to work, regardless.

Kay also mailed me. It seems as if the FRAM used is no longer available, but FM24C04BG is a viable replacement part. It has the same pinout and package, and even supports 5V operation, so the problem Frank encountered has solved itself.

Prototype in Action PCB in Action

Software

The software is composed of 3 parts. The CubeFirmware for the AtMega32, the AudioFirmware for the AtMega8 and CubeControl, the PC software.

CubeFirmware

It's main work is to load images from the FRAM or the AtMega8 and display it. It also monitors the serial Port and reacts accordingly.

Voltage Regulator Mount Voltage Regulator Mount

AudioFirmware

It gets data from the MSGEQ7 and sends it via TWI.

CubeControl

Depends on Java3D. It renders a rotatable 3D View of the cube. You can then create animations, load and save them, and upload them to the Cube. It has it's own C Library for Windows and Unix to talk to the serial port.

Screenshot Schematic

Hardware Emulator

Allows you to test CubeControl without a real Cube. Unix only!

UploadTest

Small CLI tool to send testdata or stored animations from CubeControl. Unix only!

Download

Get the whole code, as well as schematics and the PCB layout as PNG and Eagle files, from the GitHub Repository.

PCB Final Cube

Frank built this Cube, slightly improved the code and made a Slow-Motion movie. You can see the Multiplexing very nice:

Youtube Link

Andrej built this cube and sent an X-Ray photograph that he made at his workplace, manufacturing the Eledus - SCIOX X-Ray inspection device. Thanks!

X-Ray photo