Raspberry Pi

Aus RaumZeitLabor Wiki

Der Raspberry Pi ist ein Einplatinen-Computer, der von der einer englischen Stiftung namens Raspberry Pi Foundation entwickelt wird. Auf einer Platine mit der ungefähren Größe einer Visitenkarte vereint er einen 700Mhz ARM-Prozessor, 128/256MB RAM, USB, 10/100Mbit Ethernet, HDMI, Composite Video, sowie einen SD-Karten-Slot. Es soll 2 Versionen geben, das Modell A mit 128MB RAM und ohne Ethernet für ~25€, und das Modell B mit 256MB RAM und Ethernet für ~35€.

Schnittstellen

Der Raspberry Pi bietet über einen 26poligen Verbinder eine Reihe von interessanten Schnittstellen zur Kommunikation mit Microcontrollern etc.

  • UART
  • SPI
  • I²C
  • Universelle GPIOs

Details dazu gibt es hier [1].

Erweiterungen

Die Raspberry Pi Foundation hat anscheinend vor, ein Erweiterungsboard mit dem Namen "Gertboard" anzubieten. Infos dazu: [2]

PoE-Adapter

Laut FAQ werden die ersten Revisionen kein PoE unterstützen. Daher könnte man hier selber aktiv werden. Der Raspberry Pi erwartet regulierte 5V über einen MicroUSB-Port. Über einen selbstgebauten Splitter mit Spannungsregulierung (vorzugsweise nicht linear) könnte man diese über das Netzwerkkabel transportieren. Pläne folgen.

Use Cases

Wofür könnte man den Raspberry Pi alles einsetzen?

  • Der Hausbus v2.0 wird möglicherweise auf dem Raspberry Pi basieren.

Sammelbestellung

Je nach Versandkosten macht es evtl. Sinn, eine Sammelbestellung zu starten. Interessenten können sich hier eintragen.

  • Sammelbestellungen sind wohl nicht möglich (nur ein Gerät pro Person) --Else 15:05, 9. Feb. 2012 (CET)
Name Anzahl Modell A Anzahl Modell B
tiefpunkt 0 3
the_nihilant 0 2
else 0 3
thinkJD 0 2
TTT 0 1
Docsteel 0 3
Felicitus 0 3

Leistung

RAM

Nachdem man auf der SD-Karte in /boot den Bootloader arm224_start.elf nach /boot/start.elf kopiert und neustartet, hat man den maximalen Arbeitsspeicher zur Verfügung:

pi@raspberrypi:~$ free -m
             total       used       free     shared    buffers     cached
Mem:           218         38        179          0          4         20
-/+ buffers/cache:         12        205
Swap:            0          0          0

Ethernet

Mittels iperf (keine Optionen) konnte ich 94 MBit/s Durchsatz messen. Standardmäßig hat zumindest das Debian-Image des Raspberry Pis kein iptables geladen. Mit iptables wird der Durchsatz vermutlich schlechter.

Mittels wget konnte ich mit 11.2 MB/s (~ 90 MBit/s) laden.

Mittels dd/netcat messe ich deutlich weniger (bei diesem Test muss es irgendein anderes Problem geben):

root@raspberrypi:/home/pi# dd if=/dev/zero bs=5M count=100 | nc -l -p 7000
524288000 bytes (524 MB) copied, 74.8077 s, 7.0 MB/s

(Maximal 7,2 MB/s gemessen, minimal 6,9 MB/s)

SATA-Festplatte via USB2SATA

Ich habe eine Seagate ST2000DL (2 TiB) mit einem USB2SATA-Adapter (Noname) angeschlossen. Folgende Geschwindigkeiten werden erreicht:

root@raspberrypi:/home/pi# dd if=/dev/sda of=/dev/null bs=5M count=100
524288000 bytes (524 MB) copied, 24.1694 s, 21.7 MB/s
root@raspberrypi:/home/pi# dd if=/dev/zero of=/dev/sda bs=5M count=100
524288000 bytes (524 MB) copied, 31.0694 s, 16.9 MB/s

Wohingegen ich auf meiner Workstation folgende Geschwindigkeiten erreiche:

midna ~ $ s dd if=/dev/sdd of=/dev/null bs=5M count=100
524288000 bytes (524 MB) copied, 16,6109 s, 31,6 MB/s
midna ~ $ s dd if=/dev/zero of=/dev/sdd bs=5M count=100
524288000 bytes (524 MB) copied, 17,8588 s, 29,4 MB/s

Bei meiner Workstation scheint also entweder USB oder der Adapter der Flaschenhals zu sein (USB2 schafft 60 MB/s laut Spec, die Festplatte auch). Beim Raspberry Pi hingegen ist der Raspberry Pi selbst der Flaschenhals.

SATA-Festplatte via USB2SATA übers Netz

Wenn man den Raspberry Pi als billige NAS benutzen will, hat man folgendes Problem:

root@raspberrypi:/home/pi# dd if=/dev/sda bs=5M count=100 | nc -l -p 7000
524288000 bytes (524 MB) copied, 109.542 s, 4.8 MB/s
root@raspberrypi:/home/pi# dd if=/dev/sda bs=5M count=100 | nc -l -p 7000
524288000 bytes (524 MB) copied, 95.8238 s, 5.5 MB/s
root@raspberrypi:/home/pi# dd if=/dev/sda bs=5M count=100 | nc -l -p 7000
524288000 bytes (524 MB) copied, 95.4676 s, 5.5 MB/s

Man büßt also ca. 2 MB/s an Netzwerk-Performance ein. Das liegt daran, dass der Ethernet-Port via USB angebunden ist:

smsc95xx 1-1.1:1.0: eth0: register 'smsc95xx' at usb-bcm2708_usb-1.1, smsc95xx USB 2.0 Ethernet