n n Durchstarten mit a m t r a B Raspberry Pi k i r E s y s l c l i i s e a r b ’ o Mit dem Raspberry Pi messen, steuern und spielen Erweiterungen für den Raspberry Pi Bonuskapitel Linux-Grundlagen Durchstarten mit Raspberry Pi Erik Bartmann Beijing · Cambridge · Farnham · Köln · Sebastopol · Tokyo Die Informationen in diesem Buch wurden mit größter Sorgfalt erarbeitet. Dennoch können Fehler nicht vollständig ausgeschlossen werden. Verlag, Autoren und Übersetzer übernehmen keine juristische Verantwortung oder irgendeine Haftung für eventuell verbliebene Fehler und deren Folgen. Alle Warennamen werden ohne Gewährleistung der freien Verwendbarkeit benutzt und sind möglicherweise eingetragene Warenzeichen. Der Verlag richtet sich im wesentlichen nach den Schreibweisen der Hersteller. Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen. Kommentare und Fragen können Sie gerne an uns richten: O’Reilly Verlag Balthasarstr. 81 50670 Köln E-Mail: [email protected] Copyright: © 2012 by O’Reilly Verlag GmbH & Co. KG 1. Auflage 2012 Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar. Lektorat: Volker Bombien, Köln Fachliche Unterstützung: Markus Ulsaß, Hamburg Korrektorat: Dr. Dorothée Leidig, Freiburg Satz: III-Satz, Husby; www.drei-satz.de Umschlaggestaltung: Michael Oreal, Köln Produktion: Karin Driesen, Köln Belichtung, Druck und buchbinderische Verarbeitung: Druckerei Kösel, Krugzell, www.koeselbuch.de ISBN 978-3-86899-410-0 Dieses Buch ist auf 100% chlorfrei gebleichtem Papier gedruckt. Inhalt Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VII Kapitel 1: Das Raspberry Pi-Board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Dann wollen wir mal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Kapitel 2: Linux auf dem Raspberry Pi installieren. . . . . . . . . . . . . . . . . . . . 31 SD-Karten-Setup unter Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 SD-Karten-Setup unter Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Kapitel 3: Die Partitionen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Die Linux-Partitionen des Raspberry Pi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Kapitel 4: Jetzt geht’s los – der Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Der Spaß beginnt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Kapitel 5: Software installieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Die Paketverwaltung mit apt-get. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Alternative Paketinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Kapitel 6: Wir programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Die Programmierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Kapitel 7: Programmieren in C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Programmieren in C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 Kapitel 8: Den Arduino an den Raspberry Pi anschließen . . . . . . . . . . . . 147 Der Arduino. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- V Kapitel 9: Raspberry goes Retro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 Der VICE-Emulator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Die SCUMM-Engine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Kapitel 10: Erweiterungen über GPIO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Die GPIO-Pins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 Kapitel 11: Die Erweiterungsplatine Gertboard . . . . . . . . . . . . . . . . . . . . . . 213 Das Gertboard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 Kapitel 12: Das PiFace-Board. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Das PiFace-Board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Ein Codeeingabe-System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Kapitel 13: Erweiterte Konfiguration für den Raspberry Pi. . . . . . . . . . . . 273 Ein Editor auf Kommandozeilenebene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 Konfigurationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Kapitel 14: Linux-Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Linux-Kommandos und Programme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Headless Raspberry Pi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 Kapitel 15: Cases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 Selbst gemacht. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 Fertig gekauft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 Kapitel 16: Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Kapitel 17: Interessante Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 Wo finde ich was?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 Weiterführende Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315 VI-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Inhalt First Einleitung Hier Mini IVZ eingeben! Erstellen auf den Abstand untere Tabellenlinie zu Textanfang 1,8 cm Arbeitsseiten -> also: manuell auf den Arbeitsseiten ziehen!!! (siehe Muster) Wenn man so durch das Internet surft, dann findet man hier und dort schon recht interessante Artikel, und bei der Masse an Infor- mationen ist es nicht leicht, die Spreu vom Weizen zu trennen. Viele auf den ersten Blick richtig gute Postings entpuppten sich spä- ter als Luftnummern, denen keine Zukunft beschieden war. Es genügt eben nicht, nur eine gute Idee zu haben. Man muss sie auch richtig zu Ende denken und dann zum richtigen Zeitpunkt an der richtigen Stelle platzieren, damit die richtigen Leute darauf auf- merksam werden. Welcher Zeitpunkt ist aber der richtige und wel- cher Ort der passende und wann treffe ich auf die richtigen Leute? Diese Fragen sind sicherlich nicht einfach zu beantworten und ein allgemeingültiges Rezept dafür gibt es sicher auch nicht. Auch wenn es Unmengen an Marktforschungsanalysen gibt, ein kleines Quäntchen Glück gehört einfach dazu. Neulich bin ich von einem guten Freund fast nebenbei auf eine Sache aufmerksam gemacht worden, die mich unmittelbar in ihren Bann gezogen hat. Er hatte bei Facebook einen Kommentar eingestellt, der auf eine YouTube- Seite verwies. Dieser Drei Minuten-Clip hatte es aber in sich. Er zeigte eine kleine, mit einer Handvoll Bauteilen bestückte Platine, deren Größe der einer Checkkarte glich. Zuerst dachte ich, es läge an der Kameraeinstellung, doch das Teil war wirklich klein. Es wurde hier ein Minicomputer mit enormem Potential präsentiert. Dieses Artefakt menschlicher Kreativität entpuppte sich dann als vollwertiger Computer, an dem alles für den Betrieb notwendige, was wir auch bei unserem heimischen PC verwenden, angeschlos- sen werden konnte, also ein Monitor, eine Tastatur, eine Maus, ein Netzwerkkabel, eine Stromversorgung sowie eine SD-Karte, und noch einiges andere mehr. Da fragt sich der eine oder andere sicher- lich, wie das denn alles auf einer Platine von der Größe einer ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- VII Checkkarte Platz findet. Und bisher habe ich lediglich ein paar nach außen führende Anschlüsse genannt. Da ist noch weitaus mehr drauf bzw. drin. Aber jetzt ist es wohl erst einmal an der Zeit, dass ich den Namen dieses unglaublichen Riesen im Zwergenfor- mat nenne. Wie, der steht doch schon auf dem Cover des Buches drauf? Ok, ok. Voll erwischt! Trotzdem. Der Name lautet Rasp- berry Pi und klingt zunächst einmal genauso unscheinbar, wie das Board auf den ersten Blich aussieht. Das hört sich fast wie in einer Werbeveranstaltung an, doch ich möchte niemanden überreden, lediglich überzeugen oder auch verblüffen. In der Werbung läuft das meistens genau andersherum. Da ist man später immer schlauer als vorher und ärgert sich. Das wird hier mit sehr hoher Wahrscheinlichkeit nicht passieren. Bevor ich jetzt noch weiter schwärme, sollte ich wohl erst einmal das Objekt der Begierde – und ich war und bin immer noch sehr begierig – aus dem Sack las- sen. Das Board wird in einem sehr unscheinbaren Karton geliefert. Abbildung1 Der Lieferkarton des Raspberry Pi-Boards Nach dem Auspacken kommt das folgende Board zum Vorschein, das aber noch in einem Antistatik-Folienbeutel verpackt ist. Den größten Raum auf diesem Board (siehe Abbildung 2 auf der fol- genden Seite) nehmen wirklich die einzelnen Anschlüsse ein, denn sie sind nun einmal genormt. Das Entwicklen neuer Anschlüsse spe- ziell für eine derart kleine Platine, die dann keinem allgemeinen Stan- dard entsprächen, wäre sicherlich nicht der richtige Weg gewesen. Es sollten all die Komponenten Verwendung finden können, die heut- zutage auch standardmäßig an allen Rechnern in unseren Haushal- ten angeschlossen sind. Die Kosten, um den Minicomputer zu betreiben, werden auf diese Weise sehr gering gehalten. Es ist sogar eine ganz normale Video-Out-Buchse vorhanden, die in unserer heu- tigen Zeit mehr und mehr von der Bildfläche verschwindet und durch VIII------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- DVI und HDMI verdrängt wird. Das hat aber durchaus seine Bewandtnis. Dieser Computer soll auch in einem Umfeld betrieben werden können, in dem noch ganz normale Fernseher vorhanden sind. Dadurch wird auch solchen Personen die Möglichkeit eröffnet, sich mit der betreffenden Materie auseinander zu setzen, die es sich unter Umständen nicht leisten können, immer wieder den neuesten Elektronik-Schnickschnack zu kaufen. Eine sehr kluge Entschei- dung, wie ich finde, die auf jeden Fall von der Weitsicht der Entwick- ler zeugt. Die hier auf dem Board verwendete Hardware entspricht fast der eines heutigen Smartphones. Das Raspberry Pi-Board ist quasi ein Smartphone ohne Tastatur bzw. Display. Das Board hat schon vor der Auslieferung, die sich aufgrund der enormen Nach- frage verzögerte, einen atemberaubenden Hype ausgelöst. Auch jetzt im Juli 2012 müssen viele noch auf ihre Bestellung warten und man- che sind schon ein wenig frustriert. Gerade in den Anfängen neuer Projekte kommt es hier und da zu Problemen und die Sache läuft nicht so richtig rund. Das ist auch – das möchte ich hier gar nicht ver- schweigen – beim Raspberry Pi der Fall. Die momentan verfügbare Software bereitet schon mal ein paar Probleme, doch das wird sich garantiert schnell ändern, denn die Community wächst unaufhör- lich. Ich denke, das ist ein ganz normaler Prozess, der durchlaufen werden muss, und am Ende des Tages gibt es immer Lösungen. Sei also gespannt, was sich auf diesem Gebiet noch so tun wird, denn langweilig wird es garantiert nicht. Tauche ein in die wundersame Welt des Raspberry Pi. Abbildung2 Das Raspberry Pi-Board ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- IX Aufbau des Buches Vielleicht hast du bemerkt, dass ich den Stil des Buches ein wenig anders gewählt habe, als du dass möglicherweise von anderen Fachbüchern gewohnt bist. Ich habe mich für eine sehr lockere und leserbezogene Sprache entschieden. Wenn du vielleicht meine vor- herigen Bücher über den Arduino bzw. die Programmiersprache Processing gelesen hast, dann weißt du, was auf dich zukommt und was dich erwartet. Das meine ich natürlich im positiven Sinn. Auch in diesem Buch wirst du von einem Kollegen begleitet, der an bestimmten Stellen des Buches ein paar Fragen stellt, die dir mögli- cherweise auch gerade durch den Kopf gegangen sind. Du wirst dich vielleicht – und das hoffe ich wirklich – ein wenig mit ihm identifizieren, denn eigentlich sind es Fragen, die sich sicherlich fast jeder hier und da stellt. Auf diese Weise wird es in meinen Augen etwas leichter, durch die manchmal doch recht komplexe Materie zu manövrieren. Wenn ich persönlich etwas nicht besonders schätze, dann sind das Bücher mit Lehrbuchcharakter. Vielleicht rührt diese Abneigung noch von meiner Schulzeit her, denn die Schulbücher zu meiner Zeit wurden anscheinend von Pädagogen geschrieben – habe ich wirklich die Bezeichnung Pädagoge verwen- det? – die von der Lehrstoffvermittlung so viel Ahnung hatten wie die besagte Kuh vom Eierlegen. Es war einfach grauenhaft und das möchte ich hier nicht wiederholen. Ich versuche die einzelnen Buchkapitel nicht streng voneinander zu trennen, so dass die Dinge fließend ineinander übergehen. Das ist leider nicht immer machbar, doch die Hoffnung stirbt ja bekanntlich zuletzt. Innerhalb des Textes findest du immer wieder einmal ein paar Pik- togramme, die je nach Aussehen eine abweichende Bedeutung haben. Das könnte wichtig für dich sein Hier findest du nützliche Informationen, Tipps und Tricks zum gerade angesprochenen Thema, die dir sicherlich helfen wer- den. Darunter befinden sich auch ggf. Suchbegriffe für die Suchmaschine Google. Ich werde nur wenige feste Internetad- ressen anbieten, da diese sich im Laufe der Zeit ändern können oder einfach wegfallen. Eine Bemerkung am Rande Die Information hat nicht unmittelbar etwas mit dem Thema zu tun, das ich gerade anspreche, doch man kann ja mal über den Tellerrand schauen. Es ist allemal hilfreich, ein paar Zusatzinfor- mationen zu erhalten. X-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Description: