Zenelejátszó Raspberry Pi alapokon 1.

Kétrészes cikkben mutatom be egy Raspberry Pi alapú hálózati zene- és CD-lejátszó építését. – írta: Oldmobil, 11 éve

Az alkatrészek

Kétrészes cikkben mutatom be egy Raspberry Pi alapú hálózati zene- és CD-lejátszó építését. Az első részben a koncepciót, az alkatrészeket és a fejlesztés első lépéseit veszem sorra, a másodikban pedig a konkrét építést és a végső simításokat.

Otthoni zenehallgatásra már több mint két éve egy korábbi Logout cikkben bemutatott Atom+Ion HTPC-t használok, amelyen a népszerű médiacenter program, az XBMC fut. Egy iPod Touch és a rajta futó XBMC távvezérlő alkalmazás segítségével választom ki a zenéket és vezérlem a lejátszást WiFi-n keresztül, így könnyen, egyszerűen, és főként a tévé bekapcsolása nélkül működik a dolog. A zenék egy NAS-on vannak, így nem csak erről az eszközről lehet elérni őket. A megoldás tökéletes, az egész család megelégedéssel használja, kivéve egyetlen dolgot: kicsit túlzásnak tartom, hogy egy komplett HTPC – még ha az az Intel Atom platformnak köszönhetően alacsony fogyasztású is – menjen akár napi több órát is mindössze a zenehallgatás kedvéjért. Illetve az alaplapi hangkártya hangja sem ideális, elkelne ennél egy kicsit jobb. Megszületett a döntés, hogy bár a HTPC marad, mert kitűnően lehet rajta filmet nézni, kell építeni egy alacsonyabb fogyasztású és jobb hangú lejátszót. Persze maga az építés is szépsége vonzott.

A koncepció
Járt utat járatlanért ne hagyj el – tartja az elcsépelt, de igaz mondás. Az XBMC és a távvezérlésére szolgáló iPod Touch remek párost alkot, nem cserélném le őket semmi másra, így mindenképp valamilyen XBMC-t futtatni képes eszköz kellett. Szeretem, ha a készülék előlapján lévő fizikai gombokkal is vezérelhető a lejátszás, illetve ha meg is jelenik egy kijelzőn az adott előadó neve és a szám címe, így gondolni kellett a nyomógombok és az alfanumerikus LCD kijelző illesztési lehetőségeire is. Igaz, nem túl gyakran, de hallgatok CD-ket is, így szükség volt optikai meghajtó csatlakoztatási lehetőségre. Ha már van optikai meghajtó és nyomógomb az előlapon, elegáns lenne, ha mondjuk gombnyomásra be tudná a készülék rippelni a CD-t az előre megadott hálózati mappába. Az sem lenne hátrány, ha a hang végül egy jó minőségű külső hangkártyán át jönne. Szükség lesz még tápegységre, néhány apróságra és persze egy donor készülékre, amelynek a házába beköltözik majd az új rendszer. Lássunk tehát sorban minden alkatrészt!

Raspberry Pi
Ebben a cikkben nem térek ki a Raspberry Pi nevű panelszámítógép bemutatására, aki szeretne, olvasson utána. Mindenesetre ideális megoldásnak tűnt az igények kielégítésére. GPIO portjáról meghajtható az LCD és kezelhetők az előlapi gombok, nagyon alacsony a fogyasztása, USB interfészen bármi csatlakoztatható hozzá. Vannak rá jó Linux disztribúciók, főként Debian alapokon és van rá kulcsrakész XBMC, így ezzel sem kell vesződni. Én ez utóbbit, azaz a RaspBMC-t választottam. Ami a legfontosabb, immár hatalmas felhasználói közösség van mögötte, így számos programozási példa és megoldás található az interneten. A netes leírások és saját tapasztalataim szerint is elkel egy-egy hűtőborda a melegedő IC-kre, ide tökéletesek az öntapadós ragasztós videókártya memóriachip hűtők. A felragasztáskor arra kell ügyelni, hogy vannak olyan SMD kondik, amelyek magasabbak, mint az IC-k, ezekhez ne érjen hozzá a bordák alja és oldala.

Bár maga a lap mindössze 700 mA-t fogyaszt, minden, amit USB-n és a GPIO port tápfesz lábain rádugunk, pluszként jelenik, meg, így minimum 1000 mA-es (1 A-es) tápegység szükséges hozzá. Én a fejlesztés alatt egy 1000 mA-es mobiltöltőt használok, a végleges kiépítésben a további fogyasztók miatt egy 2 A körüli táp lesz. Az operációs rendszer egy 8 GB-os Class 6-os Verbatim SDHC kártyára került.


[+]


[+]

Egy sima Raspberry kb. 12 000 forintba kerül, én a MálnaPC-től rendeletem a sajátom, a hűtőbordák pedig egyenesen Kínából érkeztek, sajnos csak 8 db-os csomagban volt, de így is csak 3 dollárba került az egész postával együtt.

LCD kijelző
A már említett HTPC-ben 2x16 karakteres kék háttérvilágítású LCD kijelzőt építettem, ezt több szempontból sem vált be. Az éles kék színt kellemetlennek találtam, ráadásul a szem fiziológiai adottságai miatt, ha már kicsit rosszabbul lát az ember távolabbra, akkor zavaróbbnak, életlenebbek látja a látható spektrum szélén elhelyezkedő kék színt, mint például a közepén található zöldet. A 16 karakter széles kijelzőn sok szám címe csak scrollozva fért el, így a mostani projekthez 2x20 karakteres és sárgászöld kijelzőt kerestem. A karakteres LCD-knél kváziszabványként elterjedt a Hitachi HD44780 vezérlők alkalmazása, ezekkel a legkönnyebb dolgozni, adott hozzájuk minden driver, így érdemes ilyet keresni.


[+]

A HD44780 kompatibilis kijelző vezérléséhez összesen hat adatvonal szükséges, így bőven marad a Raspberry GPIO portján szabad hely a többi funkciónak. Persze más LCD-vel is megoldható a dolog, de ha lehet, akkor legyen a lehető legtöbb dolog egyszerű. Az LCD telepítéséhez és bekötéséhez itt található leírás. Ezt az LCD-t a Vaterán vásároltam használtan 1500 forintért, de 2000-4000 forintért sok helyen újonnan beszerezhető hasonló, akár Kínából is rendelhető.

Optikai meghajtó
Sokat gondolkoztam, hogy a fogyasztás minimalizálásának érdekében vegyek-e egy notebook ODD-t, de végül találtam itthon egy ősrégi, de jól működő CD-ROM-ot (NEC Multispin 8V), amely talán még jobb is, mint egy mai modell.


[+]


[+]

A régi NEC CD olvasókról elég jókat írnak a neten, sokak szerint nagyon jó konstrukciójú, alacsony jitterű, megbízható eszközök. Mivel ez még PATA eszköz (a Raspberryn pedig se SATA, se PATA csatlakozó nincs), szükség van egy PATA-USB átalakítóra. Ez ma már párezer forintos tétel, de szerencsére volt itthon egy kiszolgált USB-s külső Freecom DVD író, amelyben az optikai egység ment tönkre, így ki tudtam szerelni belőle az átalakítót. Ez 12 V-os tápot igényel, a későbbiekben ezt majd figyelembe kell venni a tápellátás tervezésekor. A CD az itt látható képen már eltávolított előlappal szerepel.

Készülékház
Mivel a készülék a nappali szobában fog működni, mindenképp esztétikus házra van szükség, logikusan egy hibás CD vagy DVD lejátszó házára. A HTPC-hez anno normál szélességű CD lejátszó házat kerestem, hogy beleférjen az ITX-es alaplap, a táp, az SSD, meg az optikai meghajtó, most viszont elég egy keskenyebb ház is. Mindenképp alumínium előlaposra gondoltam, mert nem nagyon szeretem a műanyag előlapos és főleg a fekete készülékeket. A szerencse a Vaterán mosolygott rám egy hibás Scott DVD lejátszó képében. A gyártó nem a minőségi készülékeiről híres, de az MDX-i90 nevű mini tornyukban legalább a külsőre figyelmet fordítottak. Így a gyári fotón egész vonzónak tűnik:


[+]

A Vaterán csak a DVD lejátszót kínálták, ami tökéletesen megfelelt céljaimnak: alu profil előlap, acéllemez ház, előlapi USB aljzat és ami a legfontosabb, megfelelő méretű kijelzőablak. A 2x20-as LCD hasznos felülete pont 1-1 mm-rel kisebb minden oldalon, mint az ablak, így pont látható lesz az egész. A DVD teljes belsejét kidobtam. Kipróbáltam, hátha a tápját fel tudom használni, mert volt rajta 5 és 12 Voltos ág, de egyrészt igénytelennek tűnt másrészt 12 helyett 10,9 voltot adott le még mérsékelt terheléssel is, így inkább ettől is megváltam.

Hangkártya
A Raspberry alaplapi hangkártyája még a mostani HTPC-m ASRock alaplapján találhatónál is gyalázatosabb, így használata szóba sem jöhetett. Ki lehet még hozni a hangot HDMI kimeneten keresztül, de nincs házimozi erősítőm, ami ezt fogadni tudná. "Noname" USB hangkártyának semmi értelme, de szerencsére kéznél van egy Sound Blaster Audigy 2 NX, amit még egy régebbi projektemhez szereztem be.


[+]

Ennek már teljesen vállalható a hangja és szabvány USB hangeszköz lévén a Linux alatti támogatással sem lesz probléma. Annak idején 9000 forint körül vettem használtan. Ez azonban külső tápos, azaz biztos, hogy több az áramfelvétele, mint amit az USB port szabvány szerint biztosít (500 mA). A tápegysége 1 A-es, ez nyilván egy kissé túltervezett érték, még nem mértem, de reálisan 600-800 mA körül alakulhat az áramfelvétele. Jó lenne egy szintén jó minőségű, de alacsonyabb áramfelvételű USB hangkártyát találni, persze megfizethető áron, ha sikerül akkor az lesz, ha nem, akkor marad ez. Ezt a tápegység tervezésekor persze figyelembe kell venni.

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt