Die Studioproduktion Film im Sommersemester 2025 hat eine über die grandMA3 gesteuerte Lösung für ca. 10m RGBW-LED-Strips entwickelt. Die Entscheidungen sowie ein kurzes How-To sollen hier dokumentiert werden.
Grundsätzlich gibt es zwei verschiedenen Typen von LED-Strips. Die günstigeren Strips können meist nicht pixelweise angesteuert werden, d.h. es lassen sich keine unterschiedlichen Farben für die verschiedenen LEDs setzen:
Sogenannte Pixel-LED-Strips lassen es hingehen zu, für jeden Pixel eine eigene Farbe zu setzen.
Bildquellen: https://shop.led-studien.de
Da in der StuPro Chase-Effekte (Lauflichter) dargestellt werden sollten, wurde dieser Typ verwendet.
Die LED-Strips gibt es meist in verschiedenen Pixel-Dichten zu erwerben. Gängig sind 30, 60 oder 144 LEDs/m. In dieser StuPro wurden 60 LEDs/m gewählt, da diese Dichte ausgereicht hat. Höhere Dichten sehen zwar besser aus, kosten allerdings mehr, verbrauchen mehr Strom und entwickeln dadurch auch deutlich mehr Abwärme. Gerade diese ist nicht zu unterschätzen, bei günstigen LEDs kann es bei schlechter Wärmeabführung passieren, dass sich die LEDs „selbst ablöten“.
Gängige Spannungen sind 5V, 12V oder 24V. Generell ist eine höhere Spannung empfehlenswert, um bei längeren Strips einen zu hohen Spannungsabfall zu vermeiden. Allerdings unterstützt der bei dieser StuPro gewählte Controller-Chip nur 5V, weshalb es diese Strips nur in der 5V Variante gab. Durch zusätzliche Einspeisepunkte war das aber auch kein Problem.
Jede LED auf einem Pixel-Strip besitzt einen kleinen IC (integrierter Schaltkreis), der das Datensignal dekodiert und die LED mit der richtigen Farbe ansteuert. Hier gibt es verschiedene Möglichkeiten, von denen einige in folgender Tabelle gelistet sind:
Chip | Ansteuerung | Color | Voltage | Bittiefe | Max. PWM Frequenz |
DirectDMX | nur 1 Universum, deshalb immer 6 LEDs → 1 Pixel | RGB | 24V | 8 bit | |
WS2801 | alter Chip, RGB, extra Chip → große Abstände | RGB | 5V | 8 bit | 2500 Hz |
APA102c | Nachfolger von WS2801, integrierter IC | RGB | 5V | 8 bit | 20.000 Hz |
WS2811 | RGB | 5V (12V) | 8 bit | 430 Hz | |
WS2812(B) | am verbreitetsten, am günstigsten | RGB | 5V | 8 bit | 430 Hz |
SK6812 | Nachfolger von WS2812(B) | RGB, RGBW | 5V, 12V | 8 bit | 1100 Hz |
WS2815 | Nachfolger von WS2812(B) | RGB, RGBW | 12V | 8 bit | 2000 Hz |
Diese StuPro wollte aufgrund der verbesserten Farbwiedergabe RGBW LEDs verwenden, weswegen die Wahl auf einen SK6812-Strip gefallen ist.
Schlussendlich wurden 10m von BTF-LIGHTING RGBW RGBNW Naturweiß SK6812 (ähnlich WS2812B) 5m 60LEDs/Pixels/m 300LEDs gekauft. Es gibt die W LED in Warm-, Natur- oder in Kaltweiß, abhängig vom geplanten Einsatzzweck kann die Farbtemperatur hier also noch spezifischer gewählt werden.
Zur Ansteuerung der LEDs existieren sowohl kommerzielle als auch DIY Lösungen. Bei Event Media gibt es ein PixLite 16 Control Board. Da dieses allerdings während des Drehs zur anderweitigen Verwendung verplant war, wurde die DIY Lösung gebaut:
Mit einem ESP32 Board und der Open-Source Software WLED lässt sich ein kostengünstiger und zuverlässiger Controller zu bauen. Dieser erlaubt sowohl die Steuerung über ein Smartphone / Laptop mit integrierten Farbwählern und Effekten, als auch eine Übersetzung der Lichtsteuerungsprotokolle sACN oder ArtNet, die von der grandMA3 ausgegeben werden können.
ESP32 bezeichnet nur den Chip, es gibt diesen auf verschiedenen Entwicklungsboards zu kaufen. Empfohlen wird ein WT32-ETH01 ESP32, da dieses einen RJ45 Port für LAN besitzt. ArtNet und sACN sollte man gerade bei mehreren Universen (siehe unten) nicht über WLAN senden, da die unterschiedliche Paketlatenz (Jitter) meist zu groß ist und für visuelle Artefakte sorgen kann. Eine Kabelverbindung ist hier deutlich stabiler.
Der gewählte LED Strip besitzt 3 Pads bzw. abgehende Kabel: 5V (rot), Data (grün) und GND bzw. Masse (weiß).
Zur Spannungsversorgung müssen alle 5V Eingänge mit dem 5V Ausgang des gewählten Netzteils verbunden werden, alle GNDs mit GND des Netzteils. Zum Einsatz kamen hier 5V Netzteile aus dem Lichtlager. Alle Verbindungen wurden mit Wago-Klemmen realisiert.
Bei der Stromversorgung ist gerade bei den Zuleitungen vom Netzteil auf ausreichend große Querschnitte zu achten! Laut Datenblatt benötigt der Strip bei 60 LEDs/m bis zu 18W/m. Das summiert sich bei 5m auf 90W, was bei einer Spannung von 5V einen Strom von 18A bedeutet. Hier sollte also mindestens 2.5mm² gewählt werden, wenn der gesamte Strom durch diese Ader fließt.
Jede LED hat einen Data IN und auf der anderen Seite einen Data OUT Pin. Hier ist es wichtig, dass die Orientierung korrekt ist, ein Datensignal kann nicht in den Data OUT Pin geschickt werden. Der Strip kann nach jeder LED durchgeschnitten werden, um eine passende Länge zu erhalten. Es können mehrere einzelne Strips in Reihe geschalten werden, wenn das Data OUT der letzten LED des vorherigen Strips mit dem Data IN der ersten LED des nächsten Strips verbunden wird.
Das WT32-ETH01 Board besitzt 8 Pins, die zur Ausgabe von Pixel-Daten genutzt werden können. Es können somit 8 einzelne Ketten von Strips mit Daten versorgt werden. Das Datensignal enthält nacheinander alle Pixel-Farben. Vereinfach gesagt, nimmt jede LED die Farbe des ersten Pixels im Datenpaket für sich und gibt den Rest des Datenpakets weiter. Falls manche Strips immer identisch angesteuert werden sollen, ist es somit auch möglich, jeweils die ersten Data INs dieser Strips an den gleichen ESP Ausgang zu hängen. Da diese dann exakt das gleiche Datensignal bekommen, verhalten sie sich identisch.
Bei Kabellängen von mehr als 30cm zwischen dem Controller und der ersten LED können Störungen und Flackern auftreten. Dies liegt vermutlich daran, dass das Output Logic Level des ESP 3,3V beträgt, während die LEDs auf 5V laufen. Laut Datenblatt sollte das nicht zu Problemen führen, in der Praxis ergab sich aber ein anderes Bild. Eine einfache Lösung ohne ein extra Level-Shifter Bauteil ist, jeweils eine LED pro Datenleitung nah an den Controller zu bauen und die lange Datenleitung erst nach dieser LED zu verbauen. Da jede LED ein neues Datensignal ausgibt, ist das Logic Level nach der ersten LED automatisch 5V. Mit dieser Lösung waren bei der StuPro Längen von ca. 2m kein Problem.
Um die Open-Source Firmware WLED zu installieren, ist ein Chrome Browser notwendig. Die Installation erfolgt direkt von der Installations-Webseite, sodass kein manuelles Installieren einer Entwicklungsumgebung oder Kompilieren und manuelles Flashen der Firmware notwendig ist.
Da das WT32-ETH01 Board keine USB-Ports besitzt, wird noch ein FTDI Breakout Board benötigt, um die Firmware aufzuspielen. Dieses Board ist die Brücke zwischen dem seriellen Port des ESPs (der zum Programmieren benutzt wird) und USB. Die StuPro hat ein FT232RL Board verwendet. Zum Programmieren werden folgende Pins des WT32-ETH01 und des FTDI Boards verbunden:
FTDI Pin | ESP Pin |
DTR | - |
RX | TX0 |
TX | RX0 |
5V | 5V |
CTS | - |
GND | GND |
IO0 ↔ GND |
Achtung: Dass RX mit TX0 und TX mit RX0 verbunden ist, ist kein Tippfehler. RX steht für Receive, TX für Transmit. Was das eine Board sendet, muss bei dem anderen logischerweise empfangen werden und umgekehrt. Deshalb sind RX udn TX immer über Kreuz verbunden. Außerdem muss bei dem WT32-ETH01 Board noch eine Brücke zwischen IO0 und GND gesteckt werden, um in den Programmier-Modus zu kommen. Eine Stromversorgung muss hier nicht extern bereitgestellt werden, der Strom über USB ist ausreichend.
Sind alle physischen Verbindungen gesteckt, kann nun in Chrome über die Installations-Webseite die Firmware aufgespielt werden. Hier ist noch wichtig, vor dem Klick auf Install im Menü darüber Ethernet auszuwählen. Nach erfolgreicher Installation kann man den WT32-ETH01 abstecken.
Standardmäßig ist die Ethernet Schnittstelle beim WT32-ETH01 noch nicht aktiv. Schließt man das WT32-ETH01 an die Spannungsversorgung an (Verbinden von Vin und GND mit den entsprechenden Ausgängen des Netzteils), stellt WLED einen WLAN Access Point mit der SSID „wled“ bereit. Verbindet man sich hiermit mit dem Passwort `wled1234`, kann man im Browser die Webseite http://4.3.2.1 aufrufen und landet in der WLED Konfigration. Über Config → Wifi Settings lässt sich ganz unten der Ethernet-Type auf WT32-ETH01 stellen. Danach mit Save & Connect bestätigen. Nun sollte ein Neustart durchgeführt werden, was durch ein Trennen der Stromversorgung erreicht werden kann.
Über Config → LED Preferences müssen nun alle Outputs konfiguriert werden, also an welchem Pin wie viele LEDs in Reihe hängen. Über das + kann man neue Outputs hinzufügen. Danach ist der Chip Type, die Anzahl der LEDs sowie der Pin zu setzen. Nutzbare Pins beim WT32-ETH01 sind:
Es empfiehlt sich auch, hier den Automatic Brightness Limiter zu deaktivieren, um die maximale LED Helligkeit zu bekommen, allerdings müssen dafür sowohl Netzteil als auch Kabelquerschnitte ausreichend dimensioniert sein.
Falls aufgrund des Flacker-Problems bei langen Datenleitungen eine zusätzliche LED direkt an den ESP gebaut wurde, kann diese softwareseitig übersprungen werden, indem „Skip first LEDs“ auf 1 gesetzt wird. So leuchtet diese LED nicht und bei der Ansteuerung ist die erste LED des Streifens trotzdem LED #1, obwohl sie eigentlich an zweiter Stelle hängt.
Bei Sync Settings lässt sich ArtNet oder sACN auswählen, sodass der ESP Pixel-Daten aus der grandMA empfangen kann. Je nach Netzwerk muss dafür noch eine statische IP gesetzt werden, das sollte aber mit den TAs abgeklärt werden. Außerdem ist hier das erste DMX Universum zu setzen. Bei 8bit RGBW Pixeln passen in ein Universum 512 / 4 = 128 Pixel.
In der grandMA werden in entsprechender Anzahl „LED RGBW“ Fixtures des Herstellers „Generic“ im 8bit Modus gepatched. Nachdem über Settings → DMX Protocols bei ArtNet bzw. sACN die Ausgabe entsprechend des gesetzten Universums konfiguriert wurde, sollten die LEDs nun über die grandMA ansteuerbar sein.