Blog (9)
Komentarze (978)
Recenzje (1)

Ambilight czyli dyskoteka zza TV DIY

@FaUstAmbilight czyli dyskoteka zza TV DIY26.01.2015 10:32

Z Ambilight po raz pierwszy zetknąłem się 4 lata temu kiedy współlokator sprawił sobie telewizor Philipsa. Wyglądało to świetnie - obraz "wylewał" się z TV dodatkowo nie męcząc wzroku - fajny bajer. Niestety jako posiadacz sprzętu firmy Sony mogłem sobie o tym pomarzyć do czasu aż zacząłem robić porządki w szufladzie i znalazłem zakurzone Arduino. Chwila zastanowienia i w ruch poszło google.pl z zapytaniem "ardunio projects". Na stronie adafruit.com trafiłem na projekt Adalight który za pomocą diod WS2801 [img=ws2801]

Arduino UNO

i odpowiedniego softu pozwala na stworzenie uniwersalnego podświetlenia. Przeczesanie aliexpress i DXa zajęło chwilę - zamówienie zostało złożone 15 grudnia. Niestety ze względu na "christmas break" i wysyłkę LEDów przez Pekin (Ci którzy zamawiają w Chinach wiedzą, że w Bejingu paczki potrafią leżeć nawet miesiąc) zestaw elementów został skompletowany dopiero 19 stycznia.

Montujemy

Po rozpakowaniu pierwsza konsternacja - zamiast WS2801 zamówiłem diody WS2811

które nie posiadają osobnej linii CLOCK, przez co projekt z adafruit był bezużyteczny.

Kolejny kwadrans z ulubioną wyszukiwarką i rozwiązanie znalezione TUTAJ. Najpierw test (zamieszczony we wpisie) aby upewnić się że "majfrend" z dalekiego wschodniego kraju nie wysłał uszkodzonych światełek. Wszystko przebiegło pomyślnie, więc pora na konfigurację i montaż. Względem schematu

dokonałem pewnej zmiany - linii GND z Arduino nie doprowadzałem do do zasilacza - jeśli to źle niech mnie ktoś poprawi :)

Programowanie kontrolera to standardowe działania polegające na wklejaniu w edytorze kodu i skompilowanie go na Arduino Z niewiadomych przyczyn oryginalny sketch z opisu nie działał więc skorzystałem z tego który po kilku próbach zaczął działać.

W kodzie trzeba zwrócić uwagę na linijki:

[code=] #define NUM_LEDS 240 należy podać liczbę diod, #define PIN 13 PIN do którego podłączyliśmy linię danych #define serialRate 115200 prędkość danych portu COM (należy taką samą ustawić w programie [/code]

Aby sterować diodami należy do Arduino IDE dodać bibliotekę FastLED. Dodanie biblioteki to wskazanie ściągniętego pliku ZIP po wybraniu opcji Add Library.

Diody zostały zamontowane do kartonu za pomocą trytytek (albo ściągaczy jak kto woli ;)). Pamiętajcie aby odseparować luźne przewody +5V i GND będące po drugiej stronie diod - szkoda zwarcia i światełek. Ponadto należy pamiętać o odpowiednim zasilaczu - 1 dioda pobiera 60mA, czyli w przypadku 50 szt jakie zastosowałem w projekcie wystarczy 3A a najlepiej mocniejszy (posiadam 4A).

W przyszłości karton zostanie zamieniony na cienką płytę pilśniową lub drewniane obramowanie. Montaż do wyświetlacza był w miarę prosty - telewizor powieszony na ścianie, dodatkowo z tyłu mało wystających elementów oraz brak otworów wentylacyjnych, więc łatwo poszło.

Odpalamy

Do sterowania podświetlaniem użyłem programu boblightd (wersja dla Windows - pingwiniarze sobie znajdą ;) ), oraz konfiguratora z wspomnianego wpisu. Przy konfiguracji należy zwrócić uwagę na:

  • rodzaj diod - moje okazały się GRB - czyli zamieniony czerwony z zielonyn - trzeba pozamieniać kody kolorów,
  • kierunek rozmieszczenia lampek,
  • prędkość transmisji (identyczna jak projekcie Arduino),
  • port COM pod którym zameldował się kontroler,
  • tzw Magic Word - ciąg służący do inicjalizacji taśmy LED

Przy poprawnej konfiguracji i uruchomieniu boblightd nasze oświetlenie powinno zaświecić po kolei kolorami czerwonym, niebieskim i zielonym. Jeśli tak się stało i konsola nie wskazuje błędów (nie zamykamy okienka z boblightd!) możemy przejść do konfiguracji Kodi (XBMC). Aby korzystać z podświetlenia musimy zainstalować plugin boblight z repozytoriów (znajduje się w domyślnym repo). Podczas inicjalizacji ujrzymy kolejną dyskotekę.

W tym momencie wszystko gotowe - można dokonfigurować prędkość działania i inne parametry podświetlenia bezpośrednio w ustawieniach wtyczki. Aby móc konfigurować/wyłączać, włączać podświetlenie w trakcie oglądania filmu wystarczy dodać w konfiguracji XBMC następujący wpis w sekcji FullscreenVideo w pliku keyboard.xml (znajdźcie sami - czasem jest w katalogu z programem, czasem z profilem)


<B>Addon.OpenSettings(script.xbmc.boblight)</B>
<b>Addon.OpenSettings(script.xbmc.boblight)</b>

Na koniec skrypt który odpali boblightd, a potem XBMC (ścieżki dopasujcie sami):

start "boblightd" /MIN C:\boblightd\boblightd.exe -c c:\boblightd\boblight.conf -f

TIMEOUT /T 1

"C:\Program Files (x86)\XBMC\xbmc.exe"

Aby używać podświetlenia w innych aplikacjach musimy skorzystać z innego programu - AmbiBox, lub Prismatik.

Na koniec prezentacja efektów

Koszt projektu 170 zł (wg obecnego kursu dolara):

  • Diody LED WS2811 50 LED 65 zł
  • złączki do zasilania 3,5 zł
  • zasilacz 5V 4A 33 zł
  • Arduino UNO 65 zł
  • kabel USB 3 zł

Można zejść z ceny biorąc np klon Arduino NANO za 25-30 zł, liczyć na przeceny w DX,Aliexpress etc :)

TODO

  • kalibracja kolorów boblightd,
  • wymiana kartonu na coś innego,
  • podmiana arduino UNO na NANO,
  • przestawienie diod w rogach - tej chwili kąty są słabo oświetlone
Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.