Stwórz niepowtarzalny, wieczorny klimat. Oświetlenie ambient dla telewizorów na bazie Raspberry Pi

Share on facebook
Share on twitter
Share on linkedin
Czas czytania: 4 min.

Producenci telewizorów wprowadzają często różne udogodnienia, które mają ułatwić użytkownikowi rozrywkę. Często jednak wprowadzane są funkcje typowo estetyczne. Jedną z takich funkcji jest oświetlenie ambient. Oświetlenie ambientowe tworzy na ścianie za telewizorem poświatę, która zmienia się w zależności od wyświetlanego aktualnie obrazu. 

Oczywiście możemy kupić telewizor z systemem ambient, jednak my taki system wykonamy samodzielnie!

Ambient light TV telewizor oświetlenie

Czego potrzebujemy do wykonania projektu?

Do budowy systemu ambient potrzebujemy kilku podzespołów. Niezbędny będzie minikomputer Raspberry Pi wraz z zasilaczem i kartą pamięci. Do pobrania obrazu z urządzenia, które przesyła obraz do telewizora niezbędny będzie splitter HDMI, czyli urządzenie, które rozdzieli sygnał na dwa wyjścia. Po rozdzieleniu sygnału musimy go konwertować na sygnał analogowy – tutaj niezbędny będzie konwerter HDMI -> AV. Sygnał do maliny dostarczy konwerter AV -> USB. Do stworzenia oświetlenia ambient potrzebujemy również źródła światła – my stosujemy diody adresowalne APA102 w formie wygodnego paska. Lista produktów dostępna jest poniżej:

Kliknij w przycisk poniżej, aby wyświetlić pełną listę zakupów:

Oprócz elementów elektronicznych przyda nam się lutownica, kilka przewodów do połączenia fragmentów taśmy, jeden przewód z żeńskim goldpinem, cążki do obcinania przewodów i oczywiście chęć stworzenia własnego systemu iluminacji świetlnej!

Konfiguracja wstępna Raspberry Pi

Abyśmy mogli ustawić nasze oświetlenie, musimy zacząć od przygotowania Raspberry. Na początku instalujemy system i dodajemy pliki, które umożliwią połączenie się z Wi-Fi i za pomocą SSH. Później łączymy się z RPi za pomocą Putty i aktualizujemy malinę (cały zabieg wykonujemy tak, jak w poradniku o systemie inteligentnego domu), znajdujemy się w tym momencie:

Wygląd terminala w programie Putty po zalogowaniu.

Po zainstalowaniu i zaktualizowaniu software maliny możemy odpiąć ją od zasilacza i zająć się bardziej namacalną częścią projektu.

Montaż diod na telewizorze

Aby efekt był widoczny, musimy zamocować diody na telewizorze. Oczywiście zaczynamy od przecięcia paska na długości odpowiadające długości boków telewizora. Pamiętajmy, że na górnym boku musi być tyle samo diod co na dolnym, a na lewym tyle samo co na prawym. Po wykonaniu cięć możemy przylutować do taśmy przewody, już tutaj warto skupić się na ułożeniu taśmy. Na taśmie nadrukowane są strzałki. Strzałki po przyklejeniu taśmy muszą być ułożone zgodnie z kierunkiem ruchu wskazówek zegara, tak jak na grafice poniżej.

Kierunek połączenia diod.

W miejscu, gdzie na grafice powyżej jest “jedynka”, powinny znaleźć się pierwsza dioda i przewody do sterowania i zasilania całej taśmy. Możemy przylutować do czarnego przewodu GND z naszego zasilacza 12V, do czerwonego lutujemy zaś VCC. Uważni zauważą, że zostaną nam dwa przewody – tutaj musimy wziąć gotowe przewody z żeńskimi goldpinami, przeciąć je przy jednym z gniazd i przylutować go do wolnych przewodów z taśmy. Przewód zielony to “Clock Pin”, a żółty to “Data Pin”.

Jak zabrać obraz tak, aby nikt nie zauważył?

To  bardzo prosty zabieg. Zacznijmy od podłączenia do wejścia splittera przewodu HDMI połączonego ze źródłem obrazu. W moim przypadku źródłem obrazu jest konsola, na której zainstalowane są potrzebne serwisy z materiałami wideo. Jeśli używacie dekodera lub odtwarzacza Blu-Ray/DVD, to podłączcie przewód, który podaje sygnał z używanego urządzenia. Do obu wyjść splitera podłączamy przewody HDMI. Jeden podłączamy do wcześniej używanego złącza HDMI w telewizorze, a drugi do konwertera. W konwerterze mamy trzy wyjścia: jest to CVBS, najczęściej oznaczane kolorem żółtym, Audio(L) oznaczone kolorem białym i Audio(R) oznaczone kolorem czerwonym. Do złącz podłączamy łączniki, a do nich złącza grabbera wideo. Następnie złącze USB grabbera podłączamy przez przewód OTG do naszej maliny. Splitter i konwerter HDMI -> AC wymagają zasilania: w zestawie z jednym, jak i drugim urządzeniem są przewody zakończone złączem USB, więc podłączamy je do huba. Jeśli mamy aktywnego huba USB o dużej wydajności, to możemy podłączyć do niego malinę. Gdy posiadamy pasywnego huba, to wówczas podłączamy tylko splitter i konwerter HDMI -> AV. Splitter i konwerter pobierają bardzo mało prądu, więc możemy pokusić się o podłączenie huba pasywnego do złącza USB w naszym telewizorze. Wydaje się skomplikowane? Po zerknięciu na schemat poniżej wszystko będzie oczywiste.

Schemat połączenia urządzeń za telewizorem.

Po wykonaniu połączeń ze schematu możemy podłączyć goldpiny żeńskie wychodzące z taśmy. Do pinu 19 (nie mylić z GPIO19) maliny podłączamy “Data Pin”, a do pinu 23 podłączamy “Clock Pin”. Jeśli nie wiemy gdzie się znajdują, to poniżej znajdziemy małą podpowiedź:

Rozłożenie pinów GPIO w Raspberry Pi.

 

Gotowe? Podłączymy teraz całość do prądu i zakończmy konfigurację.

Konfiguracja oprogramowania

Po wykonaniu wszystkich połączeń przechodzimy o krok dalej. Musimy teraz pobrać program HyperCon, co najlepiej zrobić poprzez oficjalną stronę projektu. Do uruchomienia niezbędna będzie Java, którą możemy pobrać tutaj. Po pobraniu klikamy dwa razy przyciskiem myszy na plik, a naszym oczom ukaże się poniższy obraz.

Menu programu HyperCon.

Klikamy teraz na zakładkę “SSH”. W “Target IP” wpisujemy adres lokalny naszej maliny, po czym klikamy “Connect”. Po rozpoczęciu połączenia klikamy “Show Traffic”; jeśli ukaże nam się obraz taki, jak poniżej, to znaczy, że HyperCon połączył się z naszą maliną.

Komunikat sygnalizujący poprawne połączenie się z maliną.

Teraz zainstalujmy Hyperiona na malinie. Aby to zrobić klikamy na przycisk “Inst./Upd. Hyperion”. Pokaże nam się okno wyboru, klikamy “Yes” i czekamy kilka chwil, a po zakończeniu instalacji w oknie terminala pokaże nam się:

Po zainstalowaniu klienta Hyperiona na malinie możemy przejść do stworzenia pliku konfiguracyjnego. Na początku kliknijmy na zakładkę “Hardware”. W polu “Device” musimy wybrać taśmę led, z której będziemy korzystać. W naszym przypadku jest to APA102. Niżej w “RGB Byte Order” zmieniamy z “RGB” na “BGR”.  W polu “Construction” uzupełniamy informacje o naszych diodach. W “LEDs horizontal” wpisujemy, ile diod jest na górnym boku telewizora (oczywiście na dole jest taka sama ilość), w moim przypadku jest to 47 diod. W “LEDs Left”  i “LEDs Right” wpisujemy, ile diod jest po prawej i lewej stronie, w moim przypadku jest to 21 diod. W “1st LED offset” musimy wpisać wartość, która będzie korygować położenie diod, aby ustawienie było prawidłowe. W lewym dolnym rogu symulacji ekranu musi być widoczne “0”. W “Blackborder Detection” zaznaczamy checkboxa “Enabled”, a w “Threshold [%]” wpisujemy 5. Konfiguracja zakładki “Hardware” powinna wyglądać jak poniżej:

Prawidłowa konfiguracja zakładki “Hardware”.

Przejdziemy teraz do zakładki “Process”, tutaj zmieniamy tylko jeden parametr, mianowicie “Update Freq. [Hz]”. Parametr ten decyduje o próbkowaniu obrazu. Konsola przesyła obraz z prędkością 30 kl/s, więc musimy ustawić wartość “30”. Jeśli jednak korzystacie z odtwarzacza, który przesyła obraz z prędkością 60 kl/s, to możecie zwiększyć tą wartość.

Zmiana częstotliwości próbkowania.

Po zmianie częstotliwości przechodzimy do zakładki “Grabber” i w “Internal Frame Grabber” odznaczamy checkboxa “Enabled”, a w polu “GrabberV4L2” zaznaczamy go.

Teraz wracamy do zakładki “SSH”, na dole klikamy na przycisk “Create Hyperion Configuration” i wskazujemy lokalizację zapisu. Po zapisaniu pliku konfiguracyjnego w polu “SSH – Send Hyperion Configuration” klikamy na “Local Config Path”, wskazujemy lokalizację zapisanego wcześniej pliku i klikamy “Send Config”. Ostatnią operacją, którą musimy wykonać, jest kliknięcie “Start”. Teraz za naszym telewizorem powinna ukazać się poświata taka jak na zdjęciu poniżej:

Gotowe! Teraz możesz cieszyć się niepowtarzalnym klimatem w swoim pokoju. 

Podziel się:

Share on facebook
Share on linkedin
Share on twitter
Marcin Lesiński

Marcin Lesiński

Miłośnik elektroniki, druku 3D i nauk stosowanych, swoją wiedzę gromadzi od 14-tego roku życia. W Botlandzie tworzy projekty i poradniki dla klientów, a w wolnym czasie zajmuje się automatycznymi uprawami i prototypowaniem. Fan muzyki rockowej i brytyjskiego kina.
Marcin Lesiński

Marcin Lesiński

Miłośnik elektroniki, druku 3D i nauk stosowanych, swoją wiedzę gromadzi od 14-tego roku życia. W Botlandzie tworzy projekty i poradniki dla klientów, a w wolnym czasie zajmuje się automatycznymi uprawami i prototypowaniem. Fan muzyki rockowej i brytyjskiego kina.

Zobacz więcej:

Ciekawostki
Oskar Pacelt

Nowości w Botland #23

23. odcinek Nowości w Botland, a w nim między innymi minikomputer Odyssey Blue.

2 Komentarze

  • A w jaki sposób ‚zabrać’ obraz jeśli korzystamy z np. netflixa w smart TV?

    • Do aktywacji efektu ambient niezbędna jest transmisja obrazu przez przewód HDMI, który musi być wpięty do Raspberry Pi. Niestety nie ma możliwości aktywowania tej funkcji bezpośrednio z telewizora.

Dodaj komentarz