RaspberryPi

From Frack - Hackerspace Friesland
Jump to navigationJump to search
Onderwerp: Raspberry Pi
RaspberryCloseup.jpg
Deskundigen
Gebruiker CrazyA.jpg CrazyA
Gebruiker CrazyA.jpgCrazyA Rol: deelnemer Deskundig met: AVR, Arduino, Blender, Elektronica, GL-Inet, LPD8806, POV-Ray, RaspberryPi Werkt aan: Geen projecten :(
,
Afbeelding Anoniem.png Fludizz
Fludizz Rol: deelnemer Deskundig met: GL-Inet, Glasvezel lassen, Iptables, Linux, Netwerken, Nftables, OpenVPN, Python, RaspberryPi, Software Beginnend met: ENC28J60 Werkt aan: Geen projecten :(
Beginners
Pan.png Panter
Pan.pngPanter Rol: deelnemer Deskundig met: Programmeren Beginnend met: Arduino, Python, RaspberryPi, Robotica, Solderen Werkt aan: Geen projecten :(
Onderdeel van Elektronica, Linux
Raspberry Pi wordt o.a. gebruikt in
Binaire klok, Buildboard

De Raspberry Pi is een creditcard-formaat computertje met een ARM11-processor (BCM2835). Door de lage prijs (begint bij $25), open structuur en grote community is er een enorme ontwikkeling gaande rondom de Raspberry Pi (RPI).

The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video. We want to see it being used by kids all over the world to learn programming.

raspberrypi.org

Waarschuwing vooraf

  • Remember: The Raspberry Pi is a 3.3 volt device! Attempting to connect to any 5V logic system will very likely result in tears.
  • The RPi Wiki takes pains to remind you that these GPIO pins are unbuffered and unprotected, so if you short something out, you could fry your whole Pi, so be careful!

Model A en B

De RPI is beschikbaar in twee modellen (shameless rip van wikipedia.org):

Model A Model B
Target price: US$ 25 US$ 35
SoC: Broadcom BCM2835 (CPU, GPU, DSP, SDRAM, and single USB port)
CPU: 700 MHz ARM1176JZF-S core (ARM11 family)
GPU: Broadcom VideoCore IV, OpenGL ES 2.0, MPEG-2 and VC-1 (with license), 1080p30 h.264/MPEG-4 AVC high-profile decoder and encoder
Memory (SDRAM): 256 MB (shared with GPU) 512 MB (shared with GPU) as of October 15, 2012
USB 2.0 ports: 1 2 (via integrated USB hub)
Video outputs: Composite RCA (PAL and NTSC), HDMI (rev 1.3 & 1.4), raw LCD Panels via DSI

14 HDMI resolutions from 640×350 to 1920×1200 plus various PAL and NTSC standards.

Audio outputs: 3.5 mm jack, HDMI
Onboard storage: SD / MMC / SDIO card slot
Onboard network: None 10/100 Ethernet (RJ45) via USB hub
Low-level peripherals: 8 × GPIO, UART, I²C bus, SPI bus with two chip selects, +3.3 V, +5 V, ground
Power ratings: 300 mA (1.5 W) 700 mA (3.5 W)
Power source: 5 volt via MicroUSB or GPIO header
Size: 85.60 × 53.98 mm
Weight: 45g
Operating systems: Debian GNU/Linux, Fedora, Arch Linux ARM,RISC OS

Tegenwoordig heeft het B-model 512 MB geheugen, voorheen was die 256. Het geheugen is niet volledig beschikbaar voor applicaties, een deel moet worden afgestaan aan de videochip. De ratio van de split is in te stellen.

Voeding

Het B-model gebruikt tot 700mA (3.5W) stroom, dus hoewel een USB2.0 poort niet voldoende is bij vol gebruik kan deze wel gebruik worden om te testen of de Raspberry Pi boot en of de SD-kaart goed werkt. Suggesties voor voedingen:

  • Telefoon/tablet USB oplader
  • 5V adapter (met MicroUSB stekker)
  • Zelfbouw voeding direct op de print gesoldeerd.

Om te weten of je gekozen oplossing voldoende stroom levert zijn er twee testpunten op de printplaat. Over deze twee testpunten moet bij gebruik van de Raspberry Pi een spanning staan tussen 4,75 en 5,25 Volt. Wanneer de spanning hieronder valt levert de voeding niet voldoende stroom (de spanning zakt in). Zet hier een multimeter op en meet hoeveel volt eruit komt. Als deze spanning tussen 5,25 en 4,75 volt zit onder belasting is de voeding geschikt.

USB power

Fludizz z'n Rev.1 Pi met een simpele draadbrug over polyfuses F1 en F2 heen.

Het is mogelijk om de Pi te voeden via de USB poorten, middels bijvoorbeeld zogenoemde 'backfeed' van powered USB hubs. Dit werkt echter niet met revisie 1 Pi's door de aanwezigheid van twee 140mA 'polyfuses'. Deze zekeringen veroorzaken twee problemen op de Pi:

  • De USB hub op het bord is niet beschikbaar voor het OS, als het de Pi überhaupt lukt om te booten, omdat 140mA te weinig is voor de USB chip.
  • De apparaten aangesloten op de USB poorten mogen maximaal 140mA verbruiken, bij hoger verbruik stort het voltage in door de polyfuses.

Bovenstaande problemen kunnen opgelost worden door de polyfuses (F1 en F2) te verwijderen en vervangen met draadbruggen. De polyfuses zitten tussen de USB poorten en de LED's in op de bovenkant van de Pi. Zonder deze polyfuses is de 140mA beperking op de USB poorten niet langer aanwezig. Indien dergelijke modificaties niet wenselijk zijn kan je dit ook omzijlen door de powered USB hub te modificeren: Knip de +5V draad die richting de Pi gaat door zodat de USB Hub geen 'backfeed' voeding meer kan leveren aan de Pi.

Bij nieuwere revisies zijn fuses F1 en F2 niet langer aanwezig en zijn beide problemen opgelost. De Pi kan daarmee gevoed worden vanaf elk punt waar +5V beschikbaar is, onder andere via de GPIO en USB poorten. Echter is het wel aan te raden om de Pi te voeden middels de daarvoor bedoelde micro-USB aansluiting, die ingang is namelijk gezekerd met een 750mA Polyfuse en heeft een kleine elco om de input te stabiliseren. Gezien de 750mA zekering is het nog altijd raadzaam om hoog vermogen USB apparaten (bijvoorbeeld USB powered harde schijven) via een powered USB hub aan te sluiten.

HDMI CEC probleem

Fludizz z'n Rev1 Pi waarbij D14 reeds verwijdert is

Bij Raspberry Pi Rev 1.0 is er een probleem dat bij sommige TV's voor verstoorde of complete uitval van CEC data via HDMI zorgde. Dit is terug te leiden tot de transistor D14 bij de HDMI connector. Dit probleem kan opgelost worden door simpelweg D14 weg te solderen. In revisie 2.0 is deze mogelijk weggelaten of anders aangesloten en is het CEC probleem opgelost.

Voordat je gaat desolderen is het zinnig om eerst te kijken of jouw specifieke TV toestel last heeft van dit probleem of niet. Stappen om het probleem te reproduceren:

  • Sluit je Raspberry Pi aan op de HDMI poort van je TV.
  • Zet je TV en Raspberry Pi aan.
  • Sluit een derde device aan wat CEC-capable is maar laat deze eerst nog uit staan.
  • Verwijder de spanning van de Raspberry Pi.
  • Zet het derde apparaat aan en controleer of deze nu de TV nog correct kan detecteren (Resolutie, refresh rate, etc.).

Besturingssystemen

Er zijn grofweg twee specefieke richtingen waarin de besturingssystemen voor de Raspberry Pi gegaan zijn:

  • Voor onderzoek, educatieve en ontwikkel doeleindes (Normale builds)
  • Als lightweight Mediacenter

Normale Builds

Deze distributies zijn doorgaands voorzien van een optionele grafische shell en zijn voorzien van een basis set aan programmeer software en zijn gemakkelijk te vinden op de Raspberry Pi Download site.

  • Raspbian - De bekenste en meest gebruikte Linux-distributie voor de RPI. Het is gebaseerd op Debian, bevat standaard al Python en is met apt-get uit te bereiden zoals Debian en Ubuntu-gebruikers dat altijd al gewend zijn. Er zijn momenteel zo'n 35000 voorgecompileerde pakketten beschikbaar.
  • Arch Linux ARM - Een op Arch Linux gebasseerde release, welke als alternatief kan dienen voor Raspbian. Deze distributie is meer gericht op gebruikers met uitgebreidere linux-kennis.
  • Risc OS - Dit is een besturingssysteem dat zijn wortels heeft bij de originele ontwikkelaars van de ARM architectuur en word onderhouden door RISC OS Open.

Mediacenter

Deze distributies zijn doorgaands 'Embedded' systemen met daardoor beperktere modificatie mogelijkheden.

  • RaspBMC - Zoals de naam doet vermoeden is deze gebasseerd op Raspbian en gebruikt XBMC 12 als Mediacenter applicatie.
  • XBian - Deze distributie is net als RaspBMC gebasseerd op Raspbian en gebruikt tevens XBMC 12.
  • OpenELEC - Dit is de populairste en aan te raden distributie. OpenELEC is een volledig gestripte Debian ARM build wat als voordeel heeft dat deze als een van de snelste geboot is. Ook bij OpenELEC word XBMC 12 gebruikt.

GPIO

De RPI heeft zeer toegankelijke General Purpose IO beschikbaar.

Behuizingen

Voor de raspi zijn er veel verschillende behuizingen beschikbaar, want wie wil zo'n moo stukje hardware nu onveilig en open en bloot op zn buro of tv kastje hebben liggen?

Enkele opties zijn;

Meer info