četvrtak, 18 aprila, 2024
Hardver

Raspberry Pi

Autor: Gavrilo Prodanović

Raspberry PI je većini već dobro poznat kao računar po cijeni od 25$ za model A ili 35$ za nešto bolji model B. Model B je bolji od modela A po tome što ima jedan USB port više, ethernet ulaz i 256MB RAM-a više od svog starijeg brata. U tekstu ćemo se baviti samo modelom B, reći ćemo osnovne specifikacije ukratko, a bavićemo se i o praktičnoj primjeni i njegovim manama.

Raspberry PI sastavljen je na maloj pločici koja stane na dlan. Njegov SoC (System on Chip) dolazi od Broadcom-a, a u njemu se nalazi ARMv6 CPU na taktu od 700MHz, SDRAM od 512MB i GPU koji podržava Open GL ES 2.0 i 1080p h264 hardverski dekoder i enkoder. Od izlaza posjeduje dva USB porta i ethernet port. Od video izlaza tu je HDMI i nešto stariji RCA video izlaz (žuti činč na AV kablu). Audio može da se prosljeđuje preko HDMI ili preko audio jack-a. Ne posjeduje nikakav storage na sebi, pa je potrebno nabaviti SD karticu na kojoj će biti smještena vaša omiljena Linux distribucija. Za napajanje posjeduje micro USB port.

Od zvaničnih Linux distribucija na ponudi je Raspbian koji je derivat Debian-a prilagođen ovom komadu hardvera. Tu je Pidora koja je remiks Fedore. Ljubitelji Arch-a nisu izostavljeni takođe. Od XBMC distribucija možemo birati OpenELEC ili RaspXBMC. Raspberry PI je podržan i od strane RISC OS-a (RISC OS nije Linux distribucija). Mnogima će se svidjeti NOOBS (New Out Of Box Software). Pomoću njega lako možete instalisati jedan ili više od gore ponuđenih OS-a na SD karticu.

Raspberry PI uz Raspbian postaje Linux mašina sa svim prednostima i manama koje dolaze uz Debian. Postoje dva porta Debian-a na ARM arhitekturi: armel i armxf. Armxf podržava samo ARMv7 procesore ili novije, a Raspberry PI u svome SOC-u posjeduje ARMv6 procesor. Armel port podržava starije tipove procesora uključujući ARMv6. Armel je kompajliran sa soft float ABI da bi se pokretao na procesorima koji nemaju FPU, ali to takođe obara performanse procesoara koji posjeduju FPU. Proceor naše pločice podržava FPU i zbog toga je nastala potreba da se razvije Raspbian, kompajliranjem kernela i paketa da bi bio optimizovan za Raspberry Pi. Prvim pokretanjem otvoriće se raspi-config, preko kojeg možete lako da konfigurišete osnovna podešavanja, kao na primer: lozinka za default user-a, keyboard layout, HDMI overscan, SSX servis, da li hoćete da se GUI startuje na boot-u i slično. Rad u terminalu je ugodan i brz kao što je uvjek i bio. Jedino što će se osjetiti da je znatno sporije je apt-get, pogotovo ako se instalira velika količina paketa, odnosno dekompresovanje paketa traje dugo. Kada se pokrene Xorg dočekaće nas LXDE okruženje, a odmah poslije njega i razočarenje. Na androidu smo naučili da je 700MHz relativno visok takt na ARM procesoru. Desktop software je mnogo teži i tako će vam surfovanje internetom u Midori-u ili bilo kojem drugom browser-u biti veoma otežano i sporo. Laički rečeno, 700MHz ARMv6 arhitekture vam dođe kao 200MHz x86 arhitekture. Iako po procesoru Raspberry PI dođe slično kao PII računar, ali posjeduje GPU koji je dovoljno moćan da iscrtava veoma lijepu grafiku. Jedini problem što njegove 2D i 3D mogućnosti nisu podržane u Xorg-u jer ne postoji driver za njega što će učiniti da programi koji posjeduju ljepšu grafiku budu još sporiji. Postoje hack-ovi koji će omogućiti da iskoristite svoj GPU u Xorg-u. Iako je situacija za Xorg trenutno grozna, korišćenjem Wayland-a na Raspberry PI-u je mnogo bolja. Postoji nekoliko open-source gaming naslova koje su portovane na Raspberry PI i Open GL ES 2.0. Da bi relativno slikovito predstavili moć RPiGPU-a, za gaming uzećemo Open Arena koja pri igranju daje fps od 15 do 30 što čini igricu dovoljno igrljivom, ne glatkom kao na x86 mašini, ali dovoljno da se zabavi.

Sada ćemo reći nešto o Raspberry PI-u kako se snalazi kao HTPC. Od prekonfigurisanih distribucija imamo RaspXBMC koji je zapravo Raspbian sa instalisanim XBMC-om i OpenELEC-om koji je razvijen da služi samo kao distribucija orjentisana prema XBMC-u. OpenELEC u odnosu na RaspXBMC je mnogo lakši i za nijansu brži, pa ćemo koristiti njega za testiranje. Teži samo nekoliko stotina megabajta, što omogućava da stavite više multimedijalnog sadržaja na SD karticu. OpenELEC se boot-uje za desetak sekundi u XBMC sa default temom. Grafičko okruženje je veoma odzivno, pošto se renderovanje obavlja na GPU. Veoma je zgodno što su podržani NFS i Samba protokoli, što omogućava „strimovanje” sa vašeg računara. Raspberry PI će odlično da dekoduje i prikazuje h264 video sadržaj visokog bitrate-a na vašem Full HD televizoru. Pri puštenom filmu grafičko okruženje je nešto slabije odzivnije, može da se osjeti preskakanje miša po ekranu, a prebacivanje filma za nekoliko sekundi je nešto sporije nego što smo naučili na jakim mašinama, ali sam playback nije narušen i njegov fps će ostati 24. Video datoteke pri visokim bitrate-om ako se strimuju sa mreže znaju ponekad zaštekati pri scenama sa mnogo detalja i sa mnogo promjena ako koristite wifi za povezivanje sa mrežom, a korišćenjem ethernet-a nismo to primjetili. Za gledanje filmova sa USB stick-a ili preko mreže RPi se pokazao veoma uspješan i ugodan, ali korišćenje plugin-ova je mnogo sporije nego što smo naviknuli na x86 mašini. Youtube plugin, na primjer, pri pretraživanju je mnogo spor, ponekad i iritirajuće spor, ali sam playback u 720p ide tečno (ako protok interneta to dozvoljava). Slična situacija je i sa ostalim plugin-ovima. DTS i AC3 audio formati znaju po nekad da „škripe” jer CPU ne stigne da enkoduje na vrijeme. „Škripanje” se skoro obavezno čuje pri prebacivanju videa ako se koriste ovi audio kodeci. Može se uključiti Audio passthrough ako vaš televizor to podržava, što će otkloniti „škripanje” zvuka. Od ostalih video kodeka u 1080p rezoluciji podržani su MPEG-4(uključujući XviD i DivX), takođe su podržani MPEG-2 i VC1, ali je za njih potrebno kupiti licencu koja košta nekoliko dolara. MJPEG, VP6, VP8 i OGG su podržani ali su ograničeni na SD rezoluciju. Sam ARM procesor nije dovoljno jak za korisno softversko dekodovanje. Xi10P za h264 nije podržan i TrueHD audio je previše CPU intenzivan, pa nije podržan. Raspberry PI kao niskobudžetni HTPC je vrijedan svakog dinara. Za 35$ se dobije solidan HD playback koji je lako podesiv za poznavaoce Linux-a. Video izlaz je veoma kvalitetan, a TrueHD vam neće nedostajati osim ako ste audiofil. DTS se rjetko nalazi na piratskim HD ripovima, ali ako posjedujete film sa DTS ili AC3 audio trakom i smeta vam škripanje, pri prebacivanju filma možete na kompjuteru brzo enkodovati u AAC kodek.

Ako ste svoj desktop računar možda nekada htjeli da zamjenite sa RPi-om od te ideje odustanite. Kupovina RPi-a za niskobudžetni HTPC bez kulera je odličan izbor. Sada ćemo još spomenuti koju riječ o samom hardware-u. Raspberry Pi posjeduje 2×13 ekspanzioni „header“ preko kojega možete mjenjati sredinu ili dodati dodatne funkcionalnosti. Ovo nije plug’n’play port i nepažljivim rukovanjem možete nepovratno oštetiti ploču. Poznavaoci elektronike mogu iskoristiti ove pinove da bi sebi napravili daljinski za RPi ili priključili mali displej zajedno sa senzorima za prikaz vremenskih uslova u prostoriji ili šta god im mašta dozvoljava. Početnicima u elektronici Raspberry Pi može im poslužiti kao moćan mikrokontroler. Kao zadnju manu istaknućemo nemogućnost da se Raspberry Pi isključi i ponovo uključi. Kada pokrenete runlevel 0 i kada se Linux „haltuje” (ugasi), hardver nastavlja biti aktivan. Iako miruje jer nema instrukcija za izvršavanje, on troši struju, a da biste ga ponovo uključili, morate ukloniti izvor napajanja i ponovo uključiti. Da bi se priča završila sretno, spomenućemo mogućnosti overklokovanja. Raspberry Pi će sretno da leti na 800MHz, a može da se digne i do 1GHz. Takođe postoje mogućnosti mjenjanja frekvencija GPU-a i SDRAM-a. Ako se upustite u ove vode, možda će vam dobro doći i jedan manji hladnjak.