Christoph Scherbeck, Charly Kühnast, Michael Kofler
Raspberry Pi
Das umfassende Handbuch. Über 1.000 Seiten in Farbe. Mit Einstieg in Linux, Python und Elektrotechnik. Aktuell zum Raspberry Pi 4. Auch für Einsteiger geeignet
3 Angebote ab € 22,99 €
Christoph Scherbeck, Charly Kühnast, Michael Kofler
Raspberry Pi
Das umfassende Handbuch. Über 1.000 Seiten in Farbe. Mit Einstieg in Linux, Python und Elektrotechnik. Aktuell zum Raspberry Pi 4. Auch für Einsteiger geeignet
- Gebundenes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
§Aktuell zum Raspberry Pi 4 sowie allen Vorgängerversionen erwartet Sie hier umfassendes Bastel-Wissen. Möchten Sie Linux mit dem RasPi lernen, suchen Sie Grundlagen und fortgeschrittene Techniken der Elektronik oder wollen Sie in die Programmierung mit Python einsteigen? Mit Michael Kofler, Charly Kühnast und Christoph Scherbeck steht Ihnen ein Autorenteam zur Seite, das das erforderliche Wissen leicht nachvollziehbar vermittelt und Sie mit zahlreichen Praxistipps und spannenden Beispielprojekten begeistern wird! §§Aus dem Inhalt:erten§Projekte: Bewässerungssystem, Servocam, Fitness-Armband, Luftraumüberwachung, Feinstaubmessung, Heimautomation etc.…mehr
Andere Kunden interessierten sich auch für
- Sebastian PohlRaspberry Pi Kompendium: Linux, Programmierung und Projekte24,99 €
- Simon MonkRaspberry Pi Kochbuch29,90 €
- Daniel KampertElektronik verstehen mit Raspberry Pi29,90 €
- Ingmar StapelRoboter-Autos mit dem Raspberry Pi29,90 €
- Rüdiger FollmannDas Raspberry Pi Kompendium59,99 €
- Sean McManusRaspberry Pi für Dummies19,99 €
- Mark SoperExpanding Your Raspberry Pi37,99 €
§Aktuell zum Raspberry Pi 4 sowie allen Vorgängerversionen erwartet Sie hier umfassendes Bastel-Wissen. Möchten Sie Linux mit dem RasPi lernen, suchen Sie Grundlagen und fortgeschrittene Techniken der Elektronik oder wollen Sie in die Programmierung mit Python einsteigen?
Mit Michael Kofler, Charly Kühnast und Christoph Scherbeck steht Ihnen ein Autorenteam zur Seite, das das erforderliche Wissen leicht nachvollziehbar vermittelt und Sie mit zahlreichen Praxistipps und spannenden Beispielprojekten begeistern wird! §§Aus dem Inhalt:erten§Projekte: Bewässerungssystem, Servocam, Fitness-Armband, Luftraumüberwachung, Feinstaubmessung, Heimautomation etc.
Mit Michael Kofler, Charly Kühnast und Christoph Scherbeck steht Ihnen ein Autorenteam zur Seite, das das erforderliche Wissen leicht nachvollziehbar vermittelt und Sie mit zahlreichen Praxistipps und spannenden Beispielprojekten begeistern wird! §§Aus dem Inhalt:erten§Projekte: Bewässerungssystem, Servocam, Fitness-Armband, Luftraumüberwachung, Feinstaubmessung, Heimautomation etc.
Produktdetails
- Produktdetails
- Rheinwerk Computing
- Verlag: Rheinwerk Verlag
- Artikelnr. des Verlages: 459/06933
- 6., überarb. Aufl.
- Seitenzahl: 1062
- Erscheinungstermin: 26. November 2019
- Deutsch
- Abmessung: 248mm x 175mm x 63mm
- Gewicht: 2080g
- ISBN-13: 9783836269339
- Artikelnr.: 57534381
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
- Rheinwerk Computing
- Verlag: Rheinwerk Verlag
- Artikelnr. des Verlages: 459/06933
- 6., überarb. Aufl.
- Seitenzahl: 1062
- Erscheinungstermin: 26. November 2019
- Deutsch
- Abmessung: 248mm x 175mm x 63mm
- Gewicht: 2080g
- ISBN-13: 9783836269339
- Artikelnr.: 57534381
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
Kofler, Michael
Dr. Michael Kofler studierte Telematik an der TU Graz. Er zählt zu den erfolgreichsten und vielseitigsten Computerbuchautoren im deutschen Sprachraum. Zu seinen Themengebieten zählen neben Linux auch macOS, MySQL, KVM, Visual Basic und Excel-VBA. Viele seiner Bücher wurden übersetzt. Michael Kofler arbeitet auch als Software-Entwickler, Berater sowie als Lehrbeauftragter an einer Fachhochschule.
Kühnast, Charly
Charly Kühnast, Jahrgang 1973, veröffentlicht bereits seit seinem vierzehnten Lebensjahr Fachartikel, Kolumnen und Glossen zu IT-Themen. Anfang der 90er lernte er auf einer Veranstaltung des Chaos Computer Club, dem er seit vielen Jahren angehört, das Betriebssystem Linux kennen. Seit dem Abschluss seines Studiums arbeitet er beim Kommunalen Rechenzentrum Niederrhein in Kamp-Lintfort. Dort ist er für die Verfügbarkeit und Sicherheit der Internet-Infrastruktur verantwortlich. Daneben gibt er sein Wissen als Lehrbeauftragter an verschiedenen Hochschulen weiter.
Dr. Michael Kofler studierte Telematik an der TU Graz. Er zählt zu den erfolgreichsten und vielseitigsten Computerbuchautoren im deutschen Sprachraum. Zu seinen Themengebieten zählen neben Linux auch macOS, MySQL, KVM, Visual Basic und Excel-VBA. Viele seiner Bücher wurden übersetzt. Michael Kofler arbeitet auch als Software-Entwickler, Berater sowie als Lehrbeauftragter an einer Fachhochschule.
Kühnast, Charly
Charly Kühnast, Jahrgang 1973, veröffentlicht bereits seit seinem vierzehnten Lebensjahr Fachartikel, Kolumnen und Glossen zu IT-Themen. Anfang der 90er lernte er auf einer Veranstaltung des Chaos Computer Club, dem er seit vielen Jahren angehört, das Betriebssystem Linux kennen. Seit dem Abschluss seines Studiums arbeitet er beim Kommunalen Rechenzentrum Niederrhein in Kamp-Lintfort. Dort ist er für die Verfügbarkeit und Sicherheit der Internet-Infrastruktur verantwortlich. Daneben gibt er sein Wissen als Lehrbeauftragter an verschiedenen Hochschulen weiter.
Vorwort ... 15
TEIL I Den Raspberry Pi kennenlernen ... 19
1. Kauf und Inbetriebnahme ... 21
1.1 ... Kauf ... 21
1.2 ... Raspberry-Pi-Distributionen ... 33
1.3 ... NOOBS-Installation ... 35
2. Erste Schritte in Raspbian ... 41
2.1 ... Basiskonfiguration ... 42
2.2 ... Der Pixel-Desktop ... 46
2.3 ... Wichtige Programme ... 49
2.4 ... WLAN-Konfiguration ... 59
2.5 ... Bluetooth-Konfiguration ... 60
2.6 ... USB-Sticks und -Festplatten ... 61
2.7 ... Drucker ... 62
3. Arbeiten im Terminal ... 65
3.1 ... Erste Experimente ... 65
3.2 ... Eingabeerleichterungen und Tastenkürzel ... 71
3.3 ... Die Bourne Again Shell (bash) ... 74
3.4 ... Arbeiten mit Administratorrechten (sudo) ... 80
3.5 ... Textdateien lesen und ändern ... 83
3.6 ... Verzeichnisse und Dateien ... 88
3.7 ... Komprimierte Dateien und Archive ... 95
3.8 ... Prozessverwaltung ... 99
3.9 ... Netzwerkkommandos ... 105
4. Tipps & Tricks ... 109
4.1 ... Image auf eine SD-Karte schreiben ... 109
4.2 ... Raspbian Lite ... 112
4.3 ... WLAN- und SSH-Server vorkonfigurieren ... 113
4.4 ... Pixel-Desktop konfigurieren ... 114
4.5 ... Bildschirmschoner aktivieren/deaktivieren ... 116
4.6 ... Screenshots erstellen ... 117
4.7 ... Mehr Farbe im Terminal ... 117
4.8 ... Overclocking ... 120
4.9 ... Notfall-Tipps ... 122
5. Arbeitstechniken ... 127
5.1 ... Programme installieren und verwalten ... 128
5.2 ... Updates ... 131
5.3 ... SSH ... 136
5.4 ... Fernwartung über das Remote Desktop Protocol ... 147
5.5 ... Fernwartung über VNC ... 151
5.6 ... Netzwerkverzeichnisse nutzen ... 152
5.7 ... Netzwerkverzeichnisse anbieten (Samba-Server) ... 158
5.8 ... Internetzugriff auf den Raspberry Pi ... 165
5.9 ... FTP-Server einrichten ... 174
5.10 ... Programme beim Systemstart ausführen ... 177
5.11 ... Programme regelmäßig ausführen (Cron) ... 179
5.12 ... Monitor ein- und ausschalten ... 182
5.13 ... Backups erstellen ... 183
6. Linux-Grundlagen ... 189
6.1 ... Benutzer und Gruppen ... 190
6.2 ... Zugriffsrechte ... 198
6.3 ... Paketverwaltung ... 204
6.4 ... Verwaltung des Dateisystems ... 206
6.5 ... Netzwerkkonfiguration ... 214
6.6 ... Bluetooth ... 221
6.7 ... Systemstart ... 224
6.8 ... Systemeinstellungen in config.txt ... 231
6.9 ... Grafiksystem ... 236
6.10 ... Kernel und Module ... 238
6.11 ... Device Trees ... 241
TEIL II Der Raspberry Pi als Media-Center ... 245
7. Audio-Player mit Smartphone-Fernbedienung ... 247
7.1 ... MPD-Installation und -Konfiguration ... 247
7.2 ... MPD-Konfigurationsvarianten ... 253
7.3 ... HiFiBerry ... 262
7.4 ... Volumio ... 265
8. Multimedia-Center mit Kodi und LibreELEC ... 269
8.1 ... Installation und Konfiguration ... 270
8.2 ... Kodi-Betrieb ... 279
TEIL III Hardware-Grundlagen ... 287
9. Hardware-Einstieg ... 289
9.1 ... Platinenaufbau ... 289
9.2 ... Der BCM2711 ... 291
9.3 ... GPIO-Kontakte ... 295
9.4 ... Stromversorgung ... 303
9.5 ... Gehäuse ... 311
10. Elektrotechnik-Crashkurs ... 315
10.1 ... Strom, Spannung und das ohmsche Gesetz ... 315
10.2 ... Grundschaltungen ... 317
10.3 ... Elektronische Grundbauteile ... 322
10.4 ... Das Multimeter ... 327
10.5 ... Breadboard oder Platine? ... 330
10.6 ... Löten ... 332
10.7 ... Breadboardadapter ... 334
11. LEDs, Motoren und Relais ... 339
11.1 ... Leuchtdioden (LEDs) ... 339
11.2 ... Optokoppler ... 357
11.3 ... Elektromotoren ... 358
11.4 ... Schrittmotoren ... 371
11.5 ... Servomotoren ... 381
11.6 ... Relais ... 387
12. Bussysteme ... 391
12.1 ... SPI ... 391
12.2 ... Der Analog-Digital-Wandler MCP3008 ... 401
12.3 ... Der Digital-Analog-Wandler MCP4811 ... 407
12.4 ... I$^2$C ... 412
12.5 ... UART ... 421
12.6 ... Der Audio-Bus I$^2$S ... 427
12.7 ... 1-Wire ... 428
13. Sensoren ... 431
13.1 ... PIR-Bewegungssensor ... 431
13.2 ... Ultraschallsensor ... 435
13.3 ... Wasserstandssensor ... 438
13.4 ... Bodenfeuchtigkeitssensor ... 439
13.5 ... Temperatursensoren ... 444
13.6 ... Fotowiderstand ... 451
13.7 ... Das Multi-Analogsensor-Board PCF8591 ... 453
13.8 ... Raspberry Pi Camera Board und PiNoIR ... 456
13.9 ... Reed-Kontakt ... 469
13.10 ... Hardware Real Time Clock ... 471
13.11 ... IR-Empfänger ... 475
13.12 ... Fingerabdruck-Scanner ... 477
13.13 ... Leitfaden für fremde Sensoren ... 485
14. Erweiterungsboards ... 487
14.1 ... Das Gertboard ... 488
14.2 ... Der ATmega auf dem Gertboard ... 503
14.3 ... Logic-Level-Converter ... 508
14.4 ... PiFace Digital 2 ... 509
14.5 ... StromPi 2 -- USV und Wide-Range-Spannungsversorgung ... 515
14.6 ... Pimoroni Zero LiPo ... 518
14.7 ... GertDuino ... 520
14.8 ... Raspberry-Pi-HATs ... 524
14.9 ... Sense HAT -- Das Mulitalent ... 530
14.10 ... Adafruit PWM/Servo-HAT ... 535
14.11 ... BrickPi ... 538
14.12 ... GrovePi ... 539
15. Displays ... 541
15.1 ... 7-Segment-Anzeige ... 541
15.2 ... 16x2-LC-Display ... 544
15.3 ... PiTFT -- Der Touchscreen für den Raspberry Pi ... 549
15.4 ... Kfz-Rückfahrmonitore ... 554
15.5 ... Das offizielle Raspberry-Pi-Touchdisplay ... 558
15.6 ... OLED-Display SSD1306 ... 564
15.7 ... PaPiRus -- Das E-Paper-Display ... 568
15.8 ... Weitere Display-Boards ... 574
TEIL IV Programmierung ... 577
16. Python kennenlernen ... 579
16.1 ... Python ausprobieren ... 580
16.2 ... Python-Konzepte interaktiv kennenlernen ... 582
16.3 ... Hello World! ... 592
17. Python-Grundlagen ... 599
17.1 ... Elementare Syntaxregeln ... 599
17.2 ... Variablen und Objekte ... 605
17.3 ... Operatoren ... 615
17.4 ... Verzweigungen (if) ... 618
17.5 ... Schleifen (for und while) ... 620
17.6 ... Zeichenketten ... 626
17.7 ... Listen ... 632
17.8 ... Umgang mit Fehlern (Exceptions) ... 635
17.9 ... Funktionen ... 641
17.10 ... Objektorientiertes Programmieren ... 651
17.11 ... Systemfunktionen ... 663
18. Python-Programmierung ... 667
18.1 ... GPIO-Zugriff mit RPi.GPIO ... 667
18.2 ... GPIO-Zugriff mit gpiozero ... 674
18.3 ... Reset/Shutdown-Taste ... 678
18.4 ... Kamera ... 680
18.5 ... Dateien bei Dropbox hochladen ... 684
18.6 ... E-Mails versenden ... 688
18.7 ... Textdateien lesen und schreiben ... 690
18.8 ... Grafikprogrammierung ... 695
18.9 ... Grafische Benutzeroberflächen mit tkinter ... 702
18.10 ... Matplotlib ... 715
19. bash-Programmierung ... 721
19.1 ... Einführung ... 721
19.2 ... Variablen ... 725
19.3 ... Schleifen, Bedingungen und Funktionen ... 731
19.4 ... WiringPi ... 741
19.5 ... Das raspi-gpio-Kommando ... 747
19.6 ... Das pinout-Kommando ... 749
20. C-Programmierung ... 751
20.1 ... Hello World! ... 751
20.2 ... GPIO-Steuerung mit C ... 755
21. Java-Programmierung ... 759
21.1 ... Erste Schritte ... 759
21.2 ... GPIO-Steuerung mit Java ... 761
22. PHP-Programmierung ... 767
22.1 ... Apache installieren und konfigurieren ... 768
22.2 ... Webverzeichnisse einrichten und absichern ... 770
22.3 ... HTTPS ... 776
22.4 ... PHP installieren und konfigurieren ... 778
22.5 ... MariaDB installieren und administrieren ... 780
22.6 ... Hello World! in PHP ... 785
22.7 ... GPIO-Steuerung mit PHP ... 787
22.8 ... Kamerafunktionen mit PHP nutzen ... 792
23. Mathematica und die Wolfram Language ... 797
23.1 ... Arbeiten mit Mathematica ... 798
23.2 ... Programmieren mit der Wolfram Language ... 804
23.3 ... Grafische Darstellung von Temperaturdaten ... 811
TEIL V Projekte ... 815
24. Der Raspberry Pi im Vogelhaus ... 817
24.1 ... Einbau des Raspberry Pi samt Kameramodul in ein Vogelhaus ... 817
24.2 ... Kamerapraxis ... 820
24.3 ... Bewegungserkennung mit motion ... 823
24.4 ... Das Vogelhaus im praktischen Einsatz ... 827
25. Zeitmessung mit Lichtschranken ... 831
25.1 ... Versuchsaufbau (Hardware) ... 831
25.2 ... Software ... 834
26. Das autonome Auto ... 837
26.1 ... Hardware ... 837
26.2 ... Die Software ... 846
27. RFID-Türöffner mit Zutrittskontrolle ... 849
27.1 ... RFID-Hardware ... 850
27.2 ... Software ... 853
27.3 ... Erweiterungsmöglichkeiten und Tipps ... 859
28. Stromzähler auslesen ... 861
28.1 ... Stromzähler-Grundlagen ... 861
28.2 ... Einführung in RRDtool ... 865
28.3 ... Zählerdaten speichern und zu Graphen aufbereiten ... 870
29. Hausautomation mit Netzwerksteckdosen ... 873
29.1 ... Einführung ... 873
29.2 ... Programmierung ... 875
30. Hausautomation mit 433-MHz-Funktechnologie ... 887
30.1 ... Hardware-Grundlagen ... 887
30.2 ... Software und Steuerungsbeispiele ... 890
31. Die Schalthebel der Nacht ... 899
31.1 ... Vorbereitung ... 899
31.2 ... Der Lux-Sensor ... 900
31.3 ... IKEAs Trådfri-Beleuchtungssystem mit Linux steuern ... 902
31.4 ... Philips-Hue-Leuchten ansteuern ... 906
31.5 ... Lichtstärke messen, Leuchten steuern ... 909
32. Ort und Zeit per GPS empfangen ... 911
32.1 ... Haben Sie Zeit? Eine Uhr für den Raspberry Pi ... 911
32.2 ... Ortsbestimmung mit dem Raspberry Pi ... 919
33. Der Raspberry Pi lernt twittern ... 925
33.1 ... Voraussetzungen ... 925
33.2 ... Programmierung ... 927
34. Gewitter erkennen mit dem Blitzsensor ... 933
34.1 ... Blitzsensor AS3935 ... 933
34.2 ... Software ... 936
35. Klingel-Pi -- Der Türglockenverstärker ... 941
35.1 ... Geräuschsensor anschließen und auswerten ... 941
36. WLAN- und Tor-Router ... 945
36.1 ... Einführung ... 945
36.2 ... WLAN-Access-Point ... 948
36.3 ... WLAN-Router ... 954
36.4 ... Tor-Router ... 962
37. DLNA-Server ... 969
37.1 ... Raspbian-Installation auf große SD-Karten ... 970
37.2 ... ReadyMedia alias miniDLNA ... 973
37.3 ... Read-only-Konfiguration ... 974
38. Pi-hole (Ad-Blocker) ... 979
38.1 ... Installation ... 980
38.2 ... Client-Konfiguration ... 982
38.3 ... Weboberfläche ... 983
39. USB-Stick-Checker (CIRCLean) ... 985
39.1 ... CIRCLean installieren und anwenden ... 986
39.2 ... Einschränkungen ... 988
40. NAS mit openmediavault ... 989
40.1 ... Voraussetzungen ... 990
40.2 ... Installation ... 992
40.3 ... Konfiguration ... 993
41. Luftraumüberwachung ... 999
41.1 ... Technischer Hintergrund und Hardware ... 999
41.2 ... Software ... 1000
42. Die Servokamera ... 1005
42.1 ... Die Hardware ... 1006
42.2 ... Die Python-Software ... 1006
42.3 ... Die Streaming-Software ... 1008
42.4 ... Die Weboberfläche ... 1010
42.5 ... Inbetriebnahme ... 1011
43. PomodoPi ... 1013
43.1 ... Der Bodenfeuchtigkeitssensor ... 1013
43.2 ... Die Blumenampel ... 1021
43.3 ... Die automatische Bewässerung ... 1023
43.4 ... Photosynthese sichtbar machen ... 1027
44. Wassermelder mit Handyalarm ... 1031
44.1 ... Hardware ... 1031
44.2 ... Pushbullet ... 1033
45. Dicke Luft -- Feinstaubmessung und Innenluftqualität ... 1037
45.1 ... Was ist Feinstaub? ... 1037
45.2 ... Welcher Sensor kann PM10 und PM2.5 messen und wie funktioniert das? ... 1038
45.3 ... Anschauliche Grafiken im Web ... 1042
45.4 ... Luftqualitätssensor für den Innenraum ... 1046
Index ... 1049
TEIL I Den Raspberry Pi kennenlernen ... 19
1. Kauf und Inbetriebnahme ... 21
1.1 ... Kauf ... 21
1.2 ... Raspberry-Pi-Distributionen ... 33
1.3 ... NOOBS-Installation ... 35
2. Erste Schritte in Raspbian ... 41
2.1 ... Basiskonfiguration ... 42
2.2 ... Der Pixel-Desktop ... 46
2.3 ... Wichtige Programme ... 49
2.4 ... WLAN-Konfiguration ... 59
2.5 ... Bluetooth-Konfiguration ... 60
2.6 ... USB-Sticks und -Festplatten ... 61
2.7 ... Drucker ... 62
3. Arbeiten im Terminal ... 65
3.1 ... Erste Experimente ... 65
3.2 ... Eingabeerleichterungen und Tastenkürzel ... 71
3.3 ... Die Bourne Again Shell (bash) ... 74
3.4 ... Arbeiten mit Administratorrechten (sudo) ... 80
3.5 ... Textdateien lesen und ändern ... 83
3.6 ... Verzeichnisse und Dateien ... 88
3.7 ... Komprimierte Dateien und Archive ... 95
3.8 ... Prozessverwaltung ... 99
3.9 ... Netzwerkkommandos ... 105
4. Tipps & Tricks ... 109
4.1 ... Image auf eine SD-Karte schreiben ... 109
4.2 ... Raspbian Lite ... 112
4.3 ... WLAN- und SSH-Server vorkonfigurieren ... 113
4.4 ... Pixel-Desktop konfigurieren ... 114
4.5 ... Bildschirmschoner aktivieren/deaktivieren ... 116
4.6 ... Screenshots erstellen ... 117
4.7 ... Mehr Farbe im Terminal ... 117
4.8 ... Overclocking ... 120
4.9 ... Notfall-Tipps ... 122
5. Arbeitstechniken ... 127
5.1 ... Programme installieren und verwalten ... 128
5.2 ... Updates ... 131
5.3 ... SSH ... 136
5.4 ... Fernwartung über das Remote Desktop Protocol ... 147
5.5 ... Fernwartung über VNC ... 151
5.6 ... Netzwerkverzeichnisse nutzen ... 152
5.7 ... Netzwerkverzeichnisse anbieten (Samba-Server) ... 158
5.8 ... Internetzugriff auf den Raspberry Pi ... 165
5.9 ... FTP-Server einrichten ... 174
5.10 ... Programme beim Systemstart ausführen ... 177
5.11 ... Programme regelmäßig ausführen (Cron) ... 179
5.12 ... Monitor ein- und ausschalten ... 182
5.13 ... Backups erstellen ... 183
6. Linux-Grundlagen ... 189
6.1 ... Benutzer und Gruppen ... 190
6.2 ... Zugriffsrechte ... 198
6.3 ... Paketverwaltung ... 204
6.4 ... Verwaltung des Dateisystems ... 206
6.5 ... Netzwerkkonfiguration ... 214
6.6 ... Bluetooth ... 221
6.7 ... Systemstart ... 224
6.8 ... Systemeinstellungen in config.txt ... 231
6.9 ... Grafiksystem ... 236
6.10 ... Kernel und Module ... 238
6.11 ... Device Trees ... 241
TEIL II Der Raspberry Pi als Media-Center ... 245
7. Audio-Player mit Smartphone-Fernbedienung ... 247
7.1 ... MPD-Installation und -Konfiguration ... 247
7.2 ... MPD-Konfigurationsvarianten ... 253
7.3 ... HiFiBerry ... 262
7.4 ... Volumio ... 265
8. Multimedia-Center mit Kodi und LibreELEC ... 269
8.1 ... Installation und Konfiguration ... 270
8.2 ... Kodi-Betrieb ... 279
TEIL III Hardware-Grundlagen ... 287
9. Hardware-Einstieg ... 289
9.1 ... Platinenaufbau ... 289
9.2 ... Der BCM2711 ... 291
9.3 ... GPIO-Kontakte ... 295
9.4 ... Stromversorgung ... 303
9.5 ... Gehäuse ... 311
10. Elektrotechnik-Crashkurs ... 315
10.1 ... Strom, Spannung und das ohmsche Gesetz ... 315
10.2 ... Grundschaltungen ... 317
10.3 ... Elektronische Grundbauteile ... 322
10.4 ... Das Multimeter ... 327
10.5 ... Breadboard oder Platine? ... 330
10.6 ... Löten ... 332
10.7 ... Breadboardadapter ... 334
11. LEDs, Motoren und Relais ... 339
11.1 ... Leuchtdioden (LEDs) ... 339
11.2 ... Optokoppler ... 357
11.3 ... Elektromotoren ... 358
11.4 ... Schrittmotoren ... 371
11.5 ... Servomotoren ... 381
11.6 ... Relais ... 387
12. Bussysteme ... 391
12.1 ... SPI ... 391
12.2 ... Der Analog-Digital-Wandler MCP3008 ... 401
12.3 ... Der Digital-Analog-Wandler MCP4811 ... 407
12.4 ... I$^2$C ... 412
12.5 ... UART ... 421
12.6 ... Der Audio-Bus I$^2$S ... 427
12.7 ... 1-Wire ... 428
13. Sensoren ... 431
13.1 ... PIR-Bewegungssensor ... 431
13.2 ... Ultraschallsensor ... 435
13.3 ... Wasserstandssensor ... 438
13.4 ... Bodenfeuchtigkeitssensor ... 439
13.5 ... Temperatursensoren ... 444
13.6 ... Fotowiderstand ... 451
13.7 ... Das Multi-Analogsensor-Board PCF8591 ... 453
13.8 ... Raspberry Pi Camera Board und PiNoIR ... 456
13.9 ... Reed-Kontakt ... 469
13.10 ... Hardware Real Time Clock ... 471
13.11 ... IR-Empfänger ... 475
13.12 ... Fingerabdruck-Scanner ... 477
13.13 ... Leitfaden für fremde Sensoren ... 485
14. Erweiterungsboards ... 487
14.1 ... Das Gertboard ... 488
14.2 ... Der ATmega auf dem Gertboard ... 503
14.3 ... Logic-Level-Converter ... 508
14.4 ... PiFace Digital 2 ... 509
14.5 ... StromPi 2 -- USV und Wide-Range-Spannungsversorgung ... 515
14.6 ... Pimoroni Zero LiPo ... 518
14.7 ... GertDuino ... 520
14.8 ... Raspberry-Pi-HATs ... 524
14.9 ... Sense HAT -- Das Mulitalent ... 530
14.10 ... Adafruit PWM/Servo-HAT ... 535
14.11 ... BrickPi ... 538
14.12 ... GrovePi ... 539
15. Displays ... 541
15.1 ... 7-Segment-Anzeige ... 541
15.2 ... 16x2-LC-Display ... 544
15.3 ... PiTFT -- Der Touchscreen für den Raspberry Pi ... 549
15.4 ... Kfz-Rückfahrmonitore ... 554
15.5 ... Das offizielle Raspberry-Pi-Touchdisplay ... 558
15.6 ... OLED-Display SSD1306 ... 564
15.7 ... PaPiRus -- Das E-Paper-Display ... 568
15.8 ... Weitere Display-Boards ... 574
TEIL IV Programmierung ... 577
16. Python kennenlernen ... 579
16.1 ... Python ausprobieren ... 580
16.2 ... Python-Konzepte interaktiv kennenlernen ... 582
16.3 ... Hello World! ... 592
17. Python-Grundlagen ... 599
17.1 ... Elementare Syntaxregeln ... 599
17.2 ... Variablen und Objekte ... 605
17.3 ... Operatoren ... 615
17.4 ... Verzweigungen (if) ... 618
17.5 ... Schleifen (for und while) ... 620
17.6 ... Zeichenketten ... 626
17.7 ... Listen ... 632
17.8 ... Umgang mit Fehlern (Exceptions) ... 635
17.9 ... Funktionen ... 641
17.10 ... Objektorientiertes Programmieren ... 651
17.11 ... Systemfunktionen ... 663
18. Python-Programmierung ... 667
18.1 ... GPIO-Zugriff mit RPi.GPIO ... 667
18.2 ... GPIO-Zugriff mit gpiozero ... 674
18.3 ... Reset/Shutdown-Taste ... 678
18.4 ... Kamera ... 680
18.5 ... Dateien bei Dropbox hochladen ... 684
18.6 ... E-Mails versenden ... 688
18.7 ... Textdateien lesen und schreiben ... 690
18.8 ... Grafikprogrammierung ... 695
18.9 ... Grafische Benutzeroberflächen mit tkinter ... 702
18.10 ... Matplotlib ... 715
19. bash-Programmierung ... 721
19.1 ... Einführung ... 721
19.2 ... Variablen ... 725
19.3 ... Schleifen, Bedingungen und Funktionen ... 731
19.4 ... WiringPi ... 741
19.5 ... Das raspi-gpio-Kommando ... 747
19.6 ... Das pinout-Kommando ... 749
20. C-Programmierung ... 751
20.1 ... Hello World! ... 751
20.2 ... GPIO-Steuerung mit C ... 755
21. Java-Programmierung ... 759
21.1 ... Erste Schritte ... 759
21.2 ... GPIO-Steuerung mit Java ... 761
22. PHP-Programmierung ... 767
22.1 ... Apache installieren und konfigurieren ... 768
22.2 ... Webverzeichnisse einrichten und absichern ... 770
22.3 ... HTTPS ... 776
22.4 ... PHP installieren und konfigurieren ... 778
22.5 ... MariaDB installieren und administrieren ... 780
22.6 ... Hello World! in PHP ... 785
22.7 ... GPIO-Steuerung mit PHP ... 787
22.8 ... Kamerafunktionen mit PHP nutzen ... 792
23. Mathematica und die Wolfram Language ... 797
23.1 ... Arbeiten mit Mathematica ... 798
23.2 ... Programmieren mit der Wolfram Language ... 804
23.3 ... Grafische Darstellung von Temperaturdaten ... 811
TEIL V Projekte ... 815
24. Der Raspberry Pi im Vogelhaus ... 817
24.1 ... Einbau des Raspberry Pi samt Kameramodul in ein Vogelhaus ... 817
24.2 ... Kamerapraxis ... 820
24.3 ... Bewegungserkennung mit motion ... 823
24.4 ... Das Vogelhaus im praktischen Einsatz ... 827
25. Zeitmessung mit Lichtschranken ... 831
25.1 ... Versuchsaufbau (Hardware) ... 831
25.2 ... Software ... 834
26. Das autonome Auto ... 837
26.1 ... Hardware ... 837
26.2 ... Die Software ... 846
27. RFID-Türöffner mit Zutrittskontrolle ... 849
27.1 ... RFID-Hardware ... 850
27.2 ... Software ... 853
27.3 ... Erweiterungsmöglichkeiten und Tipps ... 859
28. Stromzähler auslesen ... 861
28.1 ... Stromzähler-Grundlagen ... 861
28.2 ... Einführung in RRDtool ... 865
28.3 ... Zählerdaten speichern und zu Graphen aufbereiten ... 870
29. Hausautomation mit Netzwerksteckdosen ... 873
29.1 ... Einführung ... 873
29.2 ... Programmierung ... 875
30. Hausautomation mit 433-MHz-Funktechnologie ... 887
30.1 ... Hardware-Grundlagen ... 887
30.2 ... Software und Steuerungsbeispiele ... 890
31. Die Schalthebel der Nacht ... 899
31.1 ... Vorbereitung ... 899
31.2 ... Der Lux-Sensor ... 900
31.3 ... IKEAs Trådfri-Beleuchtungssystem mit Linux steuern ... 902
31.4 ... Philips-Hue-Leuchten ansteuern ... 906
31.5 ... Lichtstärke messen, Leuchten steuern ... 909
32. Ort und Zeit per GPS empfangen ... 911
32.1 ... Haben Sie Zeit? Eine Uhr für den Raspberry Pi ... 911
32.2 ... Ortsbestimmung mit dem Raspberry Pi ... 919
33. Der Raspberry Pi lernt twittern ... 925
33.1 ... Voraussetzungen ... 925
33.2 ... Programmierung ... 927
34. Gewitter erkennen mit dem Blitzsensor ... 933
34.1 ... Blitzsensor AS3935 ... 933
34.2 ... Software ... 936
35. Klingel-Pi -- Der Türglockenverstärker ... 941
35.1 ... Geräuschsensor anschließen und auswerten ... 941
36. WLAN- und Tor-Router ... 945
36.1 ... Einführung ... 945
36.2 ... WLAN-Access-Point ... 948
36.3 ... WLAN-Router ... 954
36.4 ... Tor-Router ... 962
37. DLNA-Server ... 969
37.1 ... Raspbian-Installation auf große SD-Karten ... 970
37.2 ... ReadyMedia alias miniDLNA ... 973
37.3 ... Read-only-Konfiguration ... 974
38. Pi-hole (Ad-Blocker) ... 979
38.1 ... Installation ... 980
38.2 ... Client-Konfiguration ... 982
38.3 ... Weboberfläche ... 983
39. USB-Stick-Checker (CIRCLean) ... 985
39.1 ... CIRCLean installieren und anwenden ... 986
39.2 ... Einschränkungen ... 988
40. NAS mit openmediavault ... 989
40.1 ... Voraussetzungen ... 990
40.2 ... Installation ... 992
40.3 ... Konfiguration ... 993
41. Luftraumüberwachung ... 999
41.1 ... Technischer Hintergrund und Hardware ... 999
41.2 ... Software ... 1000
42. Die Servokamera ... 1005
42.1 ... Die Hardware ... 1006
42.2 ... Die Python-Software ... 1006
42.3 ... Die Streaming-Software ... 1008
42.4 ... Die Weboberfläche ... 1010
42.5 ... Inbetriebnahme ... 1011
43. PomodoPi ... 1013
43.1 ... Der Bodenfeuchtigkeitssensor ... 1013
43.2 ... Die Blumenampel ... 1021
43.3 ... Die automatische Bewässerung ... 1023
43.4 ... Photosynthese sichtbar machen ... 1027
44. Wassermelder mit Handyalarm ... 1031
44.1 ... Hardware ... 1031
44.2 ... Pushbullet ... 1033
45. Dicke Luft -- Feinstaubmessung und Innenluftqualität ... 1037
45.1 ... Was ist Feinstaub? ... 1037
45.2 ... Welcher Sensor kann PM10 und PM2.5 messen und wie funktioniert das? ... 1038
45.3 ... Anschauliche Grafiken im Web ... 1042
45.4 ... Luftqualitätssensor für den Innenraum ... 1046
Index ... 1049
Vorwort ... 15
TEIL I Den Raspberry Pi kennenlernen ... 19
1. Kauf und Inbetriebnahme ... 21
1.1 ... Kauf ... 21
1.2 ... Raspberry-Pi-Distributionen ... 33
1.3 ... NOOBS-Installation ... 35
2. Erste Schritte in Raspbian ... 41
2.1 ... Basiskonfiguration ... 42
2.2 ... Der Pixel-Desktop ... 46
2.3 ... Wichtige Programme ... 49
2.4 ... WLAN-Konfiguration ... 59
2.5 ... Bluetooth-Konfiguration ... 60
2.6 ... USB-Sticks und -Festplatten ... 61
2.7 ... Drucker ... 62
3. Arbeiten im Terminal ... 65
3.1 ... Erste Experimente ... 65
3.2 ... Eingabeerleichterungen und Tastenkürzel ... 71
3.3 ... Die Bourne Again Shell (bash) ... 74
3.4 ... Arbeiten mit Administratorrechten (sudo) ... 80
3.5 ... Textdateien lesen und ändern ... 83
3.6 ... Verzeichnisse und Dateien ... 88
3.7 ... Komprimierte Dateien und Archive ... 95
3.8 ... Prozessverwaltung ... 99
3.9 ... Netzwerkkommandos ... 105
4. Tipps & Tricks ... 109
4.1 ... Image auf eine SD-Karte schreiben ... 109
4.2 ... Raspbian Lite ... 112
4.3 ... WLAN- und SSH-Server vorkonfigurieren ... 113
4.4 ... Pixel-Desktop konfigurieren ... 114
4.5 ... Bildschirmschoner aktivieren/deaktivieren ... 116
4.6 ... Screenshots erstellen ... 117
4.7 ... Mehr Farbe im Terminal ... 117
4.8 ... Overclocking ... 120
4.9 ... Notfall-Tipps ... 122
5. Arbeitstechniken ... 127
5.1 ... Programme installieren und verwalten ... 128
5.2 ... Updates ... 131
5.3 ... SSH ... 136
5.4 ... Fernwartung über das Remote Desktop Protocol ... 147
5.5 ... Fernwartung über VNC ... 151
5.6 ... Netzwerkverzeichnisse nutzen ... 152
5.7 ... Netzwerkverzeichnisse anbieten (Samba-Server) ... 158
5.8 ... Internetzugriff auf den Raspberry Pi ... 165
5.9 ... FTP-Server einrichten ... 174
5.10 ... Programme beim Systemstart ausführen ... 177
5.11 ... Programme regelmäßig ausführen (Cron) ... 179
5.12 ... Monitor ein- und ausschalten ... 182
5.13 ... Backups erstellen ... 183
6. Linux-Grundlagen ... 189
6.1 ... Benutzer und Gruppen ... 190
6.2 ... Zugriffsrechte ... 198
6.3 ... Paketverwaltung ... 204
6.4 ... Verwaltung des Dateisystems ... 206
6.5 ... Netzwerkkonfiguration ... 214
6.6 ... Bluetooth ... 221
6.7 ... Systemstart ... 224
6.8 ... Systemeinstellungen in config.txt ... 231
6.9 ... Grafiksystem ... 236
6.10 ... Kernel und Module ... 238
6.11 ... Device Trees ... 241
TEIL II Der Raspberry Pi als Media-Center ... 245
7. Audio-Player mit Smartphone-Fernbedienung ... 247
7.1 ... MPD-Installation und -Konfiguration ... 247
7.2 ... MPD-Konfigurationsvarianten ... 253
7.3 ... HiFiBerry ... 262
7.4 ... Volumio ... 265
8. Multimedia-Center mit Kodi und LibreELEC ... 269
8.1 ... Installation und Konfiguration ... 270
8.2 ... Kodi-Betrieb ... 279
TEIL III Hardware-Grundlagen ... 287
9. Hardware-Einstieg ... 289
9.1 ... Platinenaufbau ... 289
9.2 ... Der BCM2711 ... 291
9.3 ... GPIO-Kontakte ... 295
9.4 ... Stromversorgung ... 303
9.5 ... Gehäuse ... 311
10. Elektrotechnik-Crashkurs ... 315
10.1 ... Strom, Spannung und das ohmsche Gesetz ... 315
10.2 ... Grundschaltungen ... 317
10.3 ... Elektronische Grundbauteile ... 322
10.4 ... Das Multimeter ... 327
10.5 ... Breadboard oder Platine? ... 330
10.6 ... Löten ... 332
10.7 ... Breadboardadapter ... 334
11. LEDs, Motoren und Relais ... 339
11.1 ... Leuchtdioden (LEDs) ... 339
11.2 ... Optokoppler ... 357
11.3 ... Elektromotoren ... 358
11.4 ... Schrittmotoren ... 371
11.5 ... Servomotoren ... 381
11.6 ... Relais ... 387
12. Bussysteme ... 391
12.1 ... SPI ... 391
12.2 ... Der Analog-Digital-Wandler MCP3008 ... 401
12.3 ... Der Digital-Analog-Wandler MCP4811 ... 407
12.4 ... I$^2$C ... 412
12.5 ... UART ... 421
12.6 ... Der Audio-Bus I$^2$S ... 427
12.7 ... 1-Wire ... 428
13. Sensoren ... 431
13.1 ... PIR-Bewegungssensor ... 431
13.2 ... Ultraschallsensor ... 435
13.3 ... Wasserstandssensor ... 438
13.4 ... Bodenfeuchtigkeitssensor ... 439
13.5 ... Temperatursensoren ... 444
13.6 ... Fotowiderstand ... 451
13.7 ... Das Multi-Analogsensor-Board PCF8591 ... 453
13.8 ... Raspberry Pi Camera Board und PiNoIR ... 456
13.9 ... Reed-Kontakt ... 469
13.10 ... Hardware Real Time Clock ... 471
13.11 ... IR-Empfänger ... 475
13.12 ... Fingerabdruck-Scanner ... 477
13.13 ... Leitfaden für fremde Sensoren ... 485
14. Erweiterungsboards ... 487
14.1 ... Das Gertboard ... 488
14.2 ... Der ATmega auf dem Gertboard ... 503
14.3 ... Logic-Level-Converter ... 508
14.4 ... PiFace Digital 2 ... 509
14.5 ... StromPi 2 -- USV und Wide-Range-Spannungsversorgung ... 515
14.6 ... Pimoroni Zero LiPo ... 518
14.7 ... GertDuino ... 520
14.8 ... Raspberry-Pi-HATs ... 524
14.9 ... Sense HAT -- Das Mulitalent ... 530
14.10 ... Adafruit PWM/Servo-HAT ... 535
14.11 ... BrickPi ... 538
14.12 ... GrovePi ... 539
15. Displays ... 541
15.1 ... 7-Segment-Anzeige ... 541
15.2 ... 16x2-LC-Display ... 544
15.3 ... PiTFT -- Der Touchscreen für den Raspberry Pi ... 549
15.4 ... Kfz-Rückfahrmonitore ... 554
15.5 ... Das offizielle Raspberry-Pi-Touchdisplay ... 558
15.6 ... OLED-Display SSD1306 ... 564
15.7 ... PaPiRus -- Das E-Paper-Display ... 568
15.8 ... Weitere Display-Boards ... 574
TEIL IV Programmierung ... 577
16. Python kennenlernen ... 579
16.1 ... Python ausprobieren ... 580
16.2 ... Python-Konzepte interaktiv kennenlernen ... 582
16.3 ... Hello World! ... 592
17. Python-Grundlagen ... 599
17.1 ... Elementare Syntaxregeln ... 599
17.2 ... Variablen und Objekte ... 605
17.3 ... Operatoren ... 615
17.4 ... Verzweigungen (if) ... 618
17.5 ... Schleifen (for und while) ... 620
17.6 ... Zeichenketten ... 626
17.7 ... Listen ... 632
17.8 ... Umgang mit Fehlern (Exceptions) ... 635
17.9 ... Funktionen ... 641
17.10 ... Objektorientiertes Programmieren ... 651
17.11 ... Systemfunktionen ... 663
18. Python-Programmierung ... 667
18.1 ... GPIO-Zugriff mit RPi.GPIO ... 667
18.2 ... GPIO-Zugriff mit gpiozero ... 674
18.3 ... Reset/Shutdown-Taste ... 678
18.4 ... Kamera ... 680
18.5 ... Dateien bei Dropbox hochladen ... 684
18.6 ... E-Mails versenden ... 688
18.7 ... Textdateien lesen und schreiben ... 690
18.8 ... Grafikprogrammierung ... 695
18.9 ... Grafische Benutzeroberflächen mit tkinter ... 702
18.10 ... Matplotlib ... 715
19. bash-Programmierung ... 721
19.1 ... Einführung ... 721
19.2 ... Variablen ... 725
19.3 ... Schleifen, Bedingungen und Funktionen ... 731
19.4 ... WiringPi ... 741
19.5 ... Das raspi-gpio-Kommando ... 747
19.6 ... Das pinout-Kommando ... 749
20. C-Programmierung ... 751
20.1 ... Hello World! ... 751
20.2 ... GPIO-Steuerung mit C ... 755
21. Java-Programmierung ... 759
21.1 ... Erste Schritte ... 759
21.2 ... GPIO-Steuerung mit Java ... 761
22. PHP-Programmierung ... 767
22.1 ... Apache installieren und konfigurieren ... 768
22.2 ... Webverzeichnisse einrichten und absichern ... 770
22.3 ... HTTPS ... 776
22.4 ... PHP installieren und konfigurieren ... 778
22.5 ... MariaDB installieren und administrieren ... 780
22.6 ... Hello World! in PHP ... 785
22.7 ... GPIO-Steuerung mit PHP ... 787
22.8 ... Kamerafunktionen mit PHP nutzen ... 792
23. Mathematica und die Wolfram Language ... 797
23.1 ... Arbeiten mit Mathematica ... 798
23.2 ... Programmieren mit der Wolfram Language ... 804
23.3 ... Grafische Darstellung von Temperaturdaten ... 811
TEIL V Projekte ... 815
24. Der Raspberry Pi im Vogelhaus ... 817
24.1 ... Einbau des Raspberry Pi samt Kameramodul in ein Vogelhaus ... 817
24.2 ... Kamerapraxis ... 820
24.3 ... Bewegungserkennung mit motion ... 823
24.4 ... Das Vogelhaus im praktischen Einsatz ... 827
25. Zeitmessung mit Lichtschranken ... 831
25.1 ... Versuchsaufbau (Hardware) ... 831
25.2 ... Software ... 834
26. Das autonome Auto ... 837
26.1 ... Hardware ... 837
26.2 ... Die Software ... 846
27. RFID-Türöffner mit Zutrittskontrolle ... 849
27.1 ... RFID-Hardware ... 850
27.2 ... Software ... 853
27.3 ... Erweiterungsmöglichkeiten und Tipps ... 859
28. Stromzähler auslesen ... 861
28.1 ... Stromzähler-Grundlagen ... 861
28.2 ... Einführung in RRDtool ... 865
28.3 ... Zählerdaten speichern und zu Graphen aufbereiten ... 870
29. Hausautomation mit Netzwerksteckdosen ... 873
29.1 ... Einführung ... 873
29.2 ... Programmierung ... 875
30. Hausautomation mit 433-MHz-Funktechnologie ... 887
30.1 ... Hardware-Grundlagen ... 887
30.2 ... Software und Steuerungsbeispiele ... 890
31. Die Schalthebel der Nacht ... 899
31.1 ... Vorbereitung ... 899
31.2 ... Der Lux-Sensor ... 900
31.3 ... IKEAs Trådfri-Beleuchtungssystem mit Linux steuern ... 902
31.4 ... Philips-Hue-Leuchten ansteuern ... 906
31.5 ... Lichtstärke messen, Leuchten steuern ... 909
32. Ort und Zeit per GPS empfangen ... 911
32.1 ... Haben Sie Zeit? Eine Uhr für den Raspberry Pi ... 911
32.2 ... Ortsbestimmung mit dem Raspberry Pi ... 919
33. Der Raspberry Pi lernt twittern ... 925
33.1 ... Voraussetzungen ... 925
33.2 ... Programmierung ... 927
34. Gewitter erkennen mit dem Blitzsensor ... 933
34.1 ... Blitzsensor AS3935 ... 933
34.2 ... Software ... 936
35. Klingel-Pi -- Der Türglockenverstärker ... 941
35.1 ... Geräuschsensor anschließen und auswerten ... 941
36. WLAN- und Tor-Router ... 945
36.1 ... Einführung ... 945
36.2 ... WLAN-Access-Point ... 948
36.3 ... WLAN-Router ... 954
36.4 ... Tor-Router ... 962
37. DLNA-Server ... 969
37.1 ... Raspbian-Installation auf große SD-Karten ... 970
37.2 ... ReadyMedia alias miniDLNA ... 973
37.3 ... Read-only-Konfiguration ... 974
38. Pi-hole (Ad-Blocker) ... 979
38.1 ... Installation ... 980
38.2 ... Client-Konfiguration ... 982
38.3 ... Weboberfläche ... 983
39. USB-Stick-Checker (CIRCLean) ... 985
39.1 ... CIRCLean installieren und anwenden ... 986
39.2 ... Einschränkungen ... 988
40. NAS mit openmediavault ... 989
40.1 ... Voraussetzungen ... 990
40.2 ... Installation ... 992
40.3 ... Konfiguration ... 993
41. Luftraumüberwachung ... 999
41.1 ... Technischer Hintergrund und Hardware ... 999
41.2 ... Software ... 1000
42. Die Servokamera ... 1005
42.1 ... Die Hardware ... 1006
42.2 ... Die Python-Software ... 1006
42.3 ... Die Streaming-Software ... 1008
42.4 ... Die Weboberfläche ... 1010
42.5 ... Inbetriebnahme ... 1011
43. PomodoPi ... 1013
43.1 ... Der Bodenfeuchtigkeitssensor ... 1013
43.2 ... Die Blumenampel ... 1021
43.3 ... Die automatische Bewässerung ... 1023
43.4 ... Photosynthese sichtbar machen ... 1027
44. Wassermelder mit Handyalarm ... 1031
44.1 ... Hardware ... 1031
44.2 ... Pushbullet ... 1033
45. Dicke Luft -- Feinstaubmessung und Innenluftqualität ... 1037
45.1 ... Was ist Feinstaub? ... 1037
45.2 ... Welcher Sensor kann PM10 und PM2.5 messen und wie funktioniert das? ... 1038
45.3 ... Anschauliche Grafiken im Web ... 1042
45.4 ... Luftqualitätssensor für den Innenraum ... 1046
Index ... 1049
TEIL I Den Raspberry Pi kennenlernen ... 19
1. Kauf und Inbetriebnahme ... 21
1.1 ... Kauf ... 21
1.2 ... Raspberry-Pi-Distributionen ... 33
1.3 ... NOOBS-Installation ... 35
2. Erste Schritte in Raspbian ... 41
2.1 ... Basiskonfiguration ... 42
2.2 ... Der Pixel-Desktop ... 46
2.3 ... Wichtige Programme ... 49
2.4 ... WLAN-Konfiguration ... 59
2.5 ... Bluetooth-Konfiguration ... 60
2.6 ... USB-Sticks und -Festplatten ... 61
2.7 ... Drucker ... 62
3. Arbeiten im Terminal ... 65
3.1 ... Erste Experimente ... 65
3.2 ... Eingabeerleichterungen und Tastenkürzel ... 71
3.3 ... Die Bourne Again Shell (bash) ... 74
3.4 ... Arbeiten mit Administratorrechten (sudo) ... 80
3.5 ... Textdateien lesen und ändern ... 83
3.6 ... Verzeichnisse und Dateien ... 88
3.7 ... Komprimierte Dateien und Archive ... 95
3.8 ... Prozessverwaltung ... 99
3.9 ... Netzwerkkommandos ... 105
4. Tipps & Tricks ... 109
4.1 ... Image auf eine SD-Karte schreiben ... 109
4.2 ... Raspbian Lite ... 112
4.3 ... WLAN- und SSH-Server vorkonfigurieren ... 113
4.4 ... Pixel-Desktop konfigurieren ... 114
4.5 ... Bildschirmschoner aktivieren/deaktivieren ... 116
4.6 ... Screenshots erstellen ... 117
4.7 ... Mehr Farbe im Terminal ... 117
4.8 ... Overclocking ... 120
4.9 ... Notfall-Tipps ... 122
5. Arbeitstechniken ... 127
5.1 ... Programme installieren und verwalten ... 128
5.2 ... Updates ... 131
5.3 ... SSH ... 136
5.4 ... Fernwartung über das Remote Desktop Protocol ... 147
5.5 ... Fernwartung über VNC ... 151
5.6 ... Netzwerkverzeichnisse nutzen ... 152
5.7 ... Netzwerkverzeichnisse anbieten (Samba-Server) ... 158
5.8 ... Internetzugriff auf den Raspberry Pi ... 165
5.9 ... FTP-Server einrichten ... 174
5.10 ... Programme beim Systemstart ausführen ... 177
5.11 ... Programme regelmäßig ausführen (Cron) ... 179
5.12 ... Monitor ein- und ausschalten ... 182
5.13 ... Backups erstellen ... 183
6. Linux-Grundlagen ... 189
6.1 ... Benutzer und Gruppen ... 190
6.2 ... Zugriffsrechte ... 198
6.3 ... Paketverwaltung ... 204
6.4 ... Verwaltung des Dateisystems ... 206
6.5 ... Netzwerkkonfiguration ... 214
6.6 ... Bluetooth ... 221
6.7 ... Systemstart ... 224
6.8 ... Systemeinstellungen in config.txt ... 231
6.9 ... Grafiksystem ... 236
6.10 ... Kernel und Module ... 238
6.11 ... Device Trees ... 241
TEIL II Der Raspberry Pi als Media-Center ... 245
7. Audio-Player mit Smartphone-Fernbedienung ... 247
7.1 ... MPD-Installation und -Konfiguration ... 247
7.2 ... MPD-Konfigurationsvarianten ... 253
7.3 ... HiFiBerry ... 262
7.4 ... Volumio ... 265
8. Multimedia-Center mit Kodi und LibreELEC ... 269
8.1 ... Installation und Konfiguration ... 270
8.2 ... Kodi-Betrieb ... 279
TEIL III Hardware-Grundlagen ... 287
9. Hardware-Einstieg ... 289
9.1 ... Platinenaufbau ... 289
9.2 ... Der BCM2711 ... 291
9.3 ... GPIO-Kontakte ... 295
9.4 ... Stromversorgung ... 303
9.5 ... Gehäuse ... 311
10. Elektrotechnik-Crashkurs ... 315
10.1 ... Strom, Spannung und das ohmsche Gesetz ... 315
10.2 ... Grundschaltungen ... 317
10.3 ... Elektronische Grundbauteile ... 322
10.4 ... Das Multimeter ... 327
10.5 ... Breadboard oder Platine? ... 330
10.6 ... Löten ... 332
10.7 ... Breadboardadapter ... 334
11. LEDs, Motoren und Relais ... 339
11.1 ... Leuchtdioden (LEDs) ... 339
11.2 ... Optokoppler ... 357
11.3 ... Elektromotoren ... 358
11.4 ... Schrittmotoren ... 371
11.5 ... Servomotoren ... 381
11.6 ... Relais ... 387
12. Bussysteme ... 391
12.1 ... SPI ... 391
12.2 ... Der Analog-Digital-Wandler MCP3008 ... 401
12.3 ... Der Digital-Analog-Wandler MCP4811 ... 407
12.4 ... I$^2$C ... 412
12.5 ... UART ... 421
12.6 ... Der Audio-Bus I$^2$S ... 427
12.7 ... 1-Wire ... 428
13. Sensoren ... 431
13.1 ... PIR-Bewegungssensor ... 431
13.2 ... Ultraschallsensor ... 435
13.3 ... Wasserstandssensor ... 438
13.4 ... Bodenfeuchtigkeitssensor ... 439
13.5 ... Temperatursensoren ... 444
13.6 ... Fotowiderstand ... 451
13.7 ... Das Multi-Analogsensor-Board PCF8591 ... 453
13.8 ... Raspberry Pi Camera Board und PiNoIR ... 456
13.9 ... Reed-Kontakt ... 469
13.10 ... Hardware Real Time Clock ... 471
13.11 ... IR-Empfänger ... 475
13.12 ... Fingerabdruck-Scanner ... 477
13.13 ... Leitfaden für fremde Sensoren ... 485
14. Erweiterungsboards ... 487
14.1 ... Das Gertboard ... 488
14.2 ... Der ATmega auf dem Gertboard ... 503
14.3 ... Logic-Level-Converter ... 508
14.4 ... PiFace Digital 2 ... 509
14.5 ... StromPi 2 -- USV und Wide-Range-Spannungsversorgung ... 515
14.6 ... Pimoroni Zero LiPo ... 518
14.7 ... GertDuino ... 520
14.8 ... Raspberry-Pi-HATs ... 524
14.9 ... Sense HAT -- Das Mulitalent ... 530
14.10 ... Adafruit PWM/Servo-HAT ... 535
14.11 ... BrickPi ... 538
14.12 ... GrovePi ... 539
15. Displays ... 541
15.1 ... 7-Segment-Anzeige ... 541
15.2 ... 16x2-LC-Display ... 544
15.3 ... PiTFT -- Der Touchscreen für den Raspberry Pi ... 549
15.4 ... Kfz-Rückfahrmonitore ... 554
15.5 ... Das offizielle Raspberry-Pi-Touchdisplay ... 558
15.6 ... OLED-Display SSD1306 ... 564
15.7 ... PaPiRus -- Das E-Paper-Display ... 568
15.8 ... Weitere Display-Boards ... 574
TEIL IV Programmierung ... 577
16. Python kennenlernen ... 579
16.1 ... Python ausprobieren ... 580
16.2 ... Python-Konzepte interaktiv kennenlernen ... 582
16.3 ... Hello World! ... 592
17. Python-Grundlagen ... 599
17.1 ... Elementare Syntaxregeln ... 599
17.2 ... Variablen und Objekte ... 605
17.3 ... Operatoren ... 615
17.4 ... Verzweigungen (if) ... 618
17.5 ... Schleifen (for und while) ... 620
17.6 ... Zeichenketten ... 626
17.7 ... Listen ... 632
17.8 ... Umgang mit Fehlern (Exceptions) ... 635
17.9 ... Funktionen ... 641
17.10 ... Objektorientiertes Programmieren ... 651
17.11 ... Systemfunktionen ... 663
18. Python-Programmierung ... 667
18.1 ... GPIO-Zugriff mit RPi.GPIO ... 667
18.2 ... GPIO-Zugriff mit gpiozero ... 674
18.3 ... Reset/Shutdown-Taste ... 678
18.4 ... Kamera ... 680
18.5 ... Dateien bei Dropbox hochladen ... 684
18.6 ... E-Mails versenden ... 688
18.7 ... Textdateien lesen und schreiben ... 690
18.8 ... Grafikprogrammierung ... 695
18.9 ... Grafische Benutzeroberflächen mit tkinter ... 702
18.10 ... Matplotlib ... 715
19. bash-Programmierung ... 721
19.1 ... Einführung ... 721
19.2 ... Variablen ... 725
19.3 ... Schleifen, Bedingungen und Funktionen ... 731
19.4 ... WiringPi ... 741
19.5 ... Das raspi-gpio-Kommando ... 747
19.6 ... Das pinout-Kommando ... 749
20. C-Programmierung ... 751
20.1 ... Hello World! ... 751
20.2 ... GPIO-Steuerung mit C ... 755
21. Java-Programmierung ... 759
21.1 ... Erste Schritte ... 759
21.2 ... GPIO-Steuerung mit Java ... 761
22. PHP-Programmierung ... 767
22.1 ... Apache installieren und konfigurieren ... 768
22.2 ... Webverzeichnisse einrichten und absichern ... 770
22.3 ... HTTPS ... 776
22.4 ... PHP installieren und konfigurieren ... 778
22.5 ... MariaDB installieren und administrieren ... 780
22.6 ... Hello World! in PHP ... 785
22.7 ... GPIO-Steuerung mit PHP ... 787
22.8 ... Kamerafunktionen mit PHP nutzen ... 792
23. Mathematica und die Wolfram Language ... 797
23.1 ... Arbeiten mit Mathematica ... 798
23.2 ... Programmieren mit der Wolfram Language ... 804
23.3 ... Grafische Darstellung von Temperaturdaten ... 811
TEIL V Projekte ... 815
24. Der Raspberry Pi im Vogelhaus ... 817
24.1 ... Einbau des Raspberry Pi samt Kameramodul in ein Vogelhaus ... 817
24.2 ... Kamerapraxis ... 820
24.3 ... Bewegungserkennung mit motion ... 823
24.4 ... Das Vogelhaus im praktischen Einsatz ... 827
25. Zeitmessung mit Lichtschranken ... 831
25.1 ... Versuchsaufbau (Hardware) ... 831
25.2 ... Software ... 834
26. Das autonome Auto ... 837
26.1 ... Hardware ... 837
26.2 ... Die Software ... 846
27. RFID-Türöffner mit Zutrittskontrolle ... 849
27.1 ... RFID-Hardware ... 850
27.2 ... Software ... 853
27.3 ... Erweiterungsmöglichkeiten und Tipps ... 859
28. Stromzähler auslesen ... 861
28.1 ... Stromzähler-Grundlagen ... 861
28.2 ... Einführung in RRDtool ... 865
28.3 ... Zählerdaten speichern und zu Graphen aufbereiten ... 870
29. Hausautomation mit Netzwerksteckdosen ... 873
29.1 ... Einführung ... 873
29.2 ... Programmierung ... 875
30. Hausautomation mit 433-MHz-Funktechnologie ... 887
30.1 ... Hardware-Grundlagen ... 887
30.2 ... Software und Steuerungsbeispiele ... 890
31. Die Schalthebel der Nacht ... 899
31.1 ... Vorbereitung ... 899
31.2 ... Der Lux-Sensor ... 900
31.3 ... IKEAs Trådfri-Beleuchtungssystem mit Linux steuern ... 902
31.4 ... Philips-Hue-Leuchten ansteuern ... 906
31.5 ... Lichtstärke messen, Leuchten steuern ... 909
32. Ort und Zeit per GPS empfangen ... 911
32.1 ... Haben Sie Zeit? Eine Uhr für den Raspberry Pi ... 911
32.2 ... Ortsbestimmung mit dem Raspberry Pi ... 919
33. Der Raspberry Pi lernt twittern ... 925
33.1 ... Voraussetzungen ... 925
33.2 ... Programmierung ... 927
34. Gewitter erkennen mit dem Blitzsensor ... 933
34.1 ... Blitzsensor AS3935 ... 933
34.2 ... Software ... 936
35. Klingel-Pi -- Der Türglockenverstärker ... 941
35.1 ... Geräuschsensor anschließen und auswerten ... 941
36. WLAN- und Tor-Router ... 945
36.1 ... Einführung ... 945
36.2 ... WLAN-Access-Point ... 948
36.3 ... WLAN-Router ... 954
36.4 ... Tor-Router ... 962
37. DLNA-Server ... 969
37.1 ... Raspbian-Installation auf große SD-Karten ... 970
37.2 ... ReadyMedia alias miniDLNA ... 973
37.3 ... Read-only-Konfiguration ... 974
38. Pi-hole (Ad-Blocker) ... 979
38.1 ... Installation ... 980
38.2 ... Client-Konfiguration ... 982
38.3 ... Weboberfläche ... 983
39. USB-Stick-Checker (CIRCLean) ... 985
39.1 ... CIRCLean installieren und anwenden ... 986
39.2 ... Einschränkungen ... 988
40. NAS mit openmediavault ... 989
40.1 ... Voraussetzungen ... 990
40.2 ... Installation ... 992
40.3 ... Konfiguration ... 993
41. Luftraumüberwachung ... 999
41.1 ... Technischer Hintergrund und Hardware ... 999
41.2 ... Software ... 1000
42. Die Servokamera ... 1005
42.1 ... Die Hardware ... 1006
42.2 ... Die Python-Software ... 1006
42.3 ... Die Streaming-Software ... 1008
42.4 ... Die Weboberfläche ... 1010
42.5 ... Inbetriebnahme ... 1011
43. PomodoPi ... 1013
43.1 ... Der Bodenfeuchtigkeitssensor ... 1013
43.2 ... Die Blumenampel ... 1021
43.3 ... Die automatische Bewässerung ... 1023
43.4 ... Photosynthese sichtbar machen ... 1027
44. Wassermelder mit Handyalarm ... 1031
44.1 ... Hardware ... 1031
44.2 ... Pushbullet ... 1033
45. Dicke Luft -- Feinstaubmessung und Innenluftqualität ... 1037
45.1 ... Was ist Feinstaub? ... 1037
45.2 ... Welcher Sensor kann PM10 und PM2.5 messen und wie funktioniert das? ... 1038
45.3 ... Anschauliche Grafiken im Web ... 1042
45.4 ... Luftqualitätssensor für den Innenraum ... 1046
Index ... 1049
»Dieses Nachschlagewerk deckt so ziemlich alles ab, was man wissen muss, um erfolgreich kleine Projekte mit dem Einplatinencomputer Raspberry Pi zu verwirklichen. [...] "Raspberry Pi - Das umfassende Handbuch" ist ein sehr gutes und auch ein sehr umfangreiches Fachbuch, welches man jedem Besitzer eines Raspberry Pi wärmstens empfehlen kann. Es werden nahezu alle Fragen rund um den beliebten Einplatinencomputer beantwortet. Hervorzuheben sind auch die mit den Zusatzmaterialien zur Verfügung gestellten Code-Schnipsel. Das erspart Zeit und Fehler beim Eintippen.« intux.de 202102