DIY Ambilight másképp

írta: szente, 7 hónapja

Született már pár DIY Ambilight projekt bemutató itt az oldalon, de ezekben az írásokban az volt a közös, hogy csak HTPC, vagy egyéb Androidos lejátszó tudott csak lenni a médiaforrás. Ezzel a megoldással, a többitől eltérően, viszont HDMI portról veszi le a videójelet aminek az az előnye, hogy bármilyen médiaforrással működik, legyen az PlayStation, vagy egy olyan médialejátszó, ami zárt rendszerű (pl AppleTV, szolgáltatói médiabox). A TV-vel önmagában viszont ez sem képes működni, mindenképpen kell egy HDMI csatlakozóval rendelkező forrás, tehát ez egy hátrány a Philips gyári megoldásával szemben. Ellenben működnek vele a HDR, Dolby Vision tartalmak, továbbá támogatja a HDMI CEC funkciót is (4K 120Hz-et sajnos nincs lehetőségem tesztelni).

Ennyi bevezető után lássunk egy bevásárló listát. Itt természetesen jóbarátunk az Aliexpress, ha jól sikerül megválogatni a boltokat, akkor akár 2 hét alatt is itt lehetnek az alkatrészek. Egyes esetekben érdemes lehet átfutni a Hardverapró, vagy egyéb hazai webáruházak kínálatát. Egyszerűség kedvéért én minden alkatrészhez Ali-s forrást fogok mutatni.

Szóval a lista:
- Rasberry Pi [link]
- Hozzá egy marék hűtőborda ragasztóval [link]
- Micro SD kártya [link]
- 2db Micro USB tetszőleges kábel hosszal és csatlakozási iránnyal
- HDMI adapter attól függően, hogy hogyan férünk el a házban [link]
- 2db HDMI kábel [link]
- 20A 5V táp [link]
- 4m WS2812 RGB LED szalag (60LED/m) [link]
- LED szalaghoz sarkok (3 pin 10mm) [link]
- HDMI Videó rögzítő 4K 60HZ U2-es verzió [link]
- 5V 4010 Ventilátor [link]
- PC ITX ház [link]
- Raspberry GPIO tüskesorhoz csatlakozók [link]
- PC alaplapi távtartó, csavarral, alátéttel [link]
- Forrasztópáka, ón, zsugorcső, multiméter, kártyaolvasó, PC tápkábel

Részletezzük kicsit ezt a listát.
Ez csak egy iránymutatás, mindenkinek a saját képzeletére van bízva, hogy mit és honnan szerez be. Én pl a Raspberry-t a Jófogáson szereztem be, az Ali-s ár majdnem feléért, akril házzal, hűtőbordával, adapterrel és egy 32GB-os Micro SD-vel, de egyesek szerint Raspberry Pi Zero is elég lehet. A Micro USB kábeleket itthon találtam és mivel egyre több a Type-C-s eszköz, így feleslegesek voltak. Nyilván a nagyrészünknél HDMI kábel is akad raktáron. :)
GPIO csatlakozó is akadhat otthon, mivel ugyan az az egy pines csatlakozó, ami a számítógép alaplapján is megtalálható USB kivezetésként, vagy a reset/ ki/be kapcsológomb csatlakozójaként. Ha nincs ilyen alkatrészünk otthon, akkor akár a frissen vásárolt házunkról is le lehet vágni, feltéve, ha nem szeretnénk a rajta lévő USB kivezetést pl telefontöltőnek használni. De a házikót se muszáj megvenni, nyugodtan fel lehet ragasztani mindent a TV hátuljára. Vagy hogy ha egyszer megunjuk ezt a projektet és nem fontos, hogy könnyen újra hasznosítható legyen a ház, akkor választhatunk akár egy kompaktabb fajtát:[link]
Szóval a felsorolt listától nem kell megijedni, bőven lehet egyszerűsíteni és olcsósítani, vagy akár bővíteni az igényektől függően.

Az én konfigom a következő képpen néz ki:

Belül nem túl szép, de ez szerencsére kívülről nem látszik. :))

A ház meglévő távtartóira rászereltem egy alulemezt, erre szereltem a többi alkatrészt, így nem kellett semmit se módosítani a házon. A HDMI képrögzítőnek elméletileg nem kell külön táp, elketyeg úgy is, hogy ha csak az USBről kapja az áramot, de mivel volt itthon egy csomó Micro USB kábelem, inkább biztosra mentem. Ugye mivel (majdnem) minden eszköz ami kell a projektehez 5V feszültséget kér, ezért egyetlen táppal tudjuk hajtani az egész rendszert. A 20A-s táp lehet, hogy soknak tűnik, de nekem az 55"-os TV-mhez 224 LED-re (ez kicsit kevesebb, mint 4m) volt szükségem és ez a program szerint 14.8A áramerősséget vesz fel. A maradék 5A-n osztozik a Raspberry és a videórögzítő.
Ugye az előbb említettem, hogy majdnem minden eszköz 5V-ot kér. Nos, a Raspberry-nek hivatalosan 5.1V kell a boldogsághoz, de tapasztalataim szerint inkább 5.2V kell neki. A tápegységen egy kis csavarral lehet állítani a kimenő feszültséget, úgy hogy ezt érdemes az említett értékre állítani a stabil üzem érdekében. Ez a kis többletfeszültség eddig nem okozott gondot sem a LED szalagban, sem a videó rögzítőben.
Az átláthatóság jegyében itt egy sematikus rajz:

Arra figyeljünk, hogy ha menetközben megszűnik a videórögzítő áramellátása, vagy kihúzzuk a HDMI kábelt, akkor nem fog újra megfelelően működni mindaddig, amíg újra nem indítjuk a Rapsberry-t. A hibajelengség az lesz, hogy FullHD helyett csak 720x480-as felbontásban fog működni a felvevő, így csak a megjelenített kép felére fog reagálni a világítás.

Ha összeállt a hardver, akkor jöhet a szoftver része.
Azt előre szögezzük le, hogy nem vagyok egy Linux guru, örülök, hogy ennyit meg tudtam csinálni, szóval, ha esetleg tudtok jobb, biztonságosabb megoldást, akkor az jöhet kommentbe.
Először is a Raspberry Pi Imager-t kell letöltenünk, amivel a HyperBian-t tudjuk az SD kártyára flashelni.
A HyperBian egy grafikusfelület nélküli operációsrendszer, ami már előre telepítve tartalmazza a Hyperion alkalmazást. Ez az app fogja a LED szalagunkat vezérelni.
Próbáltam a Raspberry Pi OS alól futtatni a Hyperion alkalmazást, mert úgy még is csak könnyebben használható és univerzálisabb lenne a rendszer, de bármit csináltam, mindig csak az első pár LED világított.
Szóval, ha felkerült az SD kártáyra a rendszer, akkor még ne helyezzük be azt a Raspberry-be, hanem engedélyeznünk kell a WiFi-t. Ehhez létre kell hozunk egy wpa_supplicant.conf nevű fájlt, aminek a következőket kell tartalmaznia (értelem szerűen átírva azt ami ránk vonatkozik):
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=GB

network={
ssid="YOUR_SSID"
psk="YOUR_PASSWORD"
key_mgmt=WPA-PSK
}

Ez után mehet végre a kártya a Pi-be. Amúgy lehet, hogy én vagyok a noob, de ez nekem nem működött. :N
Végül ez lett a megoldás, hogy miután bebootolt a rendszer és megadtuk a felhasználónév (hyperion) és jelszó (ambientlight) párost, kiadjuk a sudo rfkill unblock wifi parancsot és ez után tudjuk majd beírni az SSID-jelszó párost a Network Options menüpontban.
Ha már itt járunk a beállításokban, akkor engedélyezzük az automatikus bejelntkezést, hogy pl egy áramszünet esetén újra felálljon magától a rendszer, mert ameddig nem jelentkezünk be, addig sajnos nem fut a Hyperion sem. Menjünk a System Options menübe, válasszuk a Boot/Auto Login menüt, majd végül a Console Autologin részt. Ha ezzel megvagyunk és újraindult a rendszer, akkor már csak root jogot kell adni a Hyperionnak. Ehhez gépeljük be a következő parancssort:
sudo chmod +x /usr/share/hyperion/scripts/updateHyperionUser.sh && sudo updateHyperionUser -u root

Most már a nehezével készen vagyunk, most már csak be kell állítani, hogy hány LED-ünk van a TV-n, milyen elrendezésben és mehet a móka. Ehhez derítsük ki, hogy milyen IP címmel kapcsolódik a Pi a hálózatunkhoz és üssük be egy böngészőbe a http://raspberryipcíme:8090 címet és be is tölt a Hyperion kezelőfelülete.
Első lépésként engedélyezzük az USB-ről történő adatgyűjtést:

Utána állítsuk be a TV hátuljára ragasztott LED-eink számát és a LED szalag típusát illetve RGB byte rendjét:

A következő fülön pedig azt tudjuk beállítani, hogy melyik oldalon hány LED-ünk van, illetve hol helyezkedik el az első LED, továbbá, hogy merre halad a LED szalag iránya:

Ezzel készen is vagyunk az alapbeállításokkal, de azért nyugodtan nézzünk körül a menükben, mert még rengeteg mindent be lehet állítani a programon belül.
Ha minden jól sikerült, akkor hasonló látvány fogadhat minket:

És hogy milyen az élmény? Szerintem a Philips üzenete, hogy "mindent megváltoztat", erős túlzás. Ahogy a neve is ígéri, ez egy hangulatvilágítás. Nem mondom, hogy must have, de ha nem hiányzik a kasszából az a pénz amit erre költöttünk, akkor szerintem nyugodtan belevághatunk, mert jópofa és látványos (nappal azért jóval kevésbé). Az, hogy a filmezés élményéhez mennyit ad hozzá, inkább mindenki döntse el saját maga...