PvCF

logo PvCF

Hi-Fi uit de Raspberry Pi

Ik hoor de laatste tijd wel eens de kritiek dat ik te weinig aandacht aan Linux besteed. Mijn laatste privé-projectje is een Raspberry Pi, dus daar maar een verslagje van.
De Raspberry Pi is een klein computertje op creditcard formaat. Het is een heel betaalbare computer, voor € 36,95 is ie van jou. Maar ja, dan begint het pas.
Voor dat geld krijg je een compleet werkend geheel, maar zonder voeding, behuizing of besturingssysteem.

X
Uitgangspunt is de website https://www.raspberrypi.org

Ideeën opdoen

Voordat je overgaat tot aanschaf kun je een aantal nummers van MagPi doorbladeren. MagPi is het gratis tijdschrift over de Raspberry Pi, in pdf formaat te downloaden van https://www.raspberrypi.org/magpi.
Ze zijn al toe aan nummer 34, na nummer 30 hebben ze een special uitgegeven met de hoogtepunten van de voorgaande edities. Alle nummers zijn nog te downloaden, enige kennis van Engels is wel noodzakelijk.

Shoppen

Ik heb mijn Raspberry Pi besteld bij SOS Solutions. Ik heb verder geen enkele band met ze, ze komen nogal prominent in beeld bij het zoeken naar een Raspberry Pi, en ze leverden mij keurig en snel.
Ze hebben (op het moment van schrijven) vijf modellen in het assortiment. Vier zijn van het model 1 (de "gewone" Raspberry Pi) en een model 2. Koop het model 2, de volledige naam luidt Raspberry Pi 2 Model B. Deze heeft een 900MHz processor met vier kernen, 1024MB ram en vier USB poorten. De modellen 1 hebben allemaal een 700MHz processor met maar 1 kern, 256 of 512MB ram en meestal maar een of twee USB poorten. De modellen 1 kosten € 25,95 tot € 29,95, model 2 kost € 36.95. De keuze lijkt mij duidelijk.

Bijkomende kosten

Als geschreven, voor dat bedrag heb je alleen een printplaatje ter grootte van een creditcard waar alle componenten op gesoldeerd zijn en verder niets. Het besturingssysteem kan starten vanaf een Micro SD kaart. Een 4GB exemplaar kost € 6,-, een 16GB exemplaar € 9,-.
De voeding komt binnen via een Micro USB aansluiting. De stroom kan geleverd worden door een computer, een losse adapter kost € 8,-. Let er op dat model 2 wat meer stroom verbruikt dan model 1, niet iedere voeding voldoet.
Om te communiceren met het ding kun je een netwerkkabel aansluiten, voor € 12,00 kun je ook een 300Mbps Wi-Fi dongle kopen.
Als laatste is een HDMI kabel handig om de Raspberry Pi aan een TV of monitor aan te sluiten. Een 1 meter exemplaar kost € 2,-.
Behuizingen zijn vanaf € 6,95 verkrijgbaar, maar die laat ik nog even achterwege.
Boodschappenlijstje
Het totale boodschappenlijstje ziet er als volgt uit:
Raspberry Pi Model 2B             € 36,95
16GB Micro SDHC Kaart           €  9,00
2A Micro-USB via stopcontact   €  8,00
Wi-Fi 300Mbps                        € 12,00
HDMI kabel 1 Meter                 €  2,00
Totaal                                     € 67,95
Een overzichtelijk lijstje voor uren plezier. Voor die prijs wordt het ook nog aan huis geleverd.

X
De Raspberry PI 2 Model B, de nieuwste versie, van boven …

X
… en van onderen

Opstarten

Als je het setje thuis krijgt wijst de aansluiting zich vanzelf. Voeding in de micro USB aansluiting, HDMI kabel in de Pi en de TV, SD kaartje in zijn slot, voeding in het stopcontact en klaar. Niet dus. Je moet eerst een besturingssysteem op de SD kaart zetten.
Op https://www.raspberrypi.org/downloads kun je diverse besturingssystemen kiezen. Het zijn allemaal, gebruikersvriendelijke, Linux distributies. Het zijn er nu al acht, dus welke moet je kiezen. Het eenvoudige antwoord is: "Dat hangt af van wat je met je Raspberry Pi gaat doen."

NOOBS

Het beginnerssysteem is NOOBS. In het computerjargon is een noob een beginner, een newby, Raspberry heeft daar een acroniem van gemaakt: New Out of Box Software.
Noobs is te downloaden als volledig systeem of als netwerkinstallatie image. De volledige versie is het handigst. Deze bevat het Raspbian system en biedt de mogelijkheid andere distributies te downloaden.

Raspbian

Raspbian is de Debian Linux versie voor de Raspberry Pi. Hiermee haal je een complete Linux distributie op je Pi die qua werking lijkt op de desktop versie. De standaard login is, als op vele distributies, gebruiker pi met wachtwoord raspberry.
Alternatieve distributies zijn Ubuntu MATE en Pidora (Fedora).

Media distributies

In dit artikel gebruik ik een media distributie, een besturingssysteem dat al helemaal is ingericht op het afspelen van de films en muziek. Er zijn twee bekende versies, OpenELEC (Open Embedded Linux Entertainment Centre, vroeger XBMC) en OSMC (Open Source Media Centre). Omdat ik veel goed nieuws van OpenELEC hoor probeer ik die distributie

Download

De OpenELEC distributie kun je downloaden van de site  (http://openelec.tv/get-openelec). Ga daar op zoek naar de Raspberry Pi Builds, en dan ook nog de ARMv7 Builds - RPi2 ARMv7 quad core models (Model B 1024MB).
Je vindt daar twee versies: OpenELEC-imx6.arm-5.0.8.img.gz en OpenELEC-RPi2.arm-5.0.8.tar (5.0.8 is het versienummer, dat zal telkens opgehoogd worden). De .img.gz is iets kleiner, die download ik.
Terwijl je rondkijkt op de site kan (zal) je opvallen dat er ook versies zijn voor de gewone computer. Misschien een leuke bestemming voor een oud beestje?

Installeren

In de Linuxterminal geef je de opdracht dd if=/home/<username>/Downloads/OpenELEC-RPi.arm-5.0.8.img of=/dev/sdb bs=4M en in korte tijd is de SD kaart klaar.
Omdat nog niet iedereen is overgeschakeld op Linux zal ik ook de installatie onder Windows beschrijven.
Stop de micro SD kaart in de kaartlezer van je computer. Bijna alle laptops kunnen tegenwoordig standaard een SD kaart beschrijven, in veel desktop computers zit een kaartlezer ingebouwd.
De download kun je uitpakken met 7-Zip (http://www.7-zip.org). Je krijgt een bestand dat eindigt op .img.
Met Win32 Disk Imager (http://sourceforge.net/projects/win32diskimager) kun je het bestand op een Micro-SD kaart zetten. Dubbelklik op het bestand om het programma te installeren.
Als je het programma opstart blader je naar het image dat je hebt gedownload en selecteert dat. Het programma biedt alleen de SD kaart als doel aan, wel zo veilig. Een USB-stick die in je computer steekt zal ook als doel gevonden worden. Verwijder daarom vooraf alle USB sticks.
Je kunt de md5 hash berekenen, maar dat is de hash van het image file, niet van het ingepakte bestand zoals dat op de website vermeld wordt.
Let op: De SD kaart wordt helemaal gewist.
Als het schrijven klaar is kun je het programma sluiten en de SD kaart (veilig) verwijderen.

X
Installeren met Win32 Disk Imager

SD kaart kopen

Klinkt dit allemaal te ingewikkeld? Op (http://swag.raspberrypi.org/collections kun je een SD kaart van 8GB kopen met NOOBS voor-geïnstalleerd. En dat alles voor de vriendenprijs van £ 4.00, ongeveer € 5,50. Ik heb dit niet geprobeerd, maar ga ervan uit dat dit werkt.

Windows 10

Microsoft heeft aangekondigd ook een versie van Windows 10 voor de Raspberry Pi te leveren. Voordat je je huidige computer verkoopt, het wordt een uitgeklede versie, bedoeld om IoT applicaties te ontwikkelen. IoT is het nieuwe mode woord, de afkorting van Internet of Things. Het gaat dus om apparaten die zelf via internet gaan communiceren. Bijvoorbeeld een koffiezetapparaat dat meldt dat de koffie klaar is, of een koelkast die meldt dat het bier op is. Een mooie toekomst, belemmerd alleen door onze fantasie, maar geen werkbaar besturingssysteem voor je Raspberry Pi.

De eerste keer

Met de SD kaart kun je de eerste keer je Raspberry Pi opstarten. Ik zal de opstartprocedure kort beschrijven.
De eerste keer dat de Raspberry Pi opgestart wordt zal hij (of zij?) de SD kaart opnieuw partitioneren. De volledige SD kaart wordt gebruiksklaar gemaakt, zodat je er mediabestanden bij kunt zetten. Daarna herstart de Pi.

Configuratie

De eerste keer dat de Raspberry Pi volledig opstart vraagt het naar de regio. Als je hier kiest voor Dutch - Dutch communiceert de Pi voortaan in het Nederlands met je.
De volgende vraag is naar de hostnaam. De hostnaam is de naam waarmee de Pi in het netwerk opduikt. Standaard is de naam OpenELEC, maar je kunt er van maken wat je wilt. Spaties en de meeste bijzondere tekens zijn niet toegestaan.

Netwerk.

De Raspberry Pi kan op het netwerk aangesloten worden met een netwerkkabel of een USB-Wi-Fi dongle.
Als je een netwerkkabel in je Pi hebt gestoken vindt hij zelf het netwerk.
Als je een Wi-Fi dongle gebruikt moet je op zoek naar je eigen netwerk en het (WPA) wachtwoord ingeven.
Vervolgen wordt gevraagd of je twee diensten wilt aanzetten: SSH en SaMBa.
SSH (Secure Shell) staat standaard uit, maar zet die maar aan om bij problemen en configuratiewerkzaamheden met de Raspberry Pi te kunnen communiceren - op een commando regel, dat dan weer wel. Als je inlogt op de Pi is dat als gebruiker root met het wachtwoord openelec.
SaMBa (SMB-server, gebruik makend van het Server Message Block protocol) staat standaard aan. Met SaMBa verschijnt de Pi als een gedeelde map onder de eerder opgegeven hostnaam in je netwerk. Je kunt er dan filmpjes en muziekjes heen kopiëren, dan ben je niet afhankelijk van een goede Wi-Fi ontvangst tijdens het afspelen.
Daarna is de configuratie van OpenELEC klaar.

Bediening van de Pi

Je kunt het gemakkelijkst met de bediening beginnen met een muis en het beeld via je televisie.
Kijk eerst onder systeem bij de Systeeminformatie. Daar zie je in het overzicht onder andere het IP-adres. Onthoud dat, of beter, schrijf het op. In veel netwerken blijft dat adres jarenlang hetzelfde, en het is gemakkelijk om vanuit je computer verbinding te maken.

X
Achterhaal het IP-adres in het systeemoverzicht

Netwerk locatie toevoegen

Blader vervolgens naar bestandsbeheer. Klik daar op Locatie toevoegen, bladeren, en je kunt via de optie Windowsnetwerk (SMB) je eigen netwerk op. Daar vind je, als het goed is en hij aanstaat, je NAS of je computer die mediabestanden deelt. Voeg die hier toe aan de lijst.
Een USB stick die je in de Pi hebt gestoken vind je hier ook terug.

X
In bestandsbeheer kun je bladeren naar je netwerk, te vinden onder SMB

Spelen

En dan kun je media afspelen. OpenELEC heeft zelf door of het beeld of geluid betreft, en je kunt je verzameling doorbladeren. Dubbelklikken en het bestand wordt afgespeeld.
Ik ben niet altijd dolenthousiast over de wijze waarop er genavigeerd moet worden, ik val graag terug op de bestandsbeheerder onder Systeem en start de af te spelen bestanden van daar.

X
Vervolgens kun je afspelen wat je wilt: beeld en geluidsmateriaal. Aan het navigeren moet je wennen.

X
Als je de muziek gevonden hebt kan de lol beginnen. Jammer dat het geluid niet zo best klinkt.

Behuizing

Ik heb in een eerder stadium de behuizing buiten beschouwing gelaten. Met opzet.
Ik ben niet zo gecharmeerd van de geluiden die uit de Raspberry Pi komen. Uit de HDMI poort komen de geluiden digitaal, maar uit het koptelefoonstekkertje komt een wat armetierig geluid. Dat is meer mensen opgevallen, en er is dan ook een oplossing op de markt: Een DAC.
Een DAC is een Digital-Analog Converter, een apparaatje dat digitaal geluid omzet in analoog, en dat kan dus met goede kwaliteit, afhankelijk van de bron, naar je versterker gestuurd worden.
Als je dat op je Pi zet past hij niet meer in de standaard behuizing, daarom eerst een DAC aansluiten.

HiFiBerry

Op de site van HiFiBerry (https://www.hifiberry.com) worden kant en klare DAC's aangeboden. Deze worden in tests goed beoordeeld.
Let op 1: Er zijn twee versies van de DAC, allebei even duur. De DAC is voor de Raspberry Pi A en B, de DAC+ is voor de Raspberry Pi A+, B+ en de Pi2 Model B.
Let op 2: Er zijn twee versies van de DAC, allebei even duur. Een versie met RCA (tulp) uitgang en een versie met hoofdtelefoon uitgang. Ik merk daarbij op de versie met hoofdtelefoon uitgang geen versterker heeft, er kan dus niet zomaar een hoofdtelefoon worden aangesloten.
Kortom, kies de juiste uit het aanbod van vier.
HiFiBerry levert ook de Amp (gewoon en +), een dac met ingebouwde versterker zodat je rechtstreeks je boxen kunt aansluiten, en een Digi (eveneens gewoon en +), een S/PDIF uitgang om aan te sluiten op een versterker met S/PDIF ingang.
Technisch zijn de verschillende uitvoeringen van de apparaten gelijk, het verschil is de Raspberry Pi. De modellen A en B hebben een 26 polige GPIO, de A+, B+ en Pi2 model B hebben een 40 polige GPIO.
Een GPIO (General Purpose Input/Output) is de dubbele rij pinnetjes op het moederbord van de Raspberry Pi.
Als je een 26 polige versie hebt moet je er zelf nog 8 pinnetjes bij solderen. Een nieuwe kopen is gemakkelijker.

X
Project voor de knutselaar: 8 extra aansluitingen solderen op je Pi …
X
… in de gaatjes naast de bestaande aansluitingen

HiFiBerry installeren

Het installeren van de HiFiBerry is niet meer dan het apparaat voorzichtig in de GPIO drukken.
Er worden 4 plastic staafjes bijgeleverd met 4 schroefjes en 4 moertjes. Je kunt het beste de schroefjes van onder in de Raspberry Pi steken en daar de staafjes op schroeven. Vervolgens zet je de HiFiBerry op de Raspberry en draai je de moertjes erop. Andersom past het niet in de behuizing (heb ik proefondervindelijk vastgesteld).

HiFiBerry configureren

Om de HiFiBerry aan de praat te krijgen moet je op de Raspberry Pi inloggen met SSH. Vanuit de terminal geef je het commando ssh root@ip-adres. Je wordt gevraagd om het wachtwoord (openelec) en je kunt aan de slag.
Vanuit Windows kan dat het beste met PuTTY van de site http://www.chiark.greenend.org.uk. Je kunt volstaan met het downloaden van putty.exe, een programma dat niet geïnstalleerd hoeft te worden.
Als de Pi draait zoek je in de instellingen het IP adres op. Dat vul je in het hostnaam veld van PuTTY in. De poort staat op 22 goed, en klik op open. Je krijgt de eerste keer de vraag of je de Pi vertrouwt (ja dus) en vervolgens kun je inloggen met gebruikersnaam root en wachtwoord openelec. Je krijgt een terminal venster, vergelijkbaar met de oude dosprompt.

X
Gebruik PuTTY om een SSH verbinding op te bouwen met je Pi

SSH commando's

Je hoeft in PuTTY maar een paar commando's in te geven.
Om het flash beschrijfbaar te maken geef je het commando mount -o remount,rw /flash
Vervolgens pas je het configuratiebestand aan met nano /flash/config.txt
Voeg de volgende twee regels toe aan het eind van het bestand:
    dtoverlay=hifiberry-dacplus
    dtdebug=1
Als je de oude versie van de DAC hebt gebruik je dac in plaats van dacplus.
Sluit nano af met <Ctrl> + X. Het programma vraagt of je de wijzigingen wilt opslaan, bevestig met Y en je bent klaar.
Start de Raspberry Pi opnieuw op met het commandoreboot. De ssh verbinding wordt dan uiteraard verbroken.

Configuratie OpenELEC

Het systeem van de OpenELEC kun je het beste configureren met een muis, met de tv als monitor.
In het menu Systeem moet je onder Instellingen, wederom in het menu Systeem bij de Geluidsuitgang kiezen voor ALSA: Default (snd_rpi_hifiberry_dacplus Analog) om het geluid door de HiFiBerry te laten verzorgen.
En dan ben je klaar en kun je de muziek over je stereo installatie afspelen.

X
Kies de ALSA geluidsuitgang om de HiFiBerry te gebruiken

Bediening

Hoe ga je de Raspberry bedienen? OpenELEC is een distributie die goed met de muis bediend kan worden. Omdat je natuurlijk niet iedere keer je televisie wilt aanzetten om een muziekje af te spelen ben ik op zoek gegaan naar app's om de speler op mijn Android smartphone te bedienen. Het aanbod is overweldigend, ik heb er drie geprobeerd. De kans dat de beste (of de slechtste erbij zit is niet zo groot, maar zolang het gratis is kun je vrolijk doorgaan met proberen. De geprobeerde versies zijn:
Kore, Official Remote for Kodi
Zoekt (en vindt) zelf de Pi, je klikt erop en de bibliotheek wordt gesynchroniseerd. Werkt intuïtief.
Yatse
Qua opbouw en mogelijkheden vergelijkbaar met Kore, de werking vind ik niet intuïtief en hij vraagt mij net iets te vaak of ik niet wil overstappen op de betaalde versie.
Media Remote for XBMC
Deze speler moet je handmatig verbinden met je Pi. Bij een verbindingsfout kon ik in de gratis versie niets meer aanpassen, een apparaat toevoegen kon ook niet in de gratis versie. De extra mogelijkheden van de betaalde versie behelsden onder andere het kunnen vastleggen van de kleur van de speler. Het hoeft denk ik geen betoog dat de speler minder dan 5 minuten op mijn smartphone heeft gestaan.
Kortom, heel subjectief, ik ga het een tijdje met Kore proberen. Dat wil niet zeggen dat ik geen ruimte voor verbetering zie. Als jullie goede ervaringen hebben met andere app's hoor ik het graag.
Er is ook een versie van Kore voor de iPhone, die misschien nog wel beter werkt dan de Android versie.

X
Bediening op de smartphone ziet er goed uit, de werking is nog wat wennen

Behuizing

Als alles werkt kun je het in een nette behuizing stoppen zodat de onderhandelingen kunnen beginnen of ie in de woonkamer mag staan. Ik heb het eenvoudig gehouden met een behuizing waar zowel de Raspberry Pi als de DAC in passen. Die laatste  €  10,95 konden er ook nog wel bij.
Als de delen uit de verpakking komen zijn ze een beetje blauw. Aan beide zijden het folie verwijderen en ze zijn helder. Alle delen worden een beetje onder spanning in elkaar geschoven en blijven dan zitten zonder bevestigingsmateriaal.

X
Met een eenvoudige behuizing ziet het er netjes uit

Conclusie

De Raspberry Pi brengt het plezier in het computeren weer een beetje terug. Je kunt weer alles zelf doen.
De OpenELEC distributie neemt weer een hoop van de lol weg, alles is al weer kant-en-klaar, maar bevalt verder erg goed als media speler. Het beeld op de TV is prima, het geluid via de versterker eveneens. En ook al kan de bediening beter, hij wordt gedoogd in de woonkamer.
En voor die lol heb ik nog de oude Raspberry Pi B, met een GPIO met 26 aansluitingen.
De totale kosten:
Raspberry Pi 2 Model B       €  36,95
16GB Micro SDHC Kaart     €    9,00
2A Micro-USB voeding        €   8,00
Wi-Fi dongle 300Mbps        €  12,00
HDMI kabel 1 Meter            €   2,00
HiFiBerry DAC+                  €  34,95
Behuizing                           €  10,95
Totaal                                € 113,85

Links

Raspberry Pi homesite Startpunt van de ontdekkingstocht
DAC converter Hi-Fi converter
The MagPi (gratis) Raspberry Pi magazine
Windows 10 op de Pi Windows 10, NIET de bekende desktop
PuTTY Alleen putty.exe downloaden
Handleiding HiFiBerry Aansluiting en configuratie

bron: Jan Chris ©, eerder gepubliceerd in Computer Express 4 van 2015

Je kunt mij mailen op janpuntchrisatpvcfpuntnl.

Laatste update: 10 juni 2015
.