W ostatnim czasie pojawiło się wiele alternatyw do stworzenia oświetlenia typu ambilight do telewizora/monitora. Pod Windowsem korzystać możemy z Atmowin, a pod Linuxem z Bibilight. Pojawiła się jednak nowa alternatywa - Hyperion - która pracuje pod oboma tymi systemami. Poniższy artykuł opisuje, jak uruchomić tego rodzaju układ.
Pod Windowsem i Linuxem oprogramowanie to ma swoje dedykowane pluginy, póki co na Raspberry Pi pluginy Kodi nie działają.
Hyperion umożliwia przejmowanie z dowolnych źródeł sygnału HDMI, co oznacza, że można dopasować ambilight tak do oglądanych filmów, jak i gier czy nawet konsoli w Linuxie.
Plugin AtmoLight wspiera Hyperiona, więc nie jest potrzebny żaden dodatkowy sprzęt do przechwytywania ścieżki wideo - jest ona wysyłana bezpośrednio do Hyperiona poprzez sieć.
Konfiguracja Hyperiona na Raspberry Pi wymaga pewnych podstawowych umiejętności konfigurowania Linuxa, takich jak łączenie się po SSH, ale ponadto jest niezwykle prosta.
Możliwości Hyperiona
* Ambilight dla sygnału HDMI z dowolnego źródła
* Współpraca z wieloma platformami
* Kontrola LED także z poziomu Androiida
* Szybki i precyzyjny pomiar kolorów diod
* Duża ilość opcji konfiguracyjnych
* Wspiera Arduino (Adalight)
Wymagania
Podstawowe:
* Raspberry Pi B+ (inne modele także powinny działać bez problemu)
* Diody LED - mogą to być najpopularniejsze WS2801, ale np. WS2812B są o wiele lepsze, gdyż są gęściej umieszczone na taśmie i mają lepsze parametry. Wsparcie dla diod WS2811/12 wymaga dodatkowych zabiegów, co opisano w rozdziale "dodatkowa konfiguracja".
* Zasilacz 5 V o wydajności prądowej co najmniej 5 A. Do zasilania 218 diod autor projektu zastosował zasilacz 7 A.
Opcjonalnie:
* Szyny do zamocowania diod do telewizora
* Taśma klejąca z rzepem do zamocowania diod do szyn.
Przechwytywanie strumienia wideo
Podczas konfiguracji przechwytywania strumienia wideo skorzystać można z tego poradnika: Link. Warto jednakże zmienić Video Grabber USB na lepszy, na przykład EasyCap Video USB Grabber Fushicai UT007, jest on wspierany przez wszystkie najnowsze wersje OpenElec.
Uwaga
Gdy włączone jest przechwytywanie wideo, ograniczeni jesteśmy technicznie do 50/60 Hz - aby to obejść, można odłączać zasilanie od konwertera HDMI->Composite, gdy nie jest odtwarzany sygnał wideo.
Podłączenie
Jakkolwiek w linkowanych tutorialach opisano, jak zrealizować podłączenia, to autor opisuje, jak zrealizował to w swoim przypadku.
Dla samego Raspberry Pi z WS2801:
LED data -> Raspberry Pi connectors
Zasilanie LED -> zasilacz 5 V, tylko masa łączona jest z masą Raspberry Pi.
Raspberry Pi -> sieć i zasilanie
Raspberry Pi z WS2801/WS2812 i Arduino
LED data -> Arduino
Zasilanie LED -> Zasilacz 5 V, tylko masa łączona jest z masą Raspberry Pi
Arduino -> kabel USB -> Raspberry Pi
Raspberry Pi -> sieć i zasilanie
Raspberry Pi z WS2801/WS2812 i Arduino z przechwytywaniem obrazu na RP
LED data -> Arduino
Zasilanie LED -> zasilacz 5 V, tylko masa łączona jest z masą Raspberry Pi.
Arduino -> kabel USB -> Raspberry Pi
Raspberry Pi -> połączenie USB do stosu przechwytywanego sygnału wideo
Raspberry Pi -> sieć i zasilanie
W żadnym z tych przypadków nie jest wymagane fizyczne podłączenie układu do komputera PC, gdyż wszystkie komendy do Ambilighta nadawane są poprzez sieć (TCP) i/lub przechwytywanie strumienia HDMI.
Wstępna konfiguracja
Korzystamy z OpenElec 4.2, jako że wersja 5.0 nie posiada żadnych dodatkowych funkcji, jakie przydałyby się w konfiguracji Hyperiona.
Krok 1
Jeśli chcemy korzystać z innych diod LED, jak WS2811/12 to musimy wykonać kroki podane niżej i przejść do kroku 2, w innym przypadku podłączamy naszą taśmę LED zgodnie z opisem podanym tutaj: http://techtalk.christian-moser.ch/wordpress/?p=427 (poza krokami 1-3, gdzie opisana jest instalacja Rasbmc, którą lepiej zrealizować korzystając z jednego z tych poradników: http://raspberry-at-home.com/hyperion-on-openelec-it-works lub https://github.com/tvdzwan/hyperion/wiki/Installation-on-RPi-with-OpenELEC
Następnie tworzymy nową konfigurację Hyperiona, korzystając z opisu tutaj: https://github.com/tvdzwan/hyperion/wiki/configuration
Krok 2
Jeśli nie potrzebujemy możliwości przechwytywania strumienia wideo, to możemy opuścić ten krok i przejść dalej. Jeśli chcemy zaimplementować taką funkcję, to możemy skorzystać z opisu tutaj: http://techtalk.christian-moser.ch/wordpress/?p=562, pamiętając aby skorzystać z EasyCap Video USB Grabber Fushicai UT007 zamiast opisanego w poradniku urządzenia.
Krok 3
Opcja 1 - nazwa hosta (łatwiejsza)
W AtmoLight 1.15 dodano możliwość wykorzystywania nazwy hosta Raspberry Pi, dzięki czemu można mieć dostęp do RPi w sieci lokalnej niezależnie od jego IP, które nie musi być statyczne. Na Windowsie wykorzystać do tego można oprogramowanie Apple Bonjour: http://support.apple.com/kb/DL999. Nazwa hosta mDNS podawana jest w formacie: <nazwa>.local
Na przykład domyślna nazwa hosta OpenElec to Openelec.local, dzięki czemu gdy IP się zmieni to AtmoLigh automatycznie uzyska nowe po nazwie hosta.
Opcja 2 - statyczny numer IP.
Upewniamy się, że nadaliśmy RPi statystyczny numer IP, najprościej wykorzystać do tego interfejs XBMC OpenElec: http://wiki.openelec.tv/index.php/OpenELEC_Configuration_Addon#tab=Network
Krok 4
Gdy zainstalowaliśmy Hyperiona i przetestowaliśmy jego działanie, możemy przystąpić do instalacji pluginu AtmoLight dla Mediaportal. Instalujemy go poprzez Mediaportal Extension Manager (wersja 1.14.0.0 i wyżej wspiera Hyperiona ). Po instalacji możemy przystąpić do konfiguracji Mediaportalu i ustawieniu Atmolighta. Naciskamy AtmoLight i wybieramy Config.
W Hyperionie w odpowiedniej zakładce zmieniamy adres IP lub nazwę hosta tak, aby odpowiadała naszemu Rasoberry Pi i zapisujemy. Teraz możemy odtworzyć jakiś film w Mediaportalu i światła powinny się włączyć.
Dodatkowa konfiguracja
Wymagana jest tylko, gdy korzystamy z LEDów innych niż WS2801. Domyślnie oprogramowanie wspiera jedynie układy WS2801 - jeśli chcemy podłączyć inne do naszego Raspberry Pi, musimy dokonać kilku zmian. Jeśli zamierzamy wykonać podobną operację z Arduino, potrzebujemy Arduino Uno R3 lub szybszego (chodzi o prędkość transmisji - musi być wyższa niż 115200 baud). Pełną listę diod, jakie wspierane są przez system znajdziemy tutaj: https://github.com/FastLED/FastLED#supported-led-chipsets
Istnieje wiele poradników, jednakże na początek ten jest bardzo dobry (dla Arduino): http://www.tweaking4all.com/hardware/arduino/arduino-ws2812-led/
Po podłączeniu diod wykonujemy kilka prostych kroków:
1. Instalujemy Ardino IDE (http://arduino.cc/en/main/software)
2. Pobieramy bibliotekę FastLed (https://github.com/FastLED/FastLED/archive/master.zip)
3. Wypakowujemy FastSPI do biblioteki Arduino (w folderze My Documents/Arduino/Libraries)
4. Importujemy do Arduino IDE odpowiedni skecz i zmieniamy w nim ustawienia - rodzaj LEDów, kanały, kolory etc (http://pastebin.com/zhQCRFhd)
5. W niektórych przypadkach zwiększyć musimy wielkość bufora szeregowego w Arduino (opis tutaj: http://www.hobbytronics.co.uk/arduino-serial-buffer-size)
6. Ładujemy sketch na Arduino i sprawdzamy, czy wyświetla wszystkie kolory podczas uruchamiania.
7. Teraz musimy upewnić się, czy prędkość transmisji jest wystarczająca. Najpierw zwiększamy prędkość transmisji na Raspberry Pi, podłączamy go do monitora i włączamy SSH (http://www.htpcbeginner.com/ssh-into-raspberry-pi-for-remote-administration/)
8. Nie ma się co przejmować wykorzystaniem XBMC/Kodi, nie będzie nam ono potrzebne do użytkowania programu.
9. Logujemy się do RPi.
10. Montujemy partycję:
11. Otwieramy konfigurację ładowania systemu:
12. Dodajemy w configu:
13. Zapisujemy naciskając F2 i resetujemy RPi.
14. Teraz możemy zainstalować Hyperiona, korzystając z poradnika (http://raspberry-at-home.com/hyperion-on-openelec-it-works lub https://github.com/tvdzwan/hyperion/wiki/Installation-on-RPi-with-OpenELEC)
15. Tworzymy bazową konfigurację Hyperiona, jakw kroku 4 tutaj: https://christianmoser.me/how-to-build-your-own-tv-ambilight-with-raspberry-pi-and-xbmc/ lub tutaj https://github.com/tvdzwan/hyperion/wiki/configuration.
16. Teraz, jeśli podpięliśmy RPi prawidłowo musimy dokonać podobnych ustawień w pliku konfiguracyjnym Hyoperiona:
W pliku hyperion.config.json zmieniamy następujące linijki:
/dev/ttyACM0 nie zawsze jest domyślne, możemy sprawdzić jaki port działa domyślnie w naszym przypadku korzystając z komendy lsubs na Raspberry Pi.
17. Na tym etapie możemy wyłączyć XBMC.
18. Podłączamy Arduino do 'maliny' i resetujemy Hyperiona.
Gotowe!
Źródło: Link
Pod Windowsem i Linuxem oprogramowanie to ma swoje dedykowane pluginy, póki co na Raspberry Pi pluginy Kodi nie działają.
Hyperion umożliwia przejmowanie z dowolnych źródeł sygnału HDMI, co oznacza, że można dopasować ambilight tak do oglądanych filmów, jak i gier czy nawet konsoli w Linuxie.
Plugin AtmoLight wspiera Hyperiona, więc nie jest potrzebny żaden dodatkowy sprzęt do przechwytywania ścieżki wideo - jest ona wysyłana bezpośrednio do Hyperiona poprzez sieć.
Konfiguracja Hyperiona na Raspberry Pi wymaga pewnych podstawowych umiejętności konfigurowania Linuxa, takich jak łączenie się po SSH, ale ponadto jest niezwykle prosta.
Możliwości Hyperiona
* Ambilight dla sygnału HDMI z dowolnego źródła
* Współpraca z wieloma platformami
* Kontrola LED także z poziomu Androiida
* Szybki i precyzyjny pomiar kolorów diod
* Duża ilość opcji konfiguracyjnych
* Wspiera Arduino (Adalight)
Wymagania
Podstawowe:
* Raspberry Pi B+ (inne modele także powinny działać bez problemu)
* Diody LED - mogą to być najpopularniejsze WS2801, ale np. WS2812B są o wiele lepsze, gdyż są gęściej umieszczone na taśmie i mają lepsze parametry. Wsparcie dla diod WS2811/12 wymaga dodatkowych zabiegów, co opisano w rozdziale "dodatkowa konfiguracja".
* Zasilacz 5 V o wydajności prądowej co najmniej 5 A. Do zasilania 218 diod autor projektu zastosował zasilacz 7 A.
Opcjonalnie:
* Szyny do zamocowania diod do telewizora
* Taśma klejąca z rzepem do zamocowania diod do szyn.
Przechwytywanie strumienia wideo
Podczas konfiguracji przechwytywania strumienia wideo skorzystać można z tego poradnika: Link. Warto jednakże zmienić Video Grabber USB na lepszy, na przykład EasyCap Video USB Grabber Fushicai UT007, jest on wspierany przez wszystkie najnowsze wersje OpenElec.
Uwaga
Gdy włączone jest przechwytywanie wideo, ograniczeni jesteśmy technicznie do 50/60 Hz - aby to obejść, można odłączać zasilanie od konwertera HDMI->Composite, gdy nie jest odtwarzany sygnał wideo.
Podłączenie
Jakkolwiek w linkowanych tutorialach opisano, jak zrealizować podłączenia, to autor opisuje, jak zrealizował to w swoim przypadku.
Dla samego Raspberry Pi z WS2801:
LED data -> Raspberry Pi connectors
Zasilanie LED -> zasilacz 5 V, tylko masa łączona jest z masą Raspberry Pi.
Raspberry Pi -> sieć i zasilanie
Raspberry Pi z WS2801/WS2812 i Arduino
LED data -> Arduino
Zasilanie LED -> Zasilacz 5 V, tylko masa łączona jest z masą Raspberry Pi
Arduino -> kabel USB -> Raspberry Pi
Raspberry Pi -> sieć i zasilanie
Raspberry Pi z WS2801/WS2812 i Arduino z przechwytywaniem obrazu na RP
LED data -> Arduino
Zasilanie LED -> zasilacz 5 V, tylko masa łączona jest z masą Raspberry Pi.
Arduino -> kabel USB -> Raspberry Pi
Raspberry Pi -> połączenie USB do stosu przechwytywanego sygnału wideo
Raspberry Pi -> sieć i zasilanie
W żadnym z tych przypadków nie jest wymagane fizyczne podłączenie układu do komputera PC, gdyż wszystkie komendy do Ambilighta nadawane są poprzez sieć (TCP) i/lub przechwytywanie strumienia HDMI.
Wstępna konfiguracja
Korzystamy z OpenElec 4.2, jako że wersja 5.0 nie posiada żadnych dodatkowych funkcji, jakie przydałyby się w konfiguracji Hyperiona.
Krok 1
Jeśli chcemy korzystać z innych diod LED, jak WS2811/12 to musimy wykonać kroki podane niżej i przejść do kroku 2, w innym przypadku podłączamy naszą taśmę LED zgodnie z opisem podanym tutaj: http://techtalk.christian-moser.ch/wordpress/?p=427 (poza krokami 1-3, gdzie opisana jest instalacja Rasbmc, którą lepiej zrealizować korzystając z jednego z tych poradników: http://raspberry-at-home.com/hyperion-on-openelec-it-works lub https://github.com/tvdzwan/hyperion/wiki/Installation-on-RPi-with-OpenELEC
Następnie tworzymy nową konfigurację Hyperiona, korzystając z opisu tutaj: https://github.com/tvdzwan/hyperion/wiki/configuration
Krok 2
Jeśli nie potrzebujemy możliwości przechwytywania strumienia wideo, to możemy opuścić ten krok i przejść dalej. Jeśli chcemy zaimplementować taką funkcję, to możemy skorzystać z opisu tutaj: http://techtalk.christian-moser.ch/wordpress/?p=562, pamiętając aby skorzystać z EasyCap Video USB Grabber Fushicai UT007 zamiast opisanego w poradniku urządzenia.
Krok 3
Opcja 1 - nazwa hosta (łatwiejsza)
W AtmoLight 1.15 dodano możliwość wykorzystywania nazwy hosta Raspberry Pi, dzięki czemu można mieć dostęp do RPi w sieci lokalnej niezależnie od jego IP, które nie musi być statyczne. Na Windowsie wykorzystać do tego można oprogramowanie Apple Bonjour: http://support.apple.com/kb/DL999. Nazwa hosta mDNS podawana jest w formacie: <nazwa>.local
Na przykład domyślna nazwa hosta OpenElec to Openelec.local, dzięki czemu gdy IP się zmieni to AtmoLigh automatycznie uzyska nowe po nazwie hosta.
Opcja 2 - statyczny numer IP.
Upewniamy się, że nadaliśmy RPi statystyczny numer IP, najprościej wykorzystać do tego interfejs XBMC OpenElec: http://wiki.openelec.tv/index.php/OpenELEC_Configuration_Addon#tab=Network
Krok 4
Gdy zainstalowaliśmy Hyperiona i przetestowaliśmy jego działanie, możemy przystąpić do instalacji pluginu AtmoLight dla Mediaportal. Instalujemy go poprzez Mediaportal Extension Manager (wersja 1.14.0.0 i wyżej wspiera Hyperiona ). Po instalacji możemy przystąpić do konfiguracji Mediaportalu i ustawieniu Atmolighta. Naciskamy AtmoLight i wybieramy Config.
W Hyperionie w odpowiedniej zakładce zmieniamy adres IP lub nazwę hosta tak, aby odpowiadała naszemu Rasoberry Pi i zapisujemy. Teraz możemy odtworzyć jakiś film w Mediaportalu i światła powinny się włączyć.
Dodatkowa konfiguracja
Wymagana jest tylko, gdy korzystamy z LEDów innych niż WS2801. Domyślnie oprogramowanie wspiera jedynie układy WS2801 - jeśli chcemy podłączyć inne do naszego Raspberry Pi, musimy dokonać kilku zmian. Jeśli zamierzamy wykonać podobną operację z Arduino, potrzebujemy Arduino Uno R3 lub szybszego (chodzi o prędkość transmisji - musi być wyższa niż 115200 baud). Pełną listę diod, jakie wspierane są przez system znajdziemy tutaj: https://github.com/FastLED/FastLED#supported-led-chipsets
Istnieje wiele poradników, jednakże na początek ten jest bardzo dobry (dla Arduino): http://www.tweaking4all.com/hardware/arduino/arduino-ws2812-led/
Po podłączeniu diod wykonujemy kilka prostych kroków:
1. Instalujemy Ardino IDE (http://arduino.cc/en/main/software)
2. Pobieramy bibliotekę FastLed (https://github.com/FastLED/FastLED/archive/master.zip)
3. Wypakowujemy FastSPI do biblioteki Arduino (w folderze My Documents/Arduino/Libraries)
4. Importujemy do Arduino IDE odpowiedni skecz i zmieniamy w nim ustawienia - rodzaj LEDów, kanały, kolory etc (http://pastebin.com/zhQCRFhd)
5. W niektórych przypadkach zwiększyć musimy wielkość bufora szeregowego w Arduino (opis tutaj: http://www.hobbytronics.co.uk/arduino-serial-buffer-size)
6. Ładujemy sketch na Arduino i sprawdzamy, czy wyświetla wszystkie kolory podczas uruchamiania.
7. Teraz musimy upewnić się, czy prędkość transmisji jest wystarczająca. Najpierw zwiększamy prędkość transmisji na Raspberry Pi, podłączamy go do monitora i włączamy SSH (http://www.htpcbeginner.com/ssh-into-raspberry-pi-for-remote-administration/)
8. Nie ma się co przejmować wykorzystaniem XBMC/Kodi, nie będzie nam ono potrzebne do użytkowania programu.
9. Logujemy się do RPi.
10. Montujemy partycję:
mount -o remount,rw /flash
11. Otwieramy konfigurację ładowania systemu:
nano -w /flash/config.txt
12. Dodajemy w configu:
#Increase UART speed
init_uart_clock=14745600
13. Zapisujemy naciskając F2 i resetujemy RPi.
14. Teraz możemy zainstalować Hyperiona, korzystając z poradnika (http://raspberry-at-home.com/hyperion-on-openelec-it-works lub https://github.com/tvdzwan/hyperion/wiki/Installation-on-RPi-with-OpenELEC)
15. Tworzymy bazową konfigurację Hyperiona, jakw kroku 4 tutaj: https://christianmoser.me/how-to-build-your-own-tv-ambilight-with-raspberry-pi-and-xbmc/ lub tutaj https://github.com/tvdzwan/hyperion/wiki/configuration.
16. Teraz, jeśli podpięliśmy RPi prawidłowo musimy dokonać podobnych ustawień w pliku konfiguracyjnym Hyoperiona:
\\openelec\Configfiles\hyperion.config.json
lub:
\\<Raspberry IP address>\Configfiles\hyperion.config.json
W pliku hyperion.config.json zmieniamy następujące linijki:
Code (Winbatch):
"name" : "MyPi",
"type" : "adalight",
"output" : "/dev/ttyACM0",
"rate" : 460800,
"colorOrder" : "grb"
/dev/ttyACM0 nie zawsze jest domyślne, możemy sprawdzić jaki port działa domyślnie w naszym przypadku korzystając z komendy lsubs na Raspberry Pi.
17. Na tym etapie możemy wyłączyć XBMC.
18. Podłączamy Arduino do 'maliny' i resetujemy Hyperiona.
Gotowe!
Źródło: Link
Cool? Ranking DIY