Mini LED Cube (SMD-Version)
TL;DR:
Ein 3x3x3 LED-Cube, abgeleitet von Paul Wilhelms Projekt, erweitert um USB und einigen weiteren Features. Es wurde ein AVR ATTiny2313 mit V-USB (Software USB Stack) verwendet, mit dem eine Matrix aus 3x3x3 LEDs in Form eines Würfels angesteuert wird. Jede LED des Würfels kann unabhängig über ein einfaches Protokoll gesteuert werden. Mit Verschiedenen Tools (Commandline-Tool, 3D OpenGL Editor) können Animationssequenzen erstellt werden. Das Projekt ist als SMD Lötübung entstanden und als Bausatz in meinem Tindie-Shop erhältlich. Version 1 kann auf klautes Blog angesehen werden.
Initial wurde das Projekt im Rahmen eines Workshops entwickelt und gelötet. Da es so gut ankam, habe ich eine SMD-Version entwickelt und einen Bausatz erstellt. Jeder kann SMD-Bauteile löten, dies wollte ich mit diesem Bausatz beweisen. In mehreren Workshops habe ich dies unter Beweis gestellt.
Der Bausatz besteht aus zwei Teilen: Dem LED-Würfel und der Platine. Beides kann komplett unabhängig voneinander gebaut werden und eignet sich deshalb ideal für einen Workshop. So können auch zwei Personen an einem Bausatz arbeiten.
Würfel
Für den Würfel wird etwas Fingerspitzengefühl benötigt. Hier kann man seine Löt-Fähigkeiten auf die Probe stellen. Die Größe spielt dabei keine Rolle. Ich habe den Würfel mit 3mm, 5mm und 10mm LEDs gelötet. Um zu sehen wie die LEDs gebogen und in welcher Richtung sie angelötet werden müssen, gibt es ein 3D SDL Modell zur Orientierung. (Für eine detailliertere Ansicht lohnt es sich, OpenSCAD zu installieren und die threedviz.scad zu laden.) Das 3D-Model ist mit Hilfe von scad-clj in Clojure programmiert.
Die Platine
Die Platine ist mit einfachen SMD-Bauteilen bestückt (0805), so dass das Löten mit einem normalen Lötkolben ohne spezielle Spitze möglich ist. Zum Flashen der Firmware und zum Setzen der Fuse-Bits wird natürlich ein Programmer benötigt.
Für die Montage wurde ein 3D Modell entworfen, das mit einem 3D-Drucker ausgedruckt werden kann. In das Bracket
kann die Platine eingeklebt und mit Schrauben an einem Gehäuse oder einem anderen Untergrund befestigt werden.
Firmware und Tools
Die Firmware stammt von klaute. Er hat das unmögliche möglich gemacht und in einen ATiny2313 mit 2KB Flash-Speicher den kompletten USB-Stack, die Steuerung der 27 LEDs, und ein Kommunikations-Protokoll gequetscht. Zudem können Frames und ganze Animations-Sequenzen in den 128 Bytes des EEPROM gespeichert und beim Booten geladen werden. Zum Betrieb des LED-Cubes entstanden ebenfalls mehrere Tools.
- Die Client-Bibliothek ist ein simples Interface für weitere Software-Implementierungen. Zum Einstieg lohnt es sich die demo.c Datei anzusehen.
- Mit dem Commandline-Client clcc kann der Cube über die Console bedient werden. Es gibt verschiedene Befehle um den Cube zu steuern. Ideal für die Automatisierung.
- Der 3D OpenGL Editor benutzt die oben genannte Client-Bibliothek. In einer grafischen Anzeige können Animationen für den Cube erstellt und direkt auf den Cube übertragen werden -- ganz simpel mit der Maus.