Projektbeschreibung
Ziel dieses Projektes ist es das Kommunikationsprotokoll der Lightbox auf DMX zu wechseln. DMX ist ein digitales Steuerprotokoll aus der Licht und Veranstaltungstechnik. Es basiert auf RS-485 und stellt 512 Kanäle mit einer breite von 8 Bit zur Verfügung. Die Symbolrate beträgt 250Kbaud/s.
Hardware
DMXLightbox Gallery
Code
- Der Quellcode ist im Lightboxrepository[1] zu finden.
- FuseBits fuer den Atmega 8
- low 0xE4
- high 0xD9
- => 8mhz interner takt
Adressierung
Eine Lightbox belegt 4 DMX-Kanäle. 3 für die RGB-Werte und einer für spätere Erweiterungen und weil 2er-Potenzen einfacher zu handeln sind.
Byte | 0 | 1 | 2 | 3 |
Funktion | Rot | Grün | Blau | Reserviert |
Zur Vereinfachung der Adressierung können die Lightboxen nur DMX-Adressen erhalten, die in 4er Schritten ausgerichtet sind. Deshalb können sich niemals die Adressbereiche von zwei oder mehreren Boxen überlappen. ( Sie können aber identisch sein) Aufgrund dieser Vereinfachung können maximal 64 verschieden adressierte Lightboxen in einem DMX-Universum existieren. Dabei ist weiterhin zu beachten, dass wegen dem verwendeten RS485-Bausteins nur 32 Geräte an eine Bus gehängt werden dürfen. Diese Zahl ist inklusive dem Master. Mit einem oder mehreren Repeatern kann diese Anzahl erhöht werden.
Intern verwendet die Lightbox zur Adressierung nicht die DMX-Kanalnummer(1-512) sondern eine Gerätenummer(0-63). Zur Umrechnung zwischen Gerätenummern auf den ersten DMX-Kanal kann folgende Formel verwendet werden.
d=4*g+1
d steht für die DMX-Adresse und g für die Gerätenummer.
Einstellen der Adresse
Zum Einstellen der Adresse gibt es zwei Möglichkeiten. Zum einem kann mit Hilfe von avrdude die Gerätenummer in den Eeprom geschrieben werden, zum anderem kann der Programmiertaster an der Lightbox verwendet werden.
Einstellen der Adresse mit Hilfe des Programmiertasters
Lange Drücken versetzt die Box in den Programmiermodus
Jedes weitere drücken erhöht die Adresse um eins. Der Programmiermodus wird wieder durch gedrückt halten des Tasters beendet.
Beschreibung des Farbcodes
Es wird ein Addresse zwischen 0 und 64 mit 3 Farben kodiert.
- Blau definiert den Anfang / Ende der Zahl
- Rot die Anzahl der Einer-stellen
- Grün die Anzahl der Zehner-Stellen
Beispiel:
- Blau - Rot - Rot - Blau : 2
- Blau - Grün - Rot - Rot -Rot - Blau : 13
- Blau - Blau : 0
Einstellen der Adresse mit avrdude
TODO
Comandline: avrdude -c usbasp -p m8 -U eeprom:w:lightbox_dmx.eep
USB-DMX Modul
Aufbau eines USB-Software Stacks, aus den Bauteilen eines USB-Asps. Dank an Bene für die Teile.
Hardware
-
Es läuft!!!!!!!!!!
Software
xbmc Visulalisierungs-Plugin
Eine Anpassung an dem OpenGL Visualisierungsplugins, bietet die Möglichkeit Artnet-Pakete an Hand der aktuell abspielenden Musik zu generieren.
Das Ergebnis ist hier zu finden: https://github.com/C3MA/xbmc2artnet
Die Generierung der Arnetpakete wurde in diesem Projekt schon erstellt: https://github.com/0110/nativeFFT
Quelle
Software
Open Lighting Architecture
http://www.opendmx.net/index.php/Open_Lighting_Architecture
GUI
Betriebssystem Übergreifende Oberfläche: Q Light Controller