Cursus: Deel 1 - Raspberry Pi, de ultieme knutselcomputer
Wellicht heb je al eens iets gelezen over de Raspberry Pi, het minicomputertje van amper 40 euro. In deze cursus leggen we uit waar je een exemplaar koopt, wat je allemaal nodig hebt en wat de mogelijkheden zijn. Ook maken we de Raspberry Pi klaar voor het echte werk. Na deze cursus volgt nog een workshopreeks, waarin we toepassingen voor de Raspberry Pi doorlopen.
Toen de Raspberry Pi vorig jaar op de markt kwam, volgde er een stormloop op de websites waar het apparaatje te koop was. Wie er eentje wilde bemachtigen, moest op een abnormaal vroege tijd uit bed, om te proberen binnen te komen in één van de webwinkels.
©PXimport
In principe kan je de Raspberry Pi als een minidesktopcomputer gebruiken, maar dat raden we niet aan.
Het leek wel een virtuele vorm van de wachtrijen die we altijd bij Apple-winkels zien wanneer er een nieuw model van de iPhone of iPad uitkomt. Maar de Raspberry Pi is helemaal het tegenovergestelde van een iPhone: het is een ruw computerbordje, zonder mooie vormgeving, helemaal niet afgewerkt en je moet er zelfs nog een besturingssysteem op installeren voor je er iets mee kan doen. Waarom is het dan zo populair?
Computer voor kinderen
Oorspronkelijk is de Raspberry Pi vooral ontwikkeld om een een kleine, goedkope computer te produceren voor kinderen die ermee kunnen leren programmeren. Het project ontsproot aan het brein van Eben Upton van het computerlaboratorium van de universiteit van Cambridge. Hij merkte dat zich ieder jaar weer minder studenten inschreven voor de opleiding computerwetenschappen. Bovendien hadden de studenten steeds minder programmeerervaring, terwijl dat een decennium eerder helemaal anders was. Upton besloot dat er iets moest gebeuren: kinderen moesten van jongs af aan gestimuleerd worden om te programmeren. Hij begon daarom een goedkope minicomputer te ontwerpen. Die moest zo goedkoop zijn dat het ouders het als cadeau konden geven aan hun kinderen, en ook zo goedkoop dat het geen ramp is als een te enthousiast kind iets verkeerd doet, met een defect tot gevolg. Na jaren prototypes ontwikkelen was het resultaat er vorig jaar: de Raspberry Pi. Maar die bleek uiteindelijk meer bij computernerds in de smaak te vallen dan bij het beoogde doelpubliek!
Populariteit
De prijs is een belangrijke factor voor die populariteit. Voor amper 40 euro haal je een klein apparaatje ter grootte van een bankpas in huis, dat eigenlijk een volledige computer is (zie het kader voor de specificaties). Bovendien verbruikt de Pi slechts 3,5 watt, waardoor je hem gerust dag en nacht kan laten draaien. Dat opent dus heel wat mogelijkheden voor wie zelf wil knutselen. Je kan er bijvoorbeeld zelf een mediacenter mee bouwen, een NAS, een centrale aansturing van domotica of beveiligingscamera's enzovoort.
Je kan het zo gek niet bedenken of de Pi kan het, al zal je zelf wel de handen uit de mouwen moeten steken. Je moet echter geen aversie tegen Linux hebben, want Windows draait niet op de Raspberry Pi. In deze basiscursus en in de workshops in de komende maanden zullen we je laten zien dat dit geen onoverkomelijk probleem is.
©PXimport
De Raspberry Pi is enkel een moederbordje. Verbind allerlei andere apparaten om ermee aan de slag te gaan.
Specificaties Pi
Processor 700 MHz Arm11
RAM 256 MB (Model A en Model B rev1), 512 MB (Model B rev2)
Usb2.0-poorten 1 (Model A), 2 (Model B)
Digitale video HDMI (1.3 en 1.4)
Analoge video RCA
Digitale audio HDMI
Analoge audio 3,5mm-jack
Opslag SD-kaartslot
Netwerk geen (Model A), 10/100 Mbit/s Ethernet (Model B)
Stroom 300 mA/1,5 W (Model A), 700 mA/3,5 W (Model B)
Afmetingen 85,60 x 53,98 x 20 mm
Gewicht 45 gram
Modellen en accessoires
Allereerst is het belangrijk om te weten dat er verschillende modellen zijn. Model A is het goedkoopste, maar biedt voor veel toepassingen een wat te beperkte functionaliteit. Zo heeft dit model geen netwerkaansluiting, slechts één usb-poort en maar 256 MB RAM.
Je kan hier uiteraard een usb-hub op aansluiten en daar een usb-netwerkadapter en andere usb-randapparatuur aan hangen, maar in de meeste gevallen haal je beter voor tien euro meer Model B in huis. Dat model heeft immers een Ethernetadapter voor 10/100 Mbit/s ingebouwd en heeft twee usb-poorten. Sinds de nieuwste revisie van 15 oktober 2012 is daar bovendien 512 MB RAM ingebouwd, wat voor veel toepassingen geen overbodige luxe is.
©PXimport
Twee vroege prototypes van de Raspberry Pi.
Let dus op het juiste model als je een Raspberry Pi aanschaft: model B revisie 2. Heb je vorig jaar al model B revisie 1 gekocht, dan is dat overigens geen ramp: voor veel servertoepassingen volstaat 256 MB RAM wel.
Daarnaast is het ook belangrijk om te weten dat je met enkel de Raspberry Pi niets kan. Om het in pc-termen te zeggen: met de Raspberry Pi koop je enkel een moederbord, zij het dan met het geheugen geïntegreerd. Je hebt allereerst een SD-kaart nodig, waar je een besturingssysteem op installeert.
De opslagcapaciteit hoeft niet enorm te zijn, want als je de Pi bijvoorbeeld als bestandsserver of mediaspeler wilt gebruiken, sluit je gewoon een externe harde schijf via usb aan voor je gegevens. Een SD-kaartje van 4 GB volstaat. Wel is de Pi wat kieskeurig: niet iedere SD-kaart werkt. Je koopt daarom maar beter je SD-kaart samen met een Pi in een webwinkel die de compatibiliteit garandeert.
©PXimport
Met enkele kabels sluit je de Raspberry Pi op alle benodigde randapparatuur aan.
Het enige wat je daarna nog nodig hebt zijn kabels, maar die heb je misschien al wel liggen. Stroom haalt de Pi uit een micro-usb-aansluiting, dus je kan perfect de lader van je (Android-)smartphone gebruiken, zolang die minstens 700 mA stroom levert. Voor de netwerkaansluiting heb je een Ethernetkabel nodig. De Pi aansluiten op een computerscherm gaat met een HDMI-kabel. Heb je geen computerscherm of tv met HDMI-aansluiting beschikbaar, dan kan je ook een oude tv gebruiken en die via de analoge RCA-kabel aansluiten. Een toetsenbord en muis sluit je tot slot via usb aan.
Accessoires
Na de installatie van Linux, waarop we later in deze cursus verder ingaan, heb je niet altijd al die accessoires nog nodig. Als je van de Pi bijvoorbeeld een bestandsserver maakt, heeft die geen scherm, toetsenbord of muis nodig. In plaats daarvan moet je dan wel een externe harde schijf via usb aansluiten. Gebruik daarvoor een ‘powered-usb-hub’, want de schijf heeft natuurlijk stroom nodig, die de Pi niet kan leveren.
Wil je een mediacenter van je Pi maken, dan sluit je de Pi via HDMI op je televisie aan.
©PXimport
Veel webwinkels verkopen kant-en-klare pakketten met een Raspberry Pi.
Overigens raden we wel een behuizing aan als je de Pi in je woonkamer plaatst. Dat zorgt niet alleen voor een extra bescherming, maar ook voor wat fysieke stabiliteit: het moederbordje zelf weegt immers zo weinig dat het gemakkelijk door een zware HDMI-kabel meegetrokken wordt, waardoor een ongelukje in een klein hoekje zit. Om alleen wat te experimenteren, is een behuizing geen vereiste.
Waar kopen?
In Nederland en België is de Raspberry Pi intussen in heel wat webwinkels te koop. Vaak verkopen die ook behuizingen en allerlei andere accessoires, zoals compatibele SD-kaartjes. Ook vind je er alles-in-één-pakketten met voedingskabel en een kleine muis en toetsenbord. Eveneens populair zijn de voorgeïnstalleerde besturingssystemen: je koopt dan een SD-kaartje waarop al Raspbian of een ander besturingssysteem voor de Pi staat, zodat je onmiddellijk aan de slag kan. Enkele interessante webwinkels zijn www.sossolutions.nl (waar je als lezer van Computer!Totaal 10% korting op je hele bestelling krijgt als je de kortingscode COMPUTERTOTAAL bij het bestellen ingeeft), www.minifo.com, www.kiwi-electronics.nl en www.conrad.nl.
Installatie
Wanneer je een Raspberry Pi en de benodigde accessoires hebt, is het tijd om er een besturingssysteem op te installeren. De makers raden Raspbian ‘wheezy’ aan, een speciaal voor de Raspberry Pi geoptimaliseerde versie van de Linux-distributie Debian. Download het zip-bestand van de downloadpagina www.raspberrypi.org/downloads op je computer en pak het bestand uit. Het resultaat is een bestand met de extensie .img dat je naar de SD-kaart moet schrijven. Steek die SD-kaart in de kaartlezer van je computer.
Het img-bestand is een exacte kopie van de SD-kaart, dus je kan het niet naar de SD-kaart schrijven door het in Windows Verkenner naar de juiste schijf te verslepen. Je hebt hiervoor het programma Win32 Disk Imager nodig.
Download het zip-bestand via http://ct.link.ctw.nl/wdi en pak het uit, waarna je het programma Win32DiskImager.exe in de uitgepakte map opstart. Je kiest het img-bestand en de schijfletter van de SD-kaart. Let op dat je niet per ongeluk de schijfletter van je harde schijf of een ander opslagapparaat kiest! Je bent dan alle bestanden immers kwijt. Kijk dus goed na of je de juiste schijfletter hebt klik dan pas op Write. Als het volledige img-bestand naar de SD-kaart geschreven is, sluit je het programma af en haal je de SD-kaart uit de computer.
©PXimport
Schrijf Raspbian naar de SD-kaart met Win32 Disk Imager.
Eerste keer opstarten
Als je Raspbian eenmaal op de SD-kaart geschreven hebt, steek je die in de sleuf op de Raspberry Pi en sluit je alle benodigde kabels aan: Ethernet, toetsenbord, HDMI en pas als laatste steek je de voedingskabel in het stopcontact. Er gaan nu wat ledjes branden naast de usb-poorten en de Pi start op. Als alles goed gaat, zie je nu op het scherm allerlei meldingen verschijnen van Raspbian. Uiteindelijk verschijnt er een configuratievenster, waarin je een aantal belangrijke zaken instelt, zoals je tijdzone, wachtwoord, toetsenbordindeling enzovoort. Ga met de pijltjestoetsen naar de onderdelen die je wilt instellen en druk op Enter.
Wat als je Raspberry Pi niet opstart?
Problemen met het opstarten kunnen divers zijn. De ledlichtjes geven echter een goede indicatie van wat het probleem is. Het rode ledje met PWR ernaast moet continu branden als er voeding is. Knippert dat ledje, dan gebruik je een te zwakke voedingskabel. Het groene ledje met OK ernaast, knippert wanneer de SD-kaart aangesproken wordt. Als je tijdens het opstarten wel het rode PWR-ledje ziet branden maar het groene OK-ledje niet knippert maar zachtjes brandt, dan vindt de Raspberry Pi de bootcode van het besturingssysteem niet. Controleer dan of de SD-kaart wel correct in zijn slot zit. Als het dan nog niet werkt, probeer dan het image opnieuw naar de SD-kaart te schrijven of probeer eens een andere SD-kaart uit. Als de Pi wel opstart maar het ‘splash screen’ (vier pixels vergroot over het hele scherm) blijft tonen, vindt hij de Linux-kernel niet om op te starten. Schrijf dan ook opnieuw een image naar de SD-kaart.
Als je die configuratie eenmaal hebt gedaan (zie ook het kader ‘Onmisbare configuratiestappen’), ga je met de Tab-toets naar Finish en druk je op Enter, waarna je een opdrachtprompt te zien krijgt die wat op de DOS-prompt lijkt. Overigens biedt Raspbian ook een grafische omgeving aan. Type de opdracht startx in de opdrachtprompt en druk op Enter. Je krijgt de grafische omgeving LXDE op je scherm te zien. Heb je een muis aangesloten, dan kan je hiermee in principe de Raspberry Pi als een minidesktopcomputer gebruiken. Als webbrowser staat er bijvoorbeeld Midori op. Toch is het niet de bedoeling dat je nu op je Pi gaat surfen en teksten typen, want daarvoor is het apparaatje wat te zwak.
©PXimport
Als je de Raspberry Pi op je tv aangesloten hebt, krijg je een opdrachtprompt van Raspbian te zien.
Onmisbare configuratiestappen
De eerste keer dat je de Raspberry Pi opstart krijg je een configuratieprogramma te zien. Je kan die configuratie op elk ander moment opnieuw opstarten. Type daarvoor de opdracht sudo raspi-config in de opdrachtprompt. Niet alle configuratietaken zijn even belangrijk, maar we stippen er twee aan die niet erg duidelijk, maar toch belangrijk zijn. Zo moet je zeker expand_rootfs kiezen, omdat het image van Raspbian dat je naar de SD-kaart geschreven hebt, niet de volledige opslagcapaciteit gebruikt. Als je deze optie kiest en de Raspberry Pi herstart, is de volledige capaciteit beschikbaar. En met de optie memory_split kies je hoeveel megabytes RAM er beschikbaar zijn voor programma's en hoeveel voor de grafische processor (gpu), want dat geheugen wordt gedeeld. Als je de Raspberry Pi als server wilt inzetten, kan het geen kwaad om zo min mogelijk RAM aan de gpu toe te kennen, bijvoorbeeld slechts 16 MB.
Servertoepassingen
We gaan de Raspberry Pi in de volgende delen vooral voor een aantal servertoepassingen inzetten, dus vergeet even de grafische omgeving die je nu op je scherm ziet. Sluit deze af door in de rechterbenedenhoek op het icoontje van de powerknop te klikken, waarna je de opdrachtprompt weer te zien krijgt. Als we de Pi als server willen inzetten, moeten we die kunnen aansturen zonder toetsenbord, muis of scherm. Dat kan door via het netwerk opdrachten te geven. Daarvoor moeten we eerst het IP-adres van de Pi op je lokale netwerk kennen. Typ daarvoor de opdracht ifconfig eth0 in de opdrachtprompt in en druk op Enter. Achter inet addr: krijg je het IP-adres te zien, bijvoorbeeld 192.168.0.84. Onthoud of noteer dit adres.
©PXimport
Configureer je Raspberry Pi met het programma raspi-config.
Installeer nu op je computer het programma PuTTY, dat gratis te downloaden is van http://ct.link.ctw.nl/put. Daarmee kan je via het netwerk op je Rasberry Pi inloggen. Start putty.exe op, vul het IP-adres van de Pi in bij Host Name (or IP address), laat het verbindingstype op SSH staan en de poort op 22, en klik onderaan op Open. Je krijgt daarna de vraag om de zogenoemde SSH-sleutel van de Pi te aanvaarden, wat je moet doen om verder te gaan. Tot slot vul je na Login as: je gebruikersnaam (standaard pi) in en na password: je wachtwoord (standaard raspberry). Daarna ben je ingelogd en krijg je dezelfde opdrachtprompt te zien als toen je rechtstreeks op de Pi inlogde met het toetsenbord en scherm.
©PXimport
Dankzij PuTTY kan je op je Raspberry Pi inloggen via het netwerk. Een toetsenbord, muis en beeldscherm zijn dan niet meer nodig.
Vanaf nu kan je alle benodigde opdrachten op de Pi vanaf je Windows-computer uitvoeren, dus verwijder gerust het toetsenbord, de muis en de HDMI-kabel van de Raspberry Pi. Overigens heeft de Pi geen aan/uit-knop. Typ de opdracht sudo shutdown -h now in PuTTY in, wacht tot alleen het rode PWR-ledje nog brandt en trek de stekker eruit.
©PXimport
In dit venster van PuTTY zal je tijdens de komende workshops heel wat opdrachten voor je Raspberry Pi intypen.
Klaar voor gebruik
Als je deze cursus volledig gevolgd hebt, ben je nu de trotse eigenaar van een werkende Raspberry Pi. Het ziet er misschien nog niet indrukwekkend uit, maar vergis je niet: dit kleine apparaatje biedt je heel wat mogelijkheden. In de komende nummers tonen we je een aantal van die mogelijkheden, waarbij we je in enkele workshops stap voor stap verschillende toepassingen laten installeren.
©PXimport
Nadat je met raspi-config de volledige capaciteit van je SD-kaart benut hebt, controleer je met de opdracht df -h -t rootfs hoeveel gigabyte je tot je beschikking hebt.