59 lines
2.8 KiB
Markdown
59 lines
2.8 KiB
Markdown
# mini LED CUBE
|
|
|
|
A 3x3x3 LED cube, originally based on [Paul Wilhelms project][2] with USB and a
|
|
lot of new features. An AVR (attiny2313) with [V-USB][3] (software
|
|
USB stack) control a matrix of 3x3x3 LEDs which forms a 3D cube of LEDs. Every
|
|
LED in this cube can be controlled independently over a simple
|
|
protocol. Various tools (commandline-tool, 3D OpenGL editor) can be used to
|
|
create animation sequences or simply use the cube as an [XFD][4] device.
|
|
|
|
![pcb](/doc/readme_cover.png?raw=true)
|
|
|
|
|
|
## Building
|
|
|
|
The project consists of two parts: The LED cube and the controller PCB. Both parts can
|
|
be build completely separate but need to work together.
|
|
|
|
* The Cube is a little bit tricky to solder. To see which wire should be bend
|
|
and solder in which direction, use the [3D STL model][12] for reference. To
|
|
see more detail, install [OpenSCAD][13] and load the [threedvis.scad][14] file.
|
|
|
|
* For the PCB there is a [detailed instruction plan][11] available. The
|
|
instructions include soldering the parts, testing, flashing the firmware and
|
|
setting the fuse bits.
|
|
|
|
|
|
## Tools
|
|
|
|
* The [client lib][5] is a simple interface for other software
|
|
implementations. Have a look at the [demo.c][6] file how to include the lib
|
|
into your own project.
|
|
|
|
* A commandline client [clcc][9] can be used to control the cube interactively
|
|
over the commandline. Various commands can be send to the cube, see
|
|
[the sourcecode][10] for explanation.
|
|
|
|
* The [3D OpenGL Editor][7] is using the client lib mentioned above. The editor
|
|
shows a 3D representation of the LED cube and can be moved with the cursor
|
|
keys. All virtual LEDs can be clicked with the mouse to toggle it on or off.
|
|
|
|
* To use the cube as a XFD (show number of mails in INBOX, finished tickets today,
|
|
incoming phone call, number of missed chat messages in an IRC channel, ...)
|
|
you can use the [frame2cube.pl][8] script to send a complete frame to the cube.
|
|
|
|
|
|
[1]:http://www.cthn.de/projects/LEDCube
|
|
[2]:http://mosfetkiller.de/?s=miniledcube
|
|
[3]:http://www.obdev.at/products/vusb/index.html
|
|
[4]:https://www.google.de/search?q=extreme+feedback+device
|
|
[5]:https://github.com/okoyono/mini-led-cube/tree/master/client
|
|
[6]:https://github.com/okoyono/mini-led-cube/blob/master/client/demo.c
|
|
[7]:https://github.com/okoyono/mini-led-cube/tree/master/editor
|
|
[8]:https://github.com/okoyono/mini-led-cube/blob/master/tools/frame2cube.pl
|
|
[9]:https://github.com/okoyono/mini-led-cube/blob/master/client/clcc.c
|
|
[10]:https://github.com/okoyono/mini-led-cube/blob/master/client/clcc.c#L34-L44
|
|
[11]:https://github.com/okoyono/mini-led-cube/blob/master/doc/aufbauanleitung.txt
|
|
[12]:https://github.com/okoyono/mini-led-cube/blob/master/doc/threedvis/threedvis.stl
|
|
[13]:http://www.openscad.org/
|
|
[14]:https://github.com/okoyono/mini-led-cube/blob/master/doc/threedvis/threedvis.scad
|