- Offizieller Beitrag
In diesem Tutorial beschreibe ich euch, wie Ihr Ambilight bzw. dessen Opensource Alternative boblight an eurem Raspberry Pi nachrüstet.
wie das ganze Live ausschaut könnt ihr u.a. hier sehen. Auch Youtube liefert zu Stichpunkten "Rasperry Pi Ambilight" einige gute Teffer
Im Wesentlichen ist dies eine Übersetzung und Zusammenführung der Tutorials von Brendan.
Dieses Tutorial ermöglicht euch alles was auf eurem Pi zu sehen ist, zu erleuchten. Wer gern alles was einen HDMI-Stecker hat, wie zum Beispiel euren Fernseher, erhellen will, sollte im Tutorial von ps915 vorbeischauen.
Wie das ganze dann Live aussieht (Ich hab alles aus meinem Iphone rausgeholt was ging ;)...sieht trotzdem deutlich farb-ärmer aus als es in Wirklichkeit ist): https://www.forum-raspberrypi.de/editpost.php?pid=22532
[youtube]p2v3hQgT2BY[/youtube]
Als Betriebssystem kommt das aktuelle Raspbmc zum Einsatz. Die Punkte 1-3 wurden von mir ausführlich getestet. Den Punkt 5 (vor allem den Unterpunkt XBMC) erwähne ich der Vollständigkeit halber. Hier bin ich auf die Mitwirkung von euch angewiesen, da ich als Media OS ausschliesslich Raspbmc einsetze.
Alle Angaben wie immer ohne Gewähr.
Ich werde dieses Tutorial in 5 Abschnitte aufteilen.
Nr. 1 - Notwendiges Zubehör
Nr. 2 - Generelles Setup
Nr. 3 - Boblight für Raspbmc
Nr. 4 - Boblight für OpenElec
Nr. 5 - Boblight from Scratch
Nr. 6 - Boblightd für Pi2 + OSMC
Nr. 1 - Notwendiges Zubehör
Ihr benötigt natürlich RGB LEDs. Wieviele ihr braucht, ist generell euch überlassen. Ich nutze 50 Stk. WS2801 an meinem 42"" Samsung TV (Postion: Links, rechts, oben)
Shop Übersicht:
- AliExpress; Preis: $32.30, keine Versandkosten,Zahlung per Kreditkarte, lange Liefer bzw. Zoll-Wartezeiten
- Wer noch Shops in der EU (oder andere) hat, bitte melden
Ein 5V Netzteil, jede meiner LEDs verbraucht etwa 30mA (50*~30mA = 1,5A). Ich nutze ein 5V 2A Netzteil von einer ausgemusterten PSP.
Man kann auch die 5V vom Pi nehmen, sollte dann aber sicherstellen, dass Spannungsversorgung ausreichend ist, da es sonst zu Instabilitäten und anderen Kuriositäten kommen kann. Ich habe mich bewusst für externes Netzteil entschieden um das Ambilight auf einfache Weise deaktivieren zu können.
Nr. 2 - Generelles Setup
Nachdem wir unsere LEDs ausgepackt vor uns liegen haben, identifizieren wir zurst das Eingangs und das Ausgangsende:
Der Männliche Stecker (links) ist der Ausgang und kann ignoriert werden. Der Weibliche Stecker (rechts) ist der Eingang (ich hätte ein Bild machen sollen bevor ich den Stecker abgeschnitten habe
und bedarf einer genaueren Untersuchung.
Zusätzlich zu diesem Stecker befinden sich noch 2 weitere Kabel an der "Eingangsdiode", welche für die Spannungsversorgung zuständig sind (rot(5V) und blau(GND))
Die 3 Kabel des weiblichen Eingangssteckers gliedern sich lt. Spezifikation (der oben verlinkten LEDs) so auf:
Weiß: DATA
Grün: CLOCK
Blau: GND
Nun verbinden wir die 5 Kabel wie folgt:
- rot + blau (extern) an Plus und Minus des Netzteils
- Eingangsstecker:
- weiß an Pin 19 (MOSI)
- grün an PIN 23 (SCLK)
- blau an PIN 9 (GND)
WICHTIG
Wer mehr als eine Kette nutzt sollte in jeder Kette +5V einspeisen (bei gemeinsamer Masse) da es sonst zu unschönen Farbverläufen, vor allem bei Weißtönen, kommen kann.
Zitat von IckZ
Falls ihr ebenfalls mehr als eine Kette verwendet, sollte darauf geachtet werden, einen passenden Kabelquerschnitt zum und für den Stromverteiler zu verwenden. Ich hatte erst Kabel aus einem alten PC gewählt, die allerdings so heiß wurden, dass ich noch ein zusätzliches Kabel draufgelötet habe. Jetzt sind alle Störungen behoben und die Kabel sind ausreichend dimensioniert.
Empfohlener Kabelquerschnitt: 2,5mm²
Die Anbringung der LEDs hängt natürlich von der Größe eures TVs sowie eventuell vorhander Lüftungsschlitzen usw. ab. Ich hab mich für ein Provisorium aus Pappe entschieden, bis ich eine passende Unterlage gefunden habe (dabei wissen wir doch alle: nichts hält länger als ein Provisorium )
Nachdem wir die LEDs nun formschön angebracht haben wollen wir uns um die Softwareseite kümmern.
Nr. 3 - Boblight für Raspbmc
Raspbmc beinhaltet bereits alles notwendige um ohne grossen Aufwand das Ambilight zu starten
Aktivierung
Wir aktivieren den boblight-support in den Raspbmc Settings
(relativ weit unten)
Konfiguration
Wir Verbinden uns per ssh auf den Pi und starten die Konfiguration
Wer das das gleiche Setup wie ich benutzt (50 LED, 14 Links, 22 oben, 14 rechts) , kann sich die boblight.conf direkt per wget auf sein system ziehen.
sudo wget http://dl.dropboxusercontent.com/u/6885567/boblight_50xWS2801_speedy.conf -O /etc/boblight.conf
(Link ist von Brendan)
Ich hab die config auch noch an das tutorial angehangen (von .txt in .conf umbennen), falls der Link offline gehen sollte. Diese muss dann manuell nach /etc kopiert werden.
Diese Datei beinhaltet die Anordnung und Anzahl der einzelnen LEDs beginnend unten links (wenn man auf den Fernseher schaut).
Wer sein eigenes Setup bauen möchte, dem sei das Boblightconfigtool ans Herz gelegt. (auch im Anhang verfügbar)
Optional
turulu hat eine angepasste boblight-dispmanx Konfiguration vorgeschlagen welche sanfte Übergänge und sattere Farben bietet. Diese
möchte ich euch nicht vorenthalten
den vorhandenen boblight-dispmanx aufruf durch diesen ersetzen
boblight-dispmanx -o interpolation=1 -o speed=60 -o threshold=25 -o autospeed=0 -o saturation=1.2 -o value=2 -p 100 -i 0.1 -f /dev/null
ein abschliessender Neustart beendet diesen Teil des Tutorials
Nun sollte nach dem Starten von Raspbmc die LEDs erstrahlen.
Nr. 4 - Boblight für OpenElec
OpenElec unterstützt ab Version 3.0.7 den boblight deamon.
Aktivierung
Wir installieren den boblightd aus den Addons
Konfiguration
Ruft folgende Seite in eurem Browser auf
alles markieren - Kopieren - in ein neues Textdokument einfügen. Speichern als boblight.conf
ruf im Windows-Explorer folgende Adresse auf
wobei natürlich YOUR_PI_IP der IP-adresse eures Pi entspricht.
Kopiert die soeben gespeicherte Datei in diesen Ordner
Ladet euch den boblight-dispmanx clienten herunter
cd ~
curl -L https://github.com/brooc/boblight-rpi/raw/master/src/boblight-dispmanx > boblight-dispmanx
chmod 755 boblight-dispmanx
und erstelt eine Datei für den Autostart
mit diesem Inhalt
#!/bin/sh
/storage/boblight-dispmanx -o interpolation=1 -o speed=90 -o threshold=35 -o autospeed=0 -o saturation=1 -o value=1 -p 100 -i 0.1 -f /dev/null &
Speichern(Strg+O, ENTER), Beenden (STRG+X)
An dieser Stelle sei gleich auf den "Optional" Schritt aus Nr. 3 hingewiesen. Falls Ihr dieses Setting nutzen wollt, einfach die 2. Zeile durch turulus Version ersetzen.
Abschliessend das Script ausführbar machen und neustarten
Sollten die LEDs nicht angehen, ist es durchaus möglich das beim downloaden des boblight-dispmanx etwas schiefgegangen ist und deswegen auch auch der autostart fehlschlägt. Um dies zu testen verbindet euch wieder per ssh auf den pi
Sollte jetzt eine Fehlermeldung erscheinen, müsst ihr den die Datei manuell aus aus dem Github rep downloaden:
Öffnet im Browser die Seite
Wählt die Datei "boblight-dispmanx" aus und speichert sie auf eurem PC. Passt auf keine Dateiendung mit anzugeben (Es soll wirklich noch Leute geben die "Erweiterungen bei bekannten Dateitypen ausblenden" im Windows Explorer nicht deaktiviert haben, (Windows-Explorer->Ordner Optionen -> Haken bei "Erweiterungen bei bekannten Dateitypen ausblenden" entfernen).
anschliessend kopiert ihr die Datei per WinSCP in den HomeOrdner eures Pi
Nr. 5 - Boblight from Scratch
Für all die, die kein raspbmc verwenden und somit Ihr xmbc selber ambilight-ready machen müssen oder XBMC gar nicht brauchen und lieber Ihre Weihnachtsbaumbeleuchtung damit steuern wollen geht es hier los.
Allgemein
Wir installieren notwendige abhängigkeiten
und downloaden den Quellcode
configurieren und kompilieren des Quellcodes
Wenn es keine Fehlermeldungen gab (Warnungen sind möglich aber zu vernachlässigen )
downloaden von boblight-dispmanx
cd ~
wget https://github.com/brooc/boblight-rpi/raw/master/src/boblight-dispmanx
chmod 755 boblight-dispmanx
Wir tragen den tragen den Boblight daemon und dispmanx in den Autostart ein
und fügen folgendes vor "exit 0" ein
/usr/local/bin/boblightd -f &
/home/pi/boblight-dispmanx -b on -o interpolation=1 -o speed=90 -o threshold=35 -o autospeed=0 -o saturation=1 -o value=1 -p 100 -i 0.1 -f /dev/null &
An dieser Stelle sei gleich auf den "Optional" Schritt aus Nr. 3 hingewiesen. Falls Ihr dieses Setting nutzen wollt, einfach die 2. Zeile durch turulus Version ersetzen.
anschliessend öffnen wir raspi-blacklist.conf
und schreiben ein "#" vor for die Zeile [font="Tahoma"]blacklist spi-bcm2708. Sie sollte dann so aussehen:[/font]
[font="Tahoma"]Nun muss das neue modul noch richtig verlinkt werden. Ein simples[/font]
erledigt das für uns.
Wer das das gleiche Setup wie ich benutzt (50 LED, 14 Links, 22 oben, 14 rechts) , kann sich die boblight.conf direkt per wget auf sein system ziehen.
sudo wget http://dl.dropboxusercontent.com/u/6885567/boblight_50xWS2801_speedy.conf -O /etc/boblight.conf
(Link ist von Brendan)
Ich hab die config auch noch an das tutorial angehangen (von .txt in .conf umbennen), falls der Link offline gehen sollte. Diese muss dann manuell nach /etc kopiert werden.
Diese Datei beinhaltet die Anordnung und Anzahl der einzelnen LEDs beginnend unten links (wenn man auf den Fernseher schaut).
Wer sein eigenes Setup bauen möchte, dem sei das Boblightconfigtool ans Herz gelegt. (auch im Anhang verfügbar)
Nach einem neustart
können die LEDs nun direkt auf der Konsole getestet werden:
sollte ein grün ergeben. Mittels CTRL+C kann abgebrochen werden.
Andere Farbwerte können von hier geholt werden. (die "#" dann weglassen)
XBMC
Die XMBC User benötigen eine Version von XBMC wo der omxplayer gepachted wurde um die Bildsignale an den boblight daemon weiterzuleiten.
cd ~
wget https://www.dropbox.com/s/mf3p4ubuujlr8qg/xbmc-rbp-pibob-20130429.tar.gz
sudo initctl stop xbmc
sudo tar -xzf xbmc-rbp*.tar.gz -C /opt
Wobei bei /opt der Installationpfad von xbmc ist.
Sollte der der Standard Installationspfad nicht /opt sein, bitte Bescheid sagen, dann änder ich das.
Auch hier benötigen wir eine config datei, welche XMBC die Verbindung zum boblight deamon erlaubt:
und fügen folgendes ein
enabled=false
host=localhost
port=19333
priority=128
sizedown=112
margin=5
timeout=35
interpolation=0
speed=100
autospeed=0
saturation=1.0
threshold=15
Alles anzeigen
Nach einem weiteren neustart
sollte beim Starten eines Filmes das Ambilight in voller Pracht erstrahlen.
Boblightd für Pi2 + OSMC
Da Raspbmc in OSMC umbenannt wurde, sind ein paar Anpassungen zu Schritten in Nr. 5 nötig.
Ein dickes Dankeschön geht an Gunna für die Anpassung der Schritte, fürs Testen und probieren:
Allgemein
Wir installieren notwendige abhängigkeiten
und downloaden den Quellcode
configurieren und kompilieren des Quellcodes
Dann kopieren wir die Libs in den richtigen Pfad
Wichtig: Deaktivert die Autoupdatefunktion von XBMC, sonst wird euer omxplayer wieder mit einer nicht boblight-kompatiblen Version überschrieben.
Anregungen, Unklarheiten und Verbesserungswüsche bitte hier posten.
P.S.
Danke an Uwe, turulu, Wired Life, IckZ, Gunna
Du hast Fragen rund um das Thema Ambilight?