GPN8:DMX-coden

aus dem Wiki des Entropia e.V., CCC Karlsruhe
Version vom 26. Juni 2009, 22:18 Uhr von Ralf (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Falls ihr schon immer mal mit DMX spielen wolltet, habt ihr hier die Möglichkeit dazu. Wir haben einen Steuerrechner auf dem LLA (Linux Lighting Architecture) installiert ist, einen opendmx-kompatiblen DMX-to-USB-Adapter sowie ein paar kleine Beispielprogramme. Ihr könnt nun ganz nach Lust und Laune herumprobieren und coden...


DMX-Hardware

DMX ist ein Protokoll zur Ansteuerung von Geräten im Bereich Bühnentechnik, wie z.B. Moving Heads, Scanner, Nebelmaschinen und Scheinwerfer. Wir haben vier PAR56 RGB-Bühnenscheinwerfer mit jeweils 156 8mm-LEDs sowie einen DMX-USB-Adapter, und das Ganze ist an einem Steuerrechner angeschlossen. Die DMX-Kanäle sind wie folgt belegt:

  • 1 / Scheinwerfer 1 rot
  • 2 / Scheinwerfer 1 grün
  • 3 / Scheinwerfer 1 blau
  • 4 / Scheinwerfer 2 rot
  • 5 / Scheinwerfer 2 grün
  • 6 / Scheinwerfer 2 blau
  • 7 / Scheinwerfer 3 rot
  • 8 / Scheinwerfer 3 grün
  • 9 / Scheinwerfer 3 blau
  • 10 / Scheinwerfer 4 rot
  • 11 / Scheinwerfer 4 grün
  • 12 / Scheinwerfer 4 blau


Bie vier Scheinwerfer sind in dem Gang vor den Vortragsräumen am Geländer montiert und leuchten auf die Wand zu den Vortragsräumen.


Steuerrechner

Den Steuerrechner erreicht ihr per ssh unter der Adresse dmx.gpn8.entropia.de. Login/passwd ist dmx/dmx, per sudo ist ist das Starten des lla-daemons sowie das Installieren von Paketen mit apt-get erlaubt. Der Rechner ist frisch aufgesetzt, es ist Debian/lenny installiert, es gibt also nichts Interessantes zu hacken/exploiten/whatever. Ein paar Daten zum Rechner (damit ihr wisst, wie langsam das Ding ist und was man besser lassen sollte):

  • (cpu) model name  : Pentium II (Klamath)
  • (cpu) MHz  : 233.875
  • Mem: 126512
  • Linux version 2.6.26-2-686 (Debian 2.6.26-15) (dannf@debian.org)


Software

LLA

Software ist entsprechend dieses Tutorials [1] installiert. Die auftretenden Probleme [2] wurden entsprechend der Hinweise auf der Webseite gelöst.


Der llad wird nicht automatisch beim booten gestartet, sondern ist von Hand durch

sudo /etc/init.d/llad start

anzuwerfen (Schaut nach, ob nicht schon jemand vor euch den Daemon gestartet hat). Das Script ist erweitert und setzt gleich die Berechtigung für /dev/dmx0 und ruft llad_patch auf um den usb2dmx-Adapter auf das dmx-universe 0 zu patchen.


  • Das Webinterface llad-console erreicht ihr ganz normal auf Port 80 des Steuerrechners.
  • Als Einstieg mögen die Kommandozeilenprogramme lla_dmxconsole (ein ncurses-Programm) und lla_set_dmx (direktes Setzen von Kanälen über Kommandozeilenparameter) dienen. Letzteres ist ein Link auf lla_dev_info.
  • Im Homeverzeichnis des Users dmx liegen unter dem Verzeichnis www.nomis52.net die Sourcen der Programme. Es ist aber echt frickelig, da was compiled zu bekommen, weil z.B. das configure-Script eine liblla prüft, die mittlerweile liblla0 heisst...
  • Legt euren Code oder eure Scripte am besten im Homeverzeichnis des Users dmx unter eurem Namen ab, damit wir sie hinterher auch schön finden und irgendwo hinlegen können.


Andere Software

Wer nicht per LLA und /dev/dmx arbeiten will und andere Ideen hat, kann versuchen, über den ganz normalen usbserial-Driver zuzugreifen. Dazu gibt es ein kleines (übles) Configscript. Mit

sudo /etc/init.d/config-llad stop

wird das dmx-usb-Module rausgeworfen, die normalen usb-Module eingebaut und der Zugriff auf den usb2dmx-Adapter per /dev/ttyUSB? ermöglicht. Das Zurückbiegen für LLA-Betrieb geht dann über

sudo /etc/init.d/config-llad start


Fragen

Bei irgendwelchen Fragen bitte an Ralf wenden.