Apple • Gadgets • Synths • Electronics • Math • Mostly German

Raspberry Pi

Raspberry Pi: erste Erfahrungen

Photo 22.12.12 20 55 16Vorgestern, am Samstag (22.12.) wurde mein Raspberry Pi geliefert. Der DHL Mann hat das Päckchen von Watterott einfach hinter der blauen Mülltonne abgelegt und einen entspr. Hinweis auf die Benachrichtigungskarte geschrieben. Große Freude, denn ich wusste, dass das Paket ankommen wird, konnte aber nicht zuhause sein.
So richtig Zeit, um ihn in Betrieb zu nehmen, hatte ich aber erst gestern Abend. Und das war alles gar nicht sooo einfach.

Hardware

Erstmal braucht man ein wenig Hardware zuhause, um das Teilchen zum Leben erwecken zu können:
1. SD Karte, mind. 2GB groß, besser größer
2. Monitor oder Fernseher nebst Anschlusskabel/Stecker/Adapter
3. Netzwerkanschluss, kein WiFi (hat er nicht on board)
4. Tastatur & Maus
5. Stromversorgung

SD Karte

Ohne die SD Karte läuft gar nix, denn der RasPi kommt ohne Betriebssystem on board, das macht man auf die SD Karte, die sein Massenspeichermedium ist. Zum Glück fand ich noch eine 8GB SD Karte (Class 4), die früher in einem Canon Camcorder steckte. Am Mac auf Platte gesichert und dann im Disk Utility neu formatiert (FAT32). Dann einen schönen Link gefunden, wie man ein Image richtig drauf macht. Dazu unten nochmal mehr.

Monitor

Der Pi hat einen HDMI und einen Composite Ausgang, der natürlich nicht wirklich Spaß macht, aber im Notfall (oder wenn man den Pi mal als Spielekonsole an nem Fernseher nutzt) auch geht. In der Tat hatte ich mangels HDMI-Kabel/-Adapter/-fähigem Monitor erstmal ein Cinch Kabel angeschlossen und das andere Ende über einen Scart-Adapter an einen uralten Mini-Fernseher von Grundig angeschlossen. Das reichte, um zu sehen, dass der Pi lebt, nachdem ich eine SD-Karte mit Linux fertig hatte und er bootete.
Doch das war auf Dauer ungeeignet, weil auch rechts und links Text abgeschnitten war und das Bild natürlich reichlich unscharf. Man ist ja verwöhnt heutzutage. 😉
Ich fand im heimischen Technikmuseum noch einen ollen aber funktionstüchtigen 17″ TFT Monitor mit – yay! – digitalem DVI Eingang. Und dann fand ich noch mein einziges HDMI-auf-DVI Kabel, was zwar aktuell im Einsatz war, aber für dieses wichtigen Zweck durchaus mal herhalten musste. Das klappte dann alles prima und der alte 17″ Flachbildschirm (so “flach” sie halt damals waren) hat jetzt einen permanenten Platz auf dem Bastel-Schreibtisch bekommen, neben dem ollen iMac, an dem ich immer die Arduino Programme schreibe und Elektronik bastle. Muss nur mal schauen, welche Bildschirmauflösung da eigentlich läuft. Schließlich kann der Pi 1920×1280 und mein Monitor ist ja nur einer im 4:3 Verhältnis und kann nativ nur 1280×1024, glaub ich.

Netzwerk

Dazu ist erstmal nicht viel zu sagen (später mehr). Der Pi hat kein WiFi, aber eine Ethernet Buchse. Man braucht also dort, wo man ihn betreiben will (in der Nähe des Monitors also) auch einen Netzwerk-Anschluss und dann ein herkömmliches 100 Mbit (kein Gigabit, also Cat5e oder aufwärts nicht notwendig) Kabel. Natürlich kann man auch ohne angeschlossenes Netzwerk Kabel booten, dann hat man halt kein Internet und kann keine package updates machen etc. Ziemlich doof also. 😉

Tastatur & Maus

Der Pi hat (nur) zwei USB Ports. Wenn man da an einem eine Tastatur und am anderen eine Maus anschließt geht das natürlich. Aber dann sind auch alle Ports belegt. Und ich will sicher mal den Arduino an den Pi anschließen und dazu braucht es eben einen der beiden USB Ports. Außerdem hatte ich gerade keine “PC”-USB-Tastaturen/-Mäuse zur Hand. Was ich natürlich immer zur Hand habe, sind Apple Tastaturen & Mäuse. Und so ein Aluminium-USB-Keyboard hat zwei USB-Ports und an einem hab ich eine Apple USB Maus. Ums vorweg zu nehmen: das klappt! 🙂 Sicher nicht zuletzt auch deshalb, weil das raspi-config Programm so viele verschiedene Tastaturen zur Auswahl anbietet, darunter auch verschiedene Apple Tastaturen. Super! Nur mit dem deutschen Layout muss man in bisschen basteln, bis man das auch in der grafischen Oberfläche hat. Siehe unten.

Stromversorgung

Dazu hat der Pi eine Micro-USB Buchse und so bietet sich ein handelsübliches USB-Netzteil an. Ich habe das genommen, was bei meinem HTC One X dabei war, einfach weil es gerade greifbar war. Da tut es sicher auch eines von Apple, Samsung oder ein Noname. Nur 5V Gleichspannung und 700mA sollten rauskommen. Ein USB Port eines Rechners spuckt ja in der Regel nur 500mA aus, das kann gut gehen, muss es aber nicht.

Linux Image

Das angesagteste Image für den Pi scheint zur Zeit die Debian Wheezy Variante Raspbian zu sein, die wohl sogar die Hardware Floating Point Unit in dem ARM Prozessor unterstützt (was aber auch wieder Nachteile hat, denn offenbar läuft die aktuelle Oracle Java VM dann nicht?! Habs noch nicht probiert. Habs nicht so mit Java.). Holt man am besten hier.

Konfiguration

Zwei nennenswerte Probleme gab es zu meistern:

  • Deutsches Tastatur Layout
  • Internet bzw. Netzwerk Setup

Deutsches Tastatur Layout

Zwar konnte man nach dem Booten im Raspy-config Programm schön eine “Apple Aluminum” Tastatur auswählen und danach auch welches Layout (also bei mir: deutsch) man hat. Jede Menge Varianten gab es da. Und ich dachte, die, die ich auswählte, wäre die passendste. War aber nicht so, wie sich dann nach gestartetem Xserver zeigte. Da lag auf dem z das y und umgekehrt. Und ein paar wichtige Zeichen für Terminal Sessions (wie das Minus, den Slash etc.) musste man auch immer suchen. Auch wenn ich mittlerweile weiß, wo die auf einem deutschen Keyboard im amerikanischen Modus liegen: auf Dauer ist das nix und man will das richtig haben.
Die Lösung war einfach: man ein paar andere Kombinationen von Keyboard-Typ und Layout probieren. Da nicht jeder genau mein Setup hier hat, machts wohl nicht viel Sinn, das jetzt genauer zu beschreiben. Ich kann aber gern nachschauen, wenn es jemanden interessiert.
Jedenfalls habe ich es über das raspi-config Programm gelöst, was man auch bei schon laufendem Pi einfach im Terminal starten kann. Zwar hatte ich mir auch die entsprechende Linux Keyboard config Datei angeschaut und die zugehörige man page gelesen, aber das Rumfummeln brachte nichts. Ein einziges, klitzekleines Problem bleibt: zwei Tasten sind vertauscht, die größer/kleiner-Taste und die Grad/Caret-Taste. Damit kann ich aber erstmal leben, bis ich eine Lösung dafür gefunden habe.

Internet bzw. Netzwerk Setup

Da hatte ich zuerst das Problem, dass das Kabel, was ich ausgesucht hatte, wohl defekt war, denn die LNK (Link) und 100 (100 MBit) LEDs auf dem Board leuchteten gar nicht.
Das nächste Kabel tat es dann, die LEDs flackerten. Aber dennoch gab es Probleme mit dem Internet. Das merkte ich z.B. als ich mittels sudo apt-get upgrade Paket-Updates holen wollte: es konnte auf die Quellen nicht zugegriffen werden. Vermutlich hätte ich an der Stelle und mit dem neuen Kabel einfach mal neu booten bzw. das Netzwerk neu starten sollen. Denn die Standard Konfiguration ist DHCP und auf meiner Fritz!Box läuft auch ein DHCP Server, das hätte vermutlich geklappt. Da ich dem Pi aber sowieso eine feste IP Adresse geben wollte, musste ich die /etc/network/interfaces eh anpassen. Dumm nur, dass das “Durchstarten mit dem Raspberry Pi” Buch (O’Reilly Verlag), an das ich mich dabei gehalten habe, leider einen fatalen Druckfehler hat. Denn die Zeile, in der das eth0 Interface beschrieben wird, muss im Falle einer statischen IP Adresse – in meinem Falle – von den folgenden drei Zeilen gefolgt werden:

iface eth0 inet static
        address 192.168.0.220
        netmask 255.255.255.0
        gateway 192.168.0.2

Im Buch steht da leider für die erste, die address-Zeile statt address das keyword network, was natürlich völlig falsch ist. (Im dem Text folgenden Screenshot ist es dann aber richtig zu sehen.)
Das erklärte dann auch den Fehler, der beim ifup eth0 Kommando kam, dass das keyword address erwartet wird, aber nicht gefunden wurde.
Als ich das gefunden und gelöst hatte, klappte auch alles mit dem Internet und der Raspbian-eigene Webbrowser Midori zeigte die erste Webseite an. Sogar komplexere Seiten wie Facebook sehen recht gut aus – brauchen aber ne Menge CPU Zeit; nicht nur beim Laden, sondern auch während sie so da stehen, weil gerade Facebook natürlich permanent mächtig viel Traffic generiert. Da kommt so ein kleiner ARM single core Prozessor schonmal ins Schwitzen und die gefühlte Web-Browse-Performance könnte schon etwas flotter sein.

Wie geht’s weiter?

Video

Wenn man in eben diesem Midori Browser mal die YouTube Homepage aufruft und ein Video schauen will, erinnert man sich schlagartig wieder daran, dass der Pi einen ARM Prozessor hat und es dafür wohl kein Flash Plugin gibt. Und ein Aufruf der URL http://youtube.com/html5 bringt leider auch nur zu Tage, dass der Browser keinerlei HTML5 Video Features unterstützt. Werde also jetzt mal recherchieren, wie man dennoch Videos in Webseiten auf dem Raspberry Pi abspielen kann. Schließlich wird ja damit geworben, dass er Full HD kann und andere Projekte (z.B. Firefox OS) zeigen, dass er sogar bis zu 60 fps kann.

Webserver / LAMP

Das Kommando apachectl erkannte das installierte Debian Wheezy leider nicht, also scheint der httpd, der Apache Webserver, nicht installiert zu sein. Wäre aber extrem praktisch. PHP müsste natürlich auch laufen. Und vielleicht sogar MySQL. Muss ich alles mal raussuchen, was es da für die ARMv6 Architektur gibt. Dieser Link scheint ein guter Start zu sein.

Input/Output

Und nicht zuletzt ist der Pi natürlich ein Gerätchen zum basteln und experimentieren. Ähnlich dem Arduino. Er hat eine Stiftleiste mit Inputs und Outputs. Bin gespannt, wie man den Pi programmiert und diese Ports anspricht. Immerhin scheinen Entwicklungstools schon “von Haus aus” (also mit der Raspbian-Installation) gekommen zu sein.

Software installieren

Ein kleines Tool zum erzeugen von Screenshots habe ich schon installiert. Dank des laufenden SSH Servers (kann man in raspi-config aktivieren) lebt der Pi nicht mehr in einer Insel, sondern kann von allen anderen Rechnern besucht werden. Und man kann Dateien (zum Beispiel angelegte Screenshots) runterkopieren und alles mit ihnen machen, was mman heutzutage so macht, z.B. twittern. 😉
Apropos Twitter: ob’s einen Twitter Client für ARMv6 gibt? Mal suchen.

Spaß

Es gibt schon zahlreiche Plastik-casings für den RasPi zu kaufen, z.B. das hübsche Pibow. Sicher gibt es auch open source Files für 3D Printer irgendwo herunterzuladen.
Aus dem RasPi einen richtigen kleinen Arcade Spielautomaten machen geht auch! Dazu gab es dieses super Kickstarter Projekt, was ich aber zu spät bemerkte, so dass ich es nicht mehr unterstützen konnte.

Schreibe eine Antwort

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.