Raspberry Pi Beamer Control

Ich habe ein kleines Programm geschrieben, mit dem sich Beamer mit RS-232-Schnittstelle über sACN (E1.31) oder Art-Net ansteuern lassen.
Beötigt werden:
- Raspberry Pi (B-Version, oder A-Version mit USB-Netzwerkadapter)
- (micro) SD-Karte
- Netzteil fü den Raspberry Pi
- RS-232-TTL-Adapter mit MAX3232 Chip
- D-SUB Verlängerung, 1:1, 9-polig, Stecker/Buchse
- Netzerkkabel
- Beamer - BenQ-Beamer funktionieren out of the box
- Bei Bedarf einen SSH-Client (z. B. PuTTY)
Installation
Vorbereitungen
Raspbian installieren
Als erstes muss Raspbian auf dem Raspberry Pi installiert werden. Da es hierfür schon einige Tutorials gibt, verzichte ich hier auf eine Beschreibung und verweise auf die Dokumentation von raspberrypi.org.
Falls die Konfiguration des Raspberry Pis über SSH erfolgen soll, empfiehlt es sich, vor dem ersten Boot den SSH-Daemon durch das Anlegen einer leeren Datei mit dem Namen ssh im Root-Verzeichnis der SD-Karte zu aktivieren
Sobald der Raspberry Pi gestartet wurde, sollte als erstes das Dateisystem vergrößert werden. Das geht recht komfortabel über das kleine Programm raspi-config
Auch ein sudo apt update && sudo apt upgrade -y
, sowie ein sudo rpi-update
können nicht schaden
Ist das System lauffähig und aktuell, kann es mit den eigentlichen Vorbereitungen losgehen
Raspbian konfigurieren
Die login shell, die über die serielle Schnittstelle erreichbar ist, muss deaktiviert bleiben. Die serielle Schnittstelle selbst, soll allerdings aktiv bleiben.raspi-config
aufrufen- 5 Interfacing Options auswählen
- P6 Serial auswählen
- Button No bestätigen
- Button Yes bestätigen





RS-232-TTL-Adapter anschließen
Eine Übersicht der GPIO-Pins ist unter https://www.raspberrypi.org/documentation/usage/gpio/ zu finden.
- GND
- Ground, z. B. Pin 6
- VCC
- 5 V, z. B. Pin 2
- TXD
- UART0_TXD, Pin 8 (GPIO 14)
- RXD
- UART0_RXD, Pin 8 (GPIO 15)
Über das 9-polige D-SUB-Kabel wird der Beamer an den Adapter angeschlossen.
Installation der Software
- Repository klonen:
git clone https://github.com/johannesfelber/beamer_control.git
- In das Verzeichnis beamer_control wechseln:
cd beamer_control
- Installationsscript ausführbar machen:
chmod a+x install.sh
- Installationsscript ausführen:
sudo ./install.sh
- Raspbery Pi neustarten:
sudo reboot
OLA konfigurieren
Beamer Control basiert auf das Framework OLA und unterstützt damit einige in der Lichttechnik gängige Protokolle.
Exemplarisch zeige ich hier, wie man sACN aktiviert; Art-Net funktioniert analog.
- Das Web-Interface ist unter http://ip-des-raspberrys:9090 erreichbar
- Unter Universes das schon vorkonfigurierte 1. Universum auswählen
- Herunterscrollen zu E1.31 (DMX over ACN) Input und checkbox anhaken
- Mit Save speichern


Standardmäß reagiert Beamer Control auf Adresse 1 in Universum 1. Sollte daran nichts geändert werden müssen, kann der Beamer damit nun gesteuert werden.
DMX-Protokoll
Wert von | Wert bis | Funktion | Kommando |
---|---|---|---|
0 | 23 | No Function | - |
24 | 46 | Power On | *pow=on# |
46 | 69 | Power Off | *pow=off# |
69, | 92 | Source VGA 1 (RGB) | *sour=RGB# |
92, | 115 | Source VGA 2 (RGB) | *sour=RGB2# |
115 | 138 | Source Composite | *sour=vid# |
138 | 161 | Source S-Video | *sour=svid# |
161 | 184 | Audio Mute | *mute=on# |
184 | 207 | Audio Unmute | *mute=off# |
207 | 230 | Lampmode Normal | *lampm=lnor# |
230 | 256 | Lampmode Eco | *lampm=eco# |
Anpassung der Startadresse, Universum und Verwendung mit anderen Beamern
Die Konfiguration von Beamer Control ist unter /opt/beamer_control/config.py gespeichert
Addresse und Universum
Standardmäß reagiert Beamer Control auf Adresse 1 in Universum 1. Die Werte lassen sich im dict ola entsprechend der Bedürfnisse anpassen.
Serial settings
Die Einstellungen für die serielle Schnittstelle können bei Bedarf im dict serial angepasst werden. Die Standardeinstellungen wurden mit BenQ-Beamern getestet.
Kommandos
Alle Kommandos sind nach Belieben anpassbar. xrange(n, m): 'value' definiert die DMX Werte fü das Preset (n ist hierbei der minimale DMX-Wert; m der maximale); der Wert entspricht dem String, der an den Projektor gesendet wird. Die vordefinierten Werte funktionieren mit den meisten BenQ-Beamern.
Verwendung mit ETC Eos
Ich habe ein Profil für die ETC Eos Serie angelegt. Es ist in folgendem Showfile enthalten und kann in eigene Showfiles gemergt und als Fixture-Part zur Lampenkontrolle verwendet werden.
