Raspberry Pi Kochbuch

Simon Monk

Vorwort

Seit seiner Einführung im Jahre 2011 hat sich der Raspberry Pi gleichermaßen als sehr günstiger, Linux-basierter Computer sowie als Plattform für das Embedded-Computing etabliert. Er ist im Ausbildungsbereich ebenso beliebt wie bei Bastlern und hat sich bereits über 2 Millionen mal verkauft.

In diesem Buch finden Sie eine Vielzahl von Rezepten für den Raspberry Pi. Diese reichen vom Einstieg und der Einrichtung Ihres Pi, über die Nutzung der Programmiersprache Python bis hin zu einer Reihe von Rezepten, die die Verwendung von Sensoren, Displays, Motoren und ähnlichen Komponenten beschreiben. Das Buch enthält darüber hinaus ein Kapitel, in dem die Nutzung von Arduino-Boards mit dem Raspberry Pi erläutert wird.

Sie können dieses Buch (wie jedes andere Buch auch) von vorne bis hinten durchlesen. Alternativ können Sie aber auch im Inhaltsverzeichnis oder im Index nach einem bestimmten Rezept suchen und sich diesem direkt widmen. Wenn Sie bei einem Rezept zusätzliche Dinge wissen müssen, finden Sie Verweise auf weiterführende Rezepte, genau wie bei einem normalen Kochbuch, in dem das Zubereiten einfacher Saucen beschrieben wird, die dann für aufwändigere Gerichte erforderlich sind.

Die Welt des Raspberry Pi dreht sich sehr schnell. In der sehr großen und aktiven Community werden ständig neue Interface-Boards und Software-Bibliotheken entwickelt. Neben vielen Beispielen, bei denen konkrete Interface-Boards genutzt werden oder spezielle Software zum Einsatz kommt, werden in diesem Buch auch Grundlagen erläutert, damit Sie besser verstehen, wie Sie neue Techniken nutzen können, wenn sich das Raspberry Pi-Ökosystem weiterentwickelt.

Wie Sie es wohl erwarten, enthält das Buch sehr viel Programmcode (meist in Form von Python-Programmen). Diese Programme sind alle Open Source und auf GitHub verfügbar. Einen entsprechenden Link finden Sie auf der Raspberry Pi Cookbook-Website.

Für die meisten softwarebasierten Rezepte benötigen Sie nur einen Raspberry Pi. Ich empfehle das Raspberry Pi Modell B. Bei Rezepten, in denen zusätzliche Hardware mit dem Raspberry Pi gekoppelt wird, habe ich versucht, bereits vorhandene Module zu nutzen und mit Steckbrettern und Drahtbrücken zu arbeiten, um Lötarbeiten zu vermeiden.

Wer steckbrettbasierte Projekte dauerhaft nutzen will, dem empfehle ich Prototyping-Boards mit dem Layout von kleinen Steckbrettern, wie Sie z.B. von Adafruit vertrieben werden. Auf diese Weise können Sie den Entwurf recht einfach in eine fest verlötete Lösung überführen.

Verwendete Konventionen

In diesem Buch werden die folgenden typografischen Konventionen verwendet:

Kursivschrift

wird für neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateierweiterungen verwendet.

Nichtproportionalschrift

wird für Programmlistings verwendet. Im normalen Fließtext werden damit Programmelemente wie Variablen- oder Funktionsnamen, Datenbanken, Datentypen, Umgebungsvariablen, Anweisungen und Schlüsselwörter hervorgehoben.

Nichtproportionalschrift fett

wird für Befehle oder andere Eingaben verwendet, die Sie wortwörtlich eingeben müssen.

Nichtproportionalschrift kursiv

wird für Text verwendet, der durch benutzereigene oder durch den Kontext bestimmte Werte ersetzt wird.

Anmerkung

Mit diesem Symbol wird ein Tipp, ein Vorschlag oder ein allgemeiner Hinweis angezeigt.

Warnung

Hiermit wird eine Warnung angezeigt.

Anmerkung

Mit diesem Symbol wird auf ein Video zum betreffenden Abschnitt verwiesen.

Codebeispiele

Ergänzendes Material (Codebeispiele, Übungen etc.) steht unter http://www.raspberrypicookbook.com zum Download bereit.

Dieses Buch soll Ihnen bei der Arbeit helfen. Den Code, den wir hier zeigen, dürfen Sie generell in Ihren Programmen und Dokumentationen verwenden. Sie müssen uns nicht um Genehmigung bitten, sofern Sie nicht große Teile des Codes reproduzieren. Wenn Sie zum Beispiel ein Programm schreiben, in dem mehrere Codeabschnitte aus diesem Buch genutzt werden, benötigen Sie dazu nicht unser Einverständnis. Falls Sie allerdings eine CD-ROM mit Codebeispielen aus O’Reilly-Büchern verkaufen oder verteilen möchten, müssen Sie sehr wohl eine entsprechende Erlaubnis einholen. Wenn Sie eine Frage mit einem Zitat aus diesem Buch und seinen Codebeispielen beantworten möchten, ist dazu keine Erlaubnis erforderlich, aber es ist nicht ohne Weiteres gestattet, große Teile unseres Textes oder Codes in eine eigene Produktdokumentation aufzunehmen.

Wir freuen uns über eine Quellenangabe, verlangen sie aber nicht unbedingt. Zu einer Quellenangabe gehören normalerweise der Titel, der Autor, der Verlag und die ISBN. Zum Beispiel: »Raspberry Pi Kochbuch von Simon Monk (O’Reilly). Copyright 2014 Simon Monk, 978-3-95561-638-0.«

Wenn Sie das Gefühl haben, dass Ihr Einsatz unserer Codebeispiele über die Grenzen des Erlaubten hinausgeht, schreiben Sie uns bitte eine E-Mail an permissions@oreilly.com.

Danksagungen

Wie immer danke ich Linda für ihre Geduld und Unterstützung.

Ich danke auch den technischen Korrektoren Duncan Amos, Chaim Krause und Steve Suehring. Ihre Kommentare waren sehr hilfreich.

Rachel Roumeliotis hat als Lektorin dieses Projekts einen großartigen Job gemacht. Durch ihren pragmatischen Ansatz wird die Arbeit sehr erleichtert und es entstehen interessante Projekte.

Danke auch an das gesamte O’Reilly-Team, insbesondere für die Gastfreundlichkeit bei meinem Besuch im Büro in Cambridge. Und natürlich auch einen Dank an Nan Reinhardt für ihre Korrekturen.

Kapitel 1. Setup und Betrieb

Einführung

Wenn Sie einen Raspberry Pi kaufen, erwerben Sie nur eine fertig bestückte Platine. Es ist weder ein Netzteil noch ein Betriebssystem enthalten.

In den Rezepten in diesem Kapitel wird beschrieben, wie Sie Ihren Raspberry Pi einrichten und einsatzbereit machen.

Da beim Raspberry Pi normale USB-Tastaturen und -Mäuse zum Einsatz kommen, ist der Großteil des Setups recht einfach, weshalb wir uns auf die Eigenheiten des Raspberry Pi konzentrieren wollen.

Ein Raspberry Pi-Modell wählen

Problem

Es gibt zwei Modelle des Raspberry Pi: A und B. Sie sind nicht sicher, welches Sie nutzen sollen.

Lösung

Wenn Sie einen Raspberry Pi für den allgemeinen Gebrauch benötigen, sollten Sie das Modell B, Revision 2 (die neueste Version), kaufen. Mit doppelt so viel Speicher ist es für die meisten Aufgaben wesentlich besser geeignet als das Modell A.

Wenn Sie andererseits einen Raspberry Pi in einem Projekt nur für einem bestimmten Zweck einsetzen möchten, ist eventuell auch der Einsatz des Modell A durchaus eine Option, bei der Sie einige Euro sparen können.

Diskussion

In Abbildung 1.1 sind die Modelle A und B nebeneinander abgebildet.

Abbildung 1.1 Raspberry Pi Modell A (links) und B (rechts)

Wie Sie in Abbildung 1.1 sehen, wird in beiden die gleiche Platine genutzt, doch das Modell A besitzt nur einen einzelnen USB-Anschluss und keinen Ethernet-Anschluss. Sie können auch das leere Lötpad hinter dem USB-Anschluss erkennen, an den der Ethernet-Controller angeschlossen wird.

Die Unterschiede zwischen den beiden Modellen sind in Tabelle 1.1 zusammengefasst. Die Tabelle berücksichtigt auch die Revision 1 des Modells B, das recht schnell durch die Revision 2 abgelöst wurde. Sie erkennen die Revision 1 an der schwarzen Audio-Buchse. Diese kommt bei Revision 2 in blauer Ausführung zum Einsatz.

Tabelle 1.1 Raspberry Pi-Modelle

Modell
RAM
USB-Anschlüsse
Ethernet-Port

A

256 MB

1

nein

B rev2

512 MB

2

ja

B rev1

256 MB

2

ja

Das Fehlen einer Netzwerkschnittstelle beim Modell A stellt kein großes Problem dar, weil alle Raspberry Pi-Modelle einen USB-WiFi-Adapter („Eine WLAN-Verbindung einrichten“) erkennen. Da der Adapter den einzigen USB-Anschluss belegen würde, benötigen Sie auch einen USB-Hub, um die Zahl der USB-Anschlüsse zu erhöhen. Beim Modell B können Sie hingegen den USB-WiFi-Adapter an den einen USB-Anschluss und einen Adapter für eine drahtlose Tastatur/Maus an den anderen anschließen.

Siehe auch

Weitere Informationen zu den Raspberry Pi-Modellen finden Sie unter http://de.wikipedia.org/wiki/Raspberry_PI.

Ein Gehäuse für den Raspberry Pi

Problem

Sie benötigen ein Gehäuse für Ihren Raspberry Pi.

Lösung

Der Raspberry Pi wird normalerweise ohne ein Gehäuse geliefert. Dadurch wird er anfälliger für Beschädigungen, denn auf der Unterseite der Platine liegen verschiedene Leitungen frei, die schnell zu einem Kurzschluss führen können, wenn der Raspberry Pi mit Metall in Berührung kommt.

Es ist daher eine gute Idee, Ihren Raspberry Pi durch ein Gehäuse zu schützen.

Diskussion

Sie können aus einer Vielzahl von Gehäusevarianten wählen:

einfache, zweiteilige Plastikgehäuse

VESA-konforme Gehäuse (zur Befestigung auf der Rückseite eines Monitors oder Fernsehers)

Lego-basierte Gehäuse

Gehäuse aus dem 3D-Drucker

Acryl-Gehäuse aus dem Lasercutter

Welches Gehäuse Sie kaufen, ist im Wesentlichen eine Frage des persönlichen Geschmacks. Dennoch sollten Sie zwei Dinge beachten:

Benötigen Sie Zugang zum GPIO-Stecker? Das ist wichtig, wenn Sie externe Elektronik an den Raspberry Pi anschließen möchten.

Ist das Gehäuse gut belüftet? Das ist wichtig, wenn Sie den Raspberry Pi („Die Leistung maximieren“) übertakten oder mit Videos und Spielen wirklich auslasten wollen. All dies führt zu einer höheren Wärmeentwicklung.

Siehe auch

Bei Adafruit findet sich eine schöne Auswahl an Raspberry Pi-Gehäusen.

Viele verschiedene Gehäusedesigns finden Sie auch bei den anderen Raspberry Pi-Anbietern und bei eBay.

Wahl eines Netzteils

Problem

Sie müssen ein Netzteil für Ihren Raspberry Pi auswählen.

Lösung

Ein für den Raspberry Pi geeignetes Netzteil muss laut Spezifikation eine stabilisierte Gleichspannung von 5V und einen Strom von bis zu 700mA liefern. Es muss außerdem über einen Micro-USB-Anschluss verfügen.

Wenn Sie das Netzteil von der gleichen Quelle beziehen wie den Raspberry Pi, sollte Ihnen der Anbieter Auskunft darüber geben können, ob es für den Raspberry Pi geeignet ist.

Wenn Sie einen WiFi-Adapter oder andere USB-Geräte nutzen möchten, die deutlich mehr Strom verbrauchen, sollten Sie ein Netzteil mit 1,5A oder sogar 2A verwenden. Meiden Sie außerdem sehr billige Netzteile, die die 5V nicht zuverlässig oder genau bereitstellen.

Diskussion

Das Netzteil mit seinem Stecker entspricht dem, was bei vielen Smartphone-Ladegeräten zu finden ist. Wenn es einen Micro-USB-Anschluss besitzt, liefert es höchstwahrscheinlich auch 5V (was Sie allerdings prüfen sollten). Die einzige Frage ist die, ob auch genügend Strom bereitgestellt wird.

Wenn dies nicht der Fall ist, kann das unangenehme Folgen haben:

Es kann heiß werden, so dass ein Brand ausgelöst wird.

Es funktioniert möglicherweise einfach nicht.

Bei hoher Last (z.B. wenn der Pi den WiFi-Adapter nutzt) kann die Spannung abfallen und der Raspberry Pi könnte einen Reset durchführen.

Suchen Sie also nach einem Netzteil, das einen Strom von 700 mA (oder mehr) liefert. Falls die Leistung in Watt (W) statt mA angegeben wird, teilen Sie diesen Wert durch 5, um den mA-Wert zu ermitteln. Ein Netzteil mit 5V/10W kann also bis zu 2A (2,000 mA) liefern.

Ein Netzteil mit einem Maximalstrom von z.B. 2A verbraucht nicht mehr Elektrizität als ein 700mA-Netzteil. Der Raspberry Pi zieht sich einfach genau so viel Strom, wie er benötigt.

In Abbildung 1.2 habe ich den Strom gemessen, den ein Raspberry Pi Modell B, Revision 2, beim Starten mit und ohne WiFi-Adapter und HDMI-Anschluss mit der Raspbian Wheezy-Distribution benötigt.

Abbildung 1.2 Stromverbrauch des Raspberry Pi während des Bootens

Wie Sie sehen können, steigt der Stromverbrauch nur selten über 500mA an. Allerdings ist der Prozessor hier auch nicht wirklich ausgelastet. Wenn Sie ein HD-Video abspielen, steigt der Stromverbrauch deutlich an. Bei Netzteilen sorgt man also besser für ausreichende Reserven.

Siehe auch

Auf http://www.pi-supply.com/ können Sie ein Netzteil kaufen, das sich ausschaltet, wenn der Raspberry Pi heruntergefahren wird.

Eine Betriebssystem-Distribution wählen

Problem

Für den Raspberry Pi stehen zahlreiche verschiedene Distributionen zur Verfügung. Sie sind nicht sicher, welche Sie wählen sollen.

Lösung

Die Antwort auf diese Frage hängt davon ab, für welchen Zweck Sie Ihren Raspberry Pi nutzen möchten.

Wenn Sie Hardware-Projekte mit dem Raspberry Pi realisieren wollen, verwenden Sie Raspbian oder Occidentalis (von Adafruit). Raspbian ist dabei die offizielle und am weitesten verbreitete Distribution für den Raspberry Pi, doch bei Occidentalis ist weniger Setup erforderlich, um mit dem Hardware-Hacking beginnen zu können.

Wenn Sie den Raspberry Pi als Mediacenter nutzen möchten, können Sie aus einer Reihe von Distributionen wählen, die speziell für diesen Zweck entwickelt wurden (siehe „Ein Media Center einrichten“).

In diesem Buch nutzen wir fast ausschließlich die Raspbian-Distribution, auch wenn die meisten Rezepte mit jeder Debian-basierten Distribution funktionieren.

Diskussion

SD-Karten – insbesondere die 4 GB-SD-Karten, die für die meisten Distributionen empfohlen werden – sind nicht besonders teuer, also besorgen Sie sich mehrere und probieren Sie verschiedene Distributionen aus. Wenn Sie das tun, sollten Sie eigene Dateien auf einem USB-Stick vorhalten, damit Sie diese nicht ständig auf jede SD-Karte kopieren müssen.

Beachten Sie, dass Sie bei den folgenden Rezepten, bei denen eine SD-Karte beschrieben wird, einen Computer mit SD-Karten-Leser benötigen (er ist bei vielen Laptops bereits vorhanden) oder einen günstigen USB-SD-Karten-Leser kaufen müssen.

Siehe auch

Offizielle Liste der Raspberry Pi-Distributionen

Occidentalis

Eine SD-Karte mit NOOBS beschreiben

Problem

Sie möchten eine SD-Karte mit NOOBS (»New Out of the Box Software«) beschreiben.

Lösung

Laden Sie die NOOBS-Archivdatei von http://www.raspberrypi.org/downloads herunter. Extrahieren Sie die Datei und speichern Sie sie auf einer SD-Karte.

Anmerkung

NOOBS lädt die von ihm benötigte Software selbst herunter. Wenn Sie mit einem Raspberry Pi Modell A ohne Netzwerkanschluss arbeiten, nutzen Sie besser eines der Rezepte, bei dem das gesamte Betriebssystem installiert wird. (, oder ).

Nach dem Herunterladen der NOOBS-Archivdatei extrahieren Sie die Datei und kopieren den Inhalt des Ordners auf die SD-Karte. Beachten Sie, dass das Archiv in einen Ordner namens NOOBS_v1_2_1 (oder mit einem ähnlichen Namen) extrahiert wird. Der Inhalt dieses Ordners muss in das Stammverzeichnis der SD-Karte kopiert werden, nicht der Ordner selbst.

Legen Sie die SD-Karte mit den extrahierten NOOBS-Dateien in den Raspberry Pi ein und schalten Sie den Rechner an. Während des Bootens erscheint das Fenster aus Abbildung 1.3. Über dieses Fenster können Sie dann die Distribution wählen, die Sie installieren möchten. Raspbian ist voreingestellt und für den Einstieg die beste Wahl.

Abbildung 1.3 NOOBS-Startseite

Sie erhalten eine Warnung, dass die SD-Karte überschrieben wird (und das ist auch gut so), und während die Distribution auf der SD-Karte installiert wird, wird eine Fortschrittsanzeige mit hilfreichen Informationen über die Distribution (Abbildung 1.4) angezeigt.

Abbildung 1.4 NOOBS überschreibt die SD-Karte

Sobald das Kopieren der Dateien abgeschlossen ist, wird die Erfolgsmeldung Image applied successfully ausgegeben. Wenn Sie die Return-Taste drücken, wird raspi_config automatisch ausgeführt, und Sie können die neue Installation konfigurieren („Den gesamten Speicher der SD-Karte nutzen“).

Diskussion

Damit NOOBS auf einer SD-Karte installiert werden kann, muss diese im FAT-Format formatiert sein. Die meisten SD-Karten werden FAT-formatiert ausgeliefert. Wenn Sie eine alte Karte wiederverwenden, müssen Sie die betriebssystemeigenen Tools zur Formatierung von Wechselmedien nutzen.

Alternativ empfiehlt die Raspberry Pi Foundation das Formatierungs-Tool der SD Association, das für Mac und Windows zur Verfügung steht.

Siehe auch

In den Rezepten , und wird erläutert, wie sich ein komplettes Betriebssystem-Image auf eine SD-Karte schreiben lässt.

Eine SD-Karte manuell beschreiben (Mac)

Problem

Der Raspberry Pi wird grundsätzlich nicht mit einem Betriebssystem ausgeliefert. Sie möchten einen Mac nutzen, um eine Betriebssystem-Distribution auf eine SD-Karte zu schreiben.

Lösung

Laden Sie ein iso-Image der gewünschten Distribution herunter (siehe „Eine Betriebssystem-Distribution wählen“). Nutzen Sie dann ein Utility-Skript, um es auf die SD-Karte zu schreiben.

Es gibt eine Reihe von Hilfsprogrammen, die entwickelt wurden, um Ihnen das Beschreiben einer SD-Karte zu erleichtern. Ein sehr beliebtes Programm steht auf GitHub zur Verfügung:

Laden Sie es herunter und extrahieren Sie den in der zip-Datei enthaltenen Ordner an eine geeignete Stelle.

Kopieren Sie das heruntergeladene iso-Image in diesen Ordner. Wir arbeiten in den vorliegenden Beispielen mit Occidentalis_v02.iso.

Entfernen Sie alle externen Festplatten und USB-Flashspeicher und legen Sie die SD-Karte ein.

Öffnen Sie ein Terminal, wechseln Sie (mit dem cd-Befehl) in den Installer-Ordner und führen Sie den folgenden Befehl aus:

sudo ./install Occidentalis_v02.iso

Wenn Sie ein anderes iso-Image nutzen, geben Sie natürlich den entsprechenden Dateinamen an. Der Befehl startet den SD-Installer und Sie sehen in etwa das in Abbildung 1.5 Dargestellte.

Sie müssen nun die Nummer eingeben, die Ihrer SD-Karte entspricht. Darum ist es eine gute Idee, alle Wechselmedien zu entfernen, da durch eine falsche Wahl alles gelöscht wird, was auf dem entsprechenden Laufwerk enthalten ist. Bevor Sie fortfahren, sollten Sie also genau wissen, welche Nummer Ihre SD-Karte hat.

Nachdem Sie Ihre Wahl getroffen haben, beginnt der Schreibvorgang, der üblicherweise mehrere Minuten dauert.

Abbildung 1.5 Beschreiben einer SD-Karte (Mac)

Diskussion

Sie können auch vorformatierte SD-Karte kaufen, auf denen bereits eine Distribution installiert ist. Allerdings handelt es sich dabei nicht immer um die neuesten Versionen, daher ist es nützlich, wenn Sie Ihre eigenen SD-Karten schreiben können.

Sie sollten immer eine SD-Karte mit mindestens 4 GB wählen.

Siehe auch

„Eine SD-Karte mit NOOBS beschreiben“ zeigt, wie sich ein SD-Karten-Image mit NOOBS erzeugen lässt.

All the (*)Ware bietet ein alternatives Utility zum Beschreiben einer SD-Karte auf dem Mac an.

Weitere Details zum Beschreiben einer SD-Karte finden Sie unter http://bit.ly/1cqhXym.

Eine SD-Karte manuell beschreiben (Windows)

Problem

Der Raspberry Pi wird grundsätzlich nicht mit einem Betriebssystem ausgeliefert. Sie möchten einen Windows-PC nutzen, um eine Betriebssystem-Distribution auf eine SD-Karte zu schreiben.

Lösung

Laden Sie ein iso-Image der gewünschten Distribution herunter (siehe „Eine Betriebssystem-Distribution wählen“). Verwenden Sie dann den Fedora ARM Installer, um das Image auf eine SD-Karte zu schreiben.

Beginnen Sie mit dem Download des Fedora ARM Installers.

Beachten Sie, dass diese Möglichkeit nur bei Windows Vista (und aktueller) besteht.

Extrahieren Sie den in der zip-Datei enthaltenen Ordner an eine geeignete Stelle (etwa den Desktop).

Entfernen Sie alle externen Festplatten und USB-Flashspeicher und legen Sie die SD-Karte ein.

Führen Sie fedora-arm-installer.exe als Benutzer mit Administratorrechten aus.

Das Tool besitzt eine schöne Benutzerschnittstelle (Abbildung 1.6).

Abbildung 1.6 Beschreiben einer SD-Karte (Windows)

Wählen Sie als Quelle (Source) das heruntergeladene iso-Image und im Ziel-Dropdown (Destination) die SD-Karte. Sobald Sie sicher sind, dass tatsächlich die SD-Karte ausgewählt ist, klicken Sie auf Install.

Diskussion

Sie können auch vorformatierte SD-Karte kaufen, auf denen bereits eine Distribution installiert ist. Allerdings handelt es sich dabei nicht immer um die neuesten Versionen, daher ist es nützlich, wenn Sie Ihre eigenen SD-Karten schreiben können.

Sie sollten immer eine SD-Karte mit mindestens 4 GB wählen.

Siehe auch

„Eine SD-Karte mit NOOBS beschreiben“ zeigt, wie sich ein SD-Karten-Image mit NOOBS erzeugen lässt.

Weitere Details und Optionen zum Beschreiben einer SD-Karte finden Sie unter http://elinux.org/RPi_Easy_SD_Card_Setup.

Eine SD-Karte manuell beschreiben (Linux)

Problem

Der Raspberry Pi wird grundsätzlich nicht mit einem Betriebssystem ausgeliefert. Sie möchten einen Linux-Rechner nutzen, um eine Betriebssystem-Distribution auf eine SD-Karte zu schreiben.

Lösung

Laden Sie ein iso-Image der gewünschten Distribution herunter (siehe „Eine Betriebssystem-Distribution wählen“). Nutzen Sie dann das Ubuntu-Tool ImageWriter, um es auf die SD-Karte zu schreiben. Bei anderen Linux-Distributionen sollten Sie NOOBS („Eine SD-Karte mit NOOBS beschreiben“) in Erwägung ziehen.

Installieren Sie zunächst das ImageWriter-Tool, indem Sie ein Terminal öffnen und den folgenden Befehl eingeben:

$ sudo apt-get install usb-imagewriter

Das Tool verfügt über eine schöne Benutzerschnittstelle (Abbildung 1.7).

Abbildung 1.7 Beschreiben einer SD-Karte (Linux)

Wählen Sie das heruntergeladene iso-Image im »Write Image«-Bereich und die SD-Karte im »to«-Dropdown aus. Sobald Sie ganz sicher sind, dass die SD-Karte und nicht irgendein Laufwerk ausgewählt ist, klicken Sie auf »Write to Device«.

Diskussion

Sie können auch vorformatierte SD-Karte kaufen, auf denen bereits eine Distribution installiert ist. Allerdings handelt es sich dabei nicht immer um die neuesten Versionen, daher ist es nützlich, wenn Sie eigene SD-Karten schreiben können.

Sie sollten immer eine SD-Karte mit mindestens 4 GB wählen.

Siehe auch

„Eine SD-Karte mit NOOBS beschreiben“ zeigt, wie sich SD-Karten-Images mit NOOBS erzeugen lassen.

Weitere Details und Optionen zum Beschreiben von SD-Karten finden Sie unter http://elinux.org/RPi_Easy_SD_Card_Setup.

Das System anschließen

Problem

Sie haben alles, was Sie für Ihren Raspberry Pi benötigen, und möchten ihn nun endlich anschließen.

Lösung

Solange Sie Ihren Raspberry Pi nicht in ein Projekt einbetten oder als Mediacenter nutzen, müssen Sie eine Tastatur, eine Maus, einen Monitor und möglicherweise einen WiFi-Adapter anschließen. Sobald Sie mehr als drei Komponenten anschließen, benötigen Sie selbst bei einem Raspberry Pi Modell B einen USB-Hub, damit eine ausreichende Anzahl an USB-Anschlüssen zur Verfügung steht.

Abbildung 1.8 zeigt ein typisches Raspberry Pi-System.

Abbildung 1.8 Ein typisches Raspberry Pi-System

Diskussion

Wenn Sie eine drahtlose Kombination aus Tastatur und Maus mit einem einzelnen USB-Anschluss nutzen, können Sie den anderen freien USB-Anschluss (beim Raspberry Pi Modell B) für einen WiFi-Adapter verwenden. Ein USB-Hub wird aber unabdingbar sein, wenn Sie zusätzlich noch eine externe USB-Platte oder einen USB-Flashspeicher anschließen möchten.

Der Raspberry Pi kann mit nahezu jeder Tastatur und jeder Maus arbeiten, ganz egal ob mit Kabel oder drahtlos. Die Ausnahme sind drahtlose Bluetooth-Tastaturen und -Mäuse, die mit dem Raspberry Pi nicht funktionieren.

Siehe auch

Der offizielle Raspberry Pi Quick Start Guide

Einen DVI- oder VGA-Monitor anschließen

Problem

Ihr Monitor besitzt keinen HDMI-Anschluss, aber Sie möchten ihn mit Ihrem Raspberry Pi nutzen.

Lösung

Viele Nutzer stehen vor eben diesem Problem. Glücklicherweise werden Adapter für Monitore vertrieben, die einen DVI- oder VGA-Eingang, aber keinen HDMI-Anschluss besitzen.

DVI-Adapter sind die einfachsten und günstigsten. Man findet sie für weniger als 5 Euro, wenn man nach »HDMI DVI Adapter« sucht,

Diskussion

Die Verwendung von VGA-Adaptern ist schwieriger, da hierfür eine Elektronik benötigt wird, die die Signale von Digital in Analog umwandeln. Der offizielle Adapter heißt Pi-View und ist überall dort erhältlich, wo auch der Raspberry Pi vertrieben wird. Pi-View hat den Vorteil, dass er getestet wurde und tatsächlich mit dem Raspberry Pi genutzt werden kann. Im Internet findet man günstigere Alternativen, die aber häufig nicht funktionieren.

Siehe auch

elinux gibt Tipps, worauf man bei einem Adapter achten muss.

Einen Composite-Monitor oder Fernseher verwenden

Problem

Der Text auf Ihrem niedrig auflösenden Composite-Monitor ist kaum lesbar. Sie müssen die Auflösung des Raspberry Pi für den kleinen Bildschirm anpassen.

Lösung

Der Raspberry Pi besitzt zwei Arten von Videoausgängen: HDMI und Composite Video. HDMI bietet dabei die deutlich bessere Qualität. Wenn Sie den Composite-Anschluss als Hauptbildschirm nutzen möchten, sollten Sie das vielleicht noch mal überdenken.

Falls Sie einen solchen Bildschirm nutzen, z.B. weil Sie einen wirklich kleinen Bildschirm benötigen, müssen Sie einige Anpassungen vornehmen, damit die Videoausgabe auf den Bildschirm passt. Dazu sind einige Änderungen in der Datei /boot/config.txt erforderlich. Sie können diese Datei auf dem Raspberry Pi ändern, indem Sie in einem Terminal den folgenden Befehl eingeben:

$ sudo nano /boot/config.txt

Wenn Sie den Text nicht lesen können oder keinen HDMI-Monitor besitzen, können sie die SD-Karte auch aus dem Raspberry Pi nehmen, in Ihren Computer stecken und dort editieren. Die Datei befindet sich im Stammverzeichnis der SD-Karte und Sie können sie mit dem Texteditor Ihres PCs bearbeiten.

Sie müssen die Auflösung Ihres Bildschirms kennen. Bei vielen kleinen Bildschirmen liegt sie bei 320 mal 240 Pixeln. Suchen Sie in der Datei nach den folgenden beiden Zeilen:

#framebuffer_width=1280
#framebuffer_height=720

Entfernen Sie die beiden #-Zeichen am Anfang der Zeilen und ändern Sie die beiden Werte für die Breite (width) und Höhe (height) Ihres Bildschirms. Im folgenden Beispiel wurden die Zeilen für eine Auflösung von 320 mal 240 angepasst:

framebuffer_width=320
framebuffer_height=240

Speichern Sie die Datei und starten Sie den Raspberry Pi neu. Nun sollten Sie alles wesentlich besser lesen können. Wahrscheinlich werden Sie nun aber einen großen Rahmen auf dem Bildschirm sehen. Wie man dies korrigiert, wird in „Die Bildgröße auf Ihrem Monitor anpassen“ erläutert.

Diskussion

Es sind viele günstige Überwachungsmonitore erhältlich, die eine ideale Ergänzung zum Raspberry Pi darstellen können, z.B. beim Herstellen einer Retro-Spielekonsole („Einen Emulator für klassische Spielekonsolen ausführen“). Allerdings verfügen diese Monitore häufig nur über eine sehr geringe Auflösung.

Siehe auch

Eine weitere Anleitung zur Nutzung von Composite-Monitoren finden Sie in diesem Adafruit-Tutorial.

„Die Bildgröße auf Ihrem Monitor anpassen“ und Abbildung 1.10 zeigen außerdem, wie das Bild eingestellt werden kann, wenn der HDMI-Ausgang zum Einsatz kommt.

Den gesamten Speicher der SD-Karte nutzen

Problem

Wenn ein Betriebssystem für den Raspberry Pi auf die SD-Karte geschrieben wird, bestimmt die Größe des Images auch die Größe der Partition, d.h., Sie können nicht die gesamte SD-Karte nutzen. Für eigene Dateien bleibt daher nur wenig Platz.

Lösung

Um dies zu korrigieren, müssen Sie das Tool raspi-config ausführen. Die Ausführung dieses Programms erfolgt automatisch, wenn der Raspberry Pi zum ersten Mal mit einer neuen SD-Karte gestartet wird. Sie können es aber jederzeit ausführen, um die Konfiguration anzupassen. Öffnen Sie dazu ein Terminal und geben Sie den folgenden Befehl ein:

$ sudo raspi-config

Scrollen Sie mit den Cursortasten bis zur Option expand_rootfs herunter und drücken Sie dann den Select-Button (Abbildung 1.9).

Abbildung 1.9 Die Root-Partition anpassen

Sie werden eine Bestätigungsmeldung erhalten und dann muss der Raspberry Pi neu gestartet werden, damit diese Änderung übernommen wird.

Sie sollten nun in der Lage sein, die gesamte SD-Karte zu nutzen.

Diskussion

Das Anpassen der Root-Partition lohnt sich definitiv, insbesondere beim Speichern temporärer Dateien. Ihre Dokumente und persönlichen Dateien sollten Sie aber auf einem USB-Stick vorhalten, um diese bei einem Update des Betriebssystems nicht erneut übertragen zu müssen.

Siehe auch

Wesentlich umfassendere Informationen zu raspi-config finden Sie unter http://elinux.org/RPi_raspi-config.

Die Bildgröße auf Ihrem Monitor anpassen

Problem

Wenn Sie einen Raspberry Pi zum ersten Mal an einen Monitor anschließen, ist ein Teil des Textes möglicherweise nicht lesbar, weil er über die Grenzen des Bildschirms hinausragt, oder beim Bild wird nicht der gesamte Platz auf dem Bildschirm genutzt.

Lösung

Wenn der Text über den Bildschirm hinausragt, nutzen Sie raspi-config, um den overscan abzuschalten.

Dazu öffnen Sie ein Terminal und starten raspi-config mit dem folgenden Befehl:

$ sudo raspi-config

Scrollen Sie mit den Cursortasten bis zur Option overscan und deaktivieren Sie den Overscan (Abbildung 1.10).

Abbildung 1.10 Overscan abschalten

Falls Ihr Problem in einem großen schwarzen Rand rund um das Bild besteht, können Sie diesen reduzieren (und vielleicht auch ganz eliminieren), indem Sie die Datei /boot/config.txt mit dem folgenden Befehl editieren:

$ sudo nano /boot/config.txt

Suchen Sie nach dem Abschnitt, der dem Overscan gewidmet ist. Die vier Zeilen, die Sie ändern müssen, befinden sich in der Mitte von Abbildung 1.11.

Abbildung 1.11 Overscan anpassen

Damit diese Zeilen wirksam werden, müssen Sie zuerst das Kommentarzeichen # am Anfang jeder Zeile entfernen.

Dann müssen Sie die Einstellungen so lange testen, bis der Bildschirm des Monitors optimal genutzt wird. Beachten Sie, dass es sich bei den vier Zahlen um negative Zahlen handeln muss. Beginnen Sie damit, alle Werte auf -20 zu setzen.

Diskussion

Den Raspberry Pi immer wieder neu starten zu müssen, damit die Änderungen angezeigt werden, ist etwas lästig. Glücklicherweise werden Sie diese Prozedur nur einmal durchführen müssen. Viele Monitore und Fernseher funktionieren aber auch ohne irgendwelche Anpassungen ausgezeichnet.

Siehe auch

Wesentlich umfassendere Informationen zu raspi-config finden Sie unter http://elinux.org/RPi_raspi-config.

Die Leistung maximieren

Problem

Ihr Raspberry Pi scheint sehr langsam zu sein. Sie wollen ihn daher übertakten, um ihn zu beschleunigen.

Lösung

Sie können die Taktfrequenz eines Raspberry Pi erhöhen, damit er etwas schneller läuft. Dadurch erhöht sich der Stromverbrauch ein wenig und er wird auch etwas wärmer (siehe die nachfolgende Diskussion).

Die hier beschriebene Übertaktungsmethode wird dynamisches Übertakten genannt, weil sie die Temperatur des Raspberry Pi überwacht und den Takt automatisch wieder verringert, wenn er zu heiß wird.

Um Ihren Pi zu übertakten, öffnen Sie ein Terminal und starten raspi_config wie folgt:

$ sudo raspi-config

Wählen Sie die Option overclock im Menü und es erscheinen die Übertaktungsoptionen wie in Abbildung 1.12.

Abbildung 1.12 Übertaktungsoptionen

Wählen Sie die gewünschte Option. Wenn Sie sehen, dass der Raspberry Pi instabil wird und sich unerwartet aufhängt, müssen Sie zu einer konservativeren Option wechseln oder die Übertaktung über die Option None wieder ganz deaktivieren.

Diskussion

Die Leistungssteigerung durch Übertaktung kann beachtlich sein. Um diese zu messen, habe ich einen Raspberry Pi Modell B, Revision 2, ohne Gehäuse bei einer Umgebungstemperatur von 15 Grad Celsius verwendet.

Als Testprogramm habe ich das folgende Python-Skript genutzt. Es bringt nur den Prozessor an seine Grenzen, ist für andere Dinge, die sich auf dem Computer abspielen (Beschreiben der SD-Karte, Grafik und so weiter) aber nicht repräsentativ. Doch es bietet einen guten Anhaltspunkt für die reine CPU-Performance, wenn die Auswirkungen des Übertaktens auf dem Raspberry Pi getestet werden sollen.

import time

def factorial(n):
  if n == 0:
    return 1
  else:
    return n * factorial(n-1)

before_time = time.clock()
for i in range(1, 10000):
  factorial(200)
after_time = time.clock()

print(after_time - before_time)

Die Ergebnisse dieses Tests sehen Sie in Tabelle 1.2.

Tabelle 1.2 Übertakten

| Geschwindigkeit | Strom | Temperatur (C)
700 MHz | 15,8 Sekunden | 360 mA | 27
1 GHz | 10,5 Sekunden | 420 mA | 30

Wie Sie sehen, erhöht sich die Performance um 33%, was aber mit einem höheren Stromverbrauch und einer geringfügig höheren Temperatur bezahlt werden muss.

Sie können sich nun einen selbstklebenden Kühlkörper besorgen, der auf den großen Chip in der Mitte des Raspberry Pi passt, um diesen etwas zu kühlen. Doch einige dieser Kühlkörper stellen keine thermisch (ab-)leitende Verbindung mit dem Chip her und sind daher eigentlich nur Show. Ein gut belüftetes Gehäuse („Ein Gehäuse für den Raspberry Pi“) ist da möglicherweise effektiver. Es gab auch Bemühungen, den Raspberry Pi mit einer Wasserkühlung auszustatten, was ich aber ehrlich gesagt albern finde.

Siehe auch

Weitere Informationen zu raspi-config finden Sie unter http://elinux.org/RPi_raspi-config.

Das Passwort ändern

Problem

Das Passwort des Raspberry Pi lautet standardmäßig raspberry. Sie möchten es ändern.

Lösung

Sie können raspi-config verwenden, um das Passwort zu ändern. Führen Sie das Programm mit dem folgenden Befehl in einem Terminal (siehe „Eine Terminal-Session starten“) aus:

$ sudo raspi-config

Wählen Sie im Menü die Option change_pass aus und folgen Sie den Anweisungen in Abbildung 1.13.

Abbildung 1.13 Das Passwort ändern

Das Ändern des Passworts ist eine der Gelegenheiten, bei denen der Raspberry Pi nicht neu gestartet werden muss, damit die Änderungen wirksam werden.

Diskussion

Sie können das Passwort auch in einer Terminal-Session ändern, indem Sie einfach den passwd-Befehl ausführen:

$ sudo passwd
Changing password for pi.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

Siehe auch

Weitere Informationen zu raspi-config finden Sie unter http://elinux.org/RPi_raspi-config.

Den Pi direkt in ein Windowing-System booten

Problem

Bei jedem Neustart des Raspberry Pi müssen Sie sich anmelden und dann den Desktop von Hand starten. Sie möchten diesen Vorgang automatisieren.

Lösung

Sie können raspi-config nutzen, um das Bootverhalten des Raspberry Pi dahingehend zu ändern, dass er sich automatisch einloggt und den Desktop startet. Starten Sie raspi_config in einem Terminal mit dem folgenden Befehl:

$ sudo raspi-config

Wählen Sie dann die Option boot_behaviour im Menü und folgen Sie dem Prompt in Abbildung 1.14.

Nachdem Sie die Bootoption geändert haben, werden Sie aufgefordert den Raspberry Pi neu zu starten, damit die Änderungen wirksam werden können.

Diskussion

Natürlich wird die Sicherheit beeinträchtigt, wenn sich der Raspberry Pi automatisch in die Windows-Umgebung einloggt. Da der Raspberry Pi aber meist nur dem persönlichen Gebrauch dient, überwiegt die Bequemlichkeit gegenüber solchen Nachteilen.

Abbildung 1.14 Desktop automatisch booten

Siehe auch

Weitere Informationen über raspi-config finden Sie unter http://elinux.org/RPi_raspi-config.

Den Raspberry Pi herunterfahren

Problem

Sie möchten den Raspberry Pi herunterfahren.

Lösung

Klicken Sie auf den roten Logout-Button in der oberen rechten Ecke des Desktops. Im Anschluss werden verschiedener Optionen angezeigt (Abbildung 1.15).

Shutdown

Fährt den Raspberry Pi herunter. Sie müssen den Stromversorgungsstecker ziehen und wieder einstecken, um den Raspberry Pi erneut zu starten.

Reboot

Bootet den Raspberry Pi neu.

Logout

Meldet Sie ab und gibt eine Eingabemaske aus, über die Sie sich mit Ihren Login-Daten erneut anmelden können.

Cancel

Bricht den Vorgang ab, so dass Sie mit dem Raspberry Pi weiterarbeiten können.

Abbildung 1.15 Den Raspberry Pi herunterfahren

Sie können ihn mit dem folgenden Befehl auch über die Kommandozeile neu starten:

sudo halt

Möglicherweise ist dies nach der Installation bestimmter Softwarepakete erforderlich. Bei einem Reboot wird eine Meldung wie in Abbildung 1.16 angezeigt, anhand derer sich der Multiuser-Charakter von Linux offenbart, indem es nämlich alle am Pi angemeldeten Benutzer warnt.

Abbildung 1.16 Den Raspberry Pi über das Terminal herunterfahren

Diskussion

Im Gegensatz zum Shutdown bei den meisten anderen Computern wird der Strom beim Raspberry Pi nicht ausgeschaltet. Dieser wechselt vielmehr in einen Stromsparmodus – und er verbraucht ohnehin schon sehr wenig Strom. Die Raspberry Pi-Hardware besitzt keinerlei Kontrolle über die Stromversorgung.

Siehe auch

Sie können auf http://www.pi-supply.com/ ein Modul kaufen, das auch den Strom ausschaltet, wenn der Raspberry Pi heruntergefahren wird.

Das Raspberry Pi-Kameramodul installieren

Problem

Sie möchten das Raspberry Pi-Kameramodul nutzen (siehe „Module“).

Lösung

Das Raspberry Pi-Kameramodul (Abbildung 1.17) wird über ein Flachbandkabel mit dem Raspberry Pi verbunden.

Abbildung 1.17 Das Raspberry Pi-Kameramodul

Das Kabel wird über einem speziellen Anschluss hinter dem Ethernet-Sockel verbunden. Um es anzubringen, ziehen Sie die Hebel auf beiden Seiten des Anschlusses hoch und drücken das Kabel dann in den Anschluss, wobei die nicht isolierten Anschlüsse des Kabels vom Ethernet-Anschluss weg zeigen. Drücken Sie die beiden Hebel wieder nach unten, damit das Kabel fest sitzt (Abbildung 1.18).

Abbildung 1.18 Das Raspberry Pi-Kameramodul anschließen

Warnung

Das Kameramodul reagiert empfindlich auf elektrostatische Entladungen. Bevor Sie mit dem Modul arbeiten, sollten Sie sich daher selbst erden, indem Sie zum Beispiel das Metallgehäuse eines PCs berühren.

Um das Kameramodul nutzen zu können, muss ein wenig Software konfiguriert werden. Die einfachste Möglichkeit der Konfiguration bietet raspi_config („Den gesamten Speicher der SD-Karte nutzen“). Starten Sie raspi-config in einem Terminal mit dem folgenden Befehl:

$ sudo raspi-config

Es wird eine Liste mit Optionen wie in Abbildung 1.19 angezeigt.

Abbildung 1.19 Das Konfigurations-Tool raspi-config

Wenn Sie die Camera-Option nicht in der Liste finden, müssen Sie das Betriebssystem aktualisieren, indem Sie in einem Terminal (siehe „Eine Terminal-Session starten“) die folgenden Befehle ausführen:

$ sudo apt-get update
$ sudo apt-get upgrade

Dazu benötigen Sie eine Internetverbindung. Beim zweiten Befehl braucht es ein paar Minuten, bis er durchgelaufen ist. Sobald die beiden Befehle ausgeführt wurden, starten Sie den Raspberry Pi neu („Den Raspberry Pi herunterfahren“).

Wenn Sie raspi-config jetzt ausführen, wird eine Option angezeigt, mit der die Kamera aktiviert werden kann (Abbildung 1.20).

Abbildung 1.20 Aktualisiertes Konfigurations-Tool raspi-config

Zwei Befehle stehen zur Verfügung, um Standbilder und Videos aufzunehmen: raspistill und raspivid.

Um ein Standbild zu speichern, verwenden Sie den Befehl raspistill wie folgt:

$ raspistill -o image1.jpg

Es wird eine entsprechende Vorschau für etwas fünf Sekunden angezeigt, dann wird ein Foto erzeugt und in der Datei image1.jpg im aktuellen Verzeichnis gespeichert.

Um Videos aufzunehmen, verwenden Sie den Befehl raspivid:

$ raspivid -o video.h264 -t 10000

Der Wert am Ende gibt die Aufnahmedauer in Millisekunden an – in diesem Fall also 10 Sekunden.

Diskussion

Sowohl für raspistill als auch für raspivid sind zahlreiche Optionen vorhanden. Wenn Sie einen der Befehle ohne Parameter aufrufen, wird ein Hilfetext mit den verfügbaren Optionen angezeigt.

Das Kameramodul kann Standbilder und Videos in hoher (HD) Auflösung aufnehmen.

Hier einige Schlüsselmerkmale der Kamera:

5-Megapixel-Sensor

f/2 Fixfokusobjektiv

Auflösung bei Standbildern 1920×1080

Videos in 1080p mit 30fps

Eine Alternative zum Kameramodul wäre eine USB-Webcam (siehe „Einen Webcam-Server einrichten“).

Siehe auch

In der RaspiCam-Dokumentation werden auch raspistill und raspivid erläutert.

Kapitel 2. Vernetzung

Einführung

Eines der Schlüsselmerkmale des Raspberry Pi ist seine Internetfähigkeit, die ihn für die unterschiedlichsten Anwendungsgebiete wie Heimautomation, Webserver, Netzwerküberwachung und vieles mehr interessant macht.

Die Netzwerkverbindung kann (zumindest beim Modell B) über ein Ethernetkabel oder über ein USB-WiFi-Modul erfolgen.

Wenn ein Raspberry Pi mit dem Netzwerk verbunden ist, lässt sich natürlich auch über einen anderen Computer eine Verbindung mit ihm herstellen. Das ist sehr nützlich, wenn der Raspberry Pi selbst nicht zugänglich ist oder wenn keine Tastatur, Maus und Monitor angeschlossen ist.

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!