Backglow einrichten
Voraussetzungen
- Ein Mac mit macOS 26 oder neuer. Zum Bauen der App brauchst du Xcode 26.
- Ein WS2812B-Strip (Farbreihenfolge GRB), lang genug für die Ränder deines Monitors. Bis zu 255 LEDs.
- Ein ESP32 Dev Module oder ein NodeMCU ESP8266 mit USB-Datenkabel.
- Ein 5-V-Netzteil für den Strip.
- Für die Firmware PlatformIO Core.
Hardware verkabeln
Klebe den Strip als Ring auf die Rückseite des Monitors. Wo der Standfuß sitzt, darf eine Lücke bleiben, die blendest du später in der App aus.
| Board | Datenpin | Beschriftung auf dem Board |
|---|---|---|
| ESP32 Dev Module | GPIO 18 | meist „D18“ oder „18“ |
| NodeMCU ESP8266 | GPIO 5 | „D1“ |
- Datenleitung des Strips (DIN) an den Datenpin, am besten über einen Widerstand von etwa 330 Ω.
- 5 V und GND des Strips direkt ans Netzteil. Den ESP versorgt weiter der Mac über USB.
- GND von Netzteil, Strip und ESP verbinden. Ohne gemeinsame Masse flackern die LEDs oder bleiben dunkel.
- Ein Elko von etwa 1000 µF über 5 V und GND am Stripanfang fängt Einschaltspitzen ab.
Prüfe Pinbelegung und Spannung vor dem ersten Einschalten an deinem Board. Die Firmware erkennt das Board nicht automatisch, sie geht von den Pins in der Tabelle aus.
Firmware flashen
Die Firmware liegt im Repository unter Firmware/BackglowController. Sie empfängt die Farben mit 230 400 Baud und begrenzt die Helligkeit des Strips auf 50 von 255, damit Netzteil und Augen geschont werden.
git clone https://github.com/Janldeboer/Backglow.git
cd Backglow/Firmware/BackglowController
# ESP32
pio run -e esp32dev -t upload
# oder ESP8266 (NodeMCU)
pio run -e nodemcuv2 -t upload
Sind mehrere serielle Geräte angeschlossen, gibst du den Port mit --upload-port /dev/cu.… an. Ein frischer ESP8266 braucht eventuell noch einen eingerichteten Profilspeicher, siehe Profil speichern.
Im Ordner Firmware/SerialLEDcontroller liegt außerdem der ursprüngliche Arduino-Sketch (70 LEDs an Pin 2). Er funktioniert weiterhin, kann aber kein Profil speichern.
App bauen und starten
cd Backglow
./scripts/build-app.sh
open dist/Backglow.app
Das Skript baut die App und signiert sie mit deiner Apple-Development-Identität, falls vorhanden, sonst ad hoc. Du kannst Backglow.app danach in den Programme-Ordner ziehen.
Starte die Aufnahme mit der Wiedergabetaste oben rechts. Beim ersten Mal fragt macOS nach der Freigabe für die Bildschirmaufnahme. Erlaube sie unter Systemeinstellungen → Datenschutz & Sicherheit → Bildschirm- & Systemaudioaufnahme und starte Backglow neu.
Backglow folgt der Systemsprache. Für eine eigene Sprache nur für Backglow fügst du die App unter Systemeinstellungen → Allgemein → Sprache & Region → Apps hinzu.
Bildquelle
Unter Bildquelle wählst du den Bildschirm, hinter dem der Strip hängt.
- Ziel-Bildrate: 30 fps reichen für die meisten Inhalte, bis zu 60 sind möglich.
- Interne Auflösung: 25 % genügt fast immer und spart Rechenzeit, denn es zählen nur Mittelwerte.
- Schwarze Filmränder ausklammern: Bei Filmen im Breitbild leuchten die LEDs dann in den Farben des eigentlichen Bildes statt schwarz.
LED-Anordnung
Backglow legt ein Raster über das Bild und nutzt nur dessen äußeren Ring. Jede Randkachel wird zu einer LED.
- Spalten: so viele LEDs, wie oben entlang der Kante sitzen.
- Zeilen: so viele LEDs, wie an einer Seite sitzen, jeweils inklusive der Ecken.
- Aktive LEDs: wie viele LEDs tatsächlich leuchten. Ist der Wert kleiner als der Ring, bleibt am Ende eine Lücke, zum Beispiel am Standfuß.
- Startversatz: verschiebt, an welcher Randkachel LED 1 liegt. Gezählt wird ab der Ecke oben links im Uhrzeigersinn.
- Reihenfolge umkehren: für Strips, die gegen den Uhrzeigersinn verlegt sind.
Stimmt die Vorschau mit dem Strip überein, leuchtet jede LED in der Farbe der Kachel direkt vor ihr. Liegt alles um ein paar LEDs daneben, korrigierst du das mit dem Startversatz.
Controller verbinden
- Unter Gerät den Anschluss des ESP wählen. Backglow zeigt nur USB-Seriell-Anschlüsse, Bluetooth- und Systemports sind ausgeblendet.
- Physische LEDs auf die Gesamtzahl der LEDs am Strip setzen.
- Baudrate auf 230 400 lassen, passend zur Firmware.
- Verbinden und die Aufnahme starten.
Backglow öffnet nie von selbst einen Anschluss. Beim Stoppen schaltet die App die LEDs aus.
Farben abstimmen
- Farbwirkung: Sättigung, Gamma, Helligkeit und Glättung. Mehr Glättung wirkt ruhiger, reagiert aber träger.
- Farbkanäle: gleicht einen Farbstich des Strips oder der Wand aus.
- LED-Kalibrierung: Wähle eine Testfarbe an LEDs und stelle ein, wie der Strip diese Grundfarbe zeigen soll. Dazu kommt die Farbtemperatur (neutral, warm, kalt).
- Grundlicht und Leistung: Ein schwaches Grundlicht hält die Wand bei dunklen Szenen leicht beleuchtet. Die Leistungsgrenze dimmt sehr helle Bilder gleichmäßig.
Profil auf dem Controller speichern
Mit der Firmware aus diesem Repository kann der Controller ein Profil behalten. Aktuelle Einrichtung speichern schreibt LED-Anordnung und Farbwerte auf den ESP und liest sie zur Kontrolle zurück. Beim nächsten Verbinden lädt Backglow das Profil automatisch.
Kann ein ESP8266 seinen Dateisystembereich nicht öffnen, etwa weil das Board neu ist, erscheint Controller-Speicher einrichten. Das formatiert diesen Bereich erst nach deiner Bestätigung. Dort vorhandene Dateien gehen dabei verloren.
Bildschirmwahl, Bildrate und Anschluss bleiben auf dem Mac, ebenso vorerst Farbtemperatur, LED-Kalibrierung, Grundlicht und Leistungsgrenze. Die Einstellungen liegen in ~/Library/Application Support/Backglow/settings.json.
Wenn etwas nicht klappt
Die Vorschau bleibt leer
Fehlt die Freigabe für die Bildschirmaufnahme, prüfe sie in den Systemeinstellungen und starte Backglow neu. Nach einem neuen Build mit Ad-hoc-Signatur kann macOS die Freigabe vergessen. Entferne Backglow dann aus der Liste und füge es erneut hinzu.
Der ESP taucht nicht als Anschluss auf
Viele USB-Kabel laden nur und übertragen keine Daten. Probiere ein anderes Kabel und tippe auf Anschlüsse aktualisieren.
Die LEDs flackern oder zeigen falsche Farben
Meist fehlt die gemeinsame Masse oder die Datenleitung ist zu lang. Prüfe auch, ob dein Strip wirklich ein WS2812B mit GRB-Reihenfolge ist. Bei Rot und Grün vertauscht passt die Firmware nicht zum Strip.
Das Licht ist um einige LEDs verschoben
Passe Startversatz und gegebenenfalls Reihenfolge umkehren an, bis die Farben an den Ecken stimmen.
Weitere Fragen oder Fehler gerne als Issue auf GitHub.