Aus Raspberry Pi Geek 08/2022

Mit Pigpio auf die GPIO des Raspberry Pi zugreifen (Seite 2)

Piscope

Bei den vielen Möglichkeiten, die Pigs bietet, findet sich jedoch nichts, was die Funktion gpio -readall aus WiringPi abbildet. Das hat einen guten Grund: Um den Status der GPIOs auszulesen, verwendet Pigpio das Werkzeug Piscope. Dabei handelt es sich um eine GTK+3-Applikation, die auf allen Betriebssystemen läuft. Sie verbindet sich direkt mit dem Daemon Pigpiod und holt sich die Daten der GPIOs auch dann, wenn bereits andere Programme mit dem Daemon verbunden sind. Dieser Umstand erlaubt es, Projekte, die die GPIO verwenden, komfortabel zu debuggen.

Abbildung 2 vermittelt einen Eindruck davon, wie sich das Tool präsentiert. Die hier gezeigte Ausgabe wurde durch ein Programm erzeugt, das nacheinander die GPIOs 0 bis 15 an- und wieder ausschaltet. Um auch auf die GPIO 0 und 1 zugreifen zu können, startete der Autor den Daemon Pigpiod mit dem Maskierungsparameter -x 0xFFFFFFFF.

Abbildung 2: Piscope im Einsatz. Hier liest es die laufend geänderten Zustände der Pins 0 bis 15 aus.

Abbildung 2: Piscope im Einsatz. Hier liest es die laufend geänderten Zustände der Pins 0 bis 15 aus.

Es gibt mehrere Möglichkeiten, Piscope zu installieren und zu verwenden. Auf zwei davon gehen wir hier etwas genauer ein. Die naheliegendste Variante besteht darin, das Werkzeug direkt auf dem Raspberry Pi zu installieren und auch die Ausgabe über den RasPi laufen zu lassen (Listing 4). Diese Vorgehensweise lädt die Quellen direkt auf den Pi herunter und kompiliert sie vor Ort. Piscope verbindet sich dann über die Localhost-Schnittstelle mit dem Daemon Pigpiod. Je nachdem, welche Basisinstallation von Raspberry Pi OS Sie verwenden, kommt es vor, dass Sie noch einige Abhängigkeiten nachziehen müssen.

Listing 4

Piscope lokal

$ wget abyz.me.uk/rpi/pigpio/piscope.tar
$ tar xvf piscope.tar
$ cd PISCOPE/
$ make hf
$ make install
$ ./piscope

Die zweite Variante fällt schon ein wenig kniffliger aus. Hierbei laden Sie die Binärversion von Piscope auf einen Linux-PC herunter und verbinden Sie über das Netzwerk mit dem Daemon auf dem Raspberry Pi. Die IP-Adresse des RasPi entnimmt Piscope in diesem Fall der Umgebungsvariablen PIGPIO_ADDR (Listing 5), die Sie entsprechend setzen müssen. Im Test ließ sich Piscope auf diese Weise unter Ubuntu problemlos betreiben.

Listing 5

Piscope via LAN

$ wget https://abyz.me.uk/rpi/pigpio/piscope.tar
$ tar -xvf piscope.tar
$ cd PISCOPE/
$ export PIGPIO_ADDR=raspberrypi.local
$ ./piscope.x86_64

Wir eingangs erwähnt gibt es daneben noch mehrere weitere Möglichkeiten, Piscope zu verwenden. Wenn Sie sich für die zusätzlichen Installationsvarianten interessieren, finden Sie auf der Webseite Tools weitere Informationen dazu [5].

Fazit

Die Bibliothek Pigpio eignet sich uneingeschränkt als leistungsfähige Alternative zu WiringPi. Es gibt Wrapper und Module für alle gängigen Programmiersprachen. Die vorhandenen Werkzeuge erlauben ein reibungsfreies Arbeiten. Der Daemon lässt sogar das Überwachen der GPIO über das Netzwerk problemlos zu.

An die gegenüber WiringPi geänderte Namensgebung der einzelnen GPIOs gewöhnt man sich bei der Arbeit mit Pigpio schnell. Eine Kleinigkeit fiel allerdings auf: Seit etwa einem Jahr ruht das Projekt auf Github. Es bleibt zu hoffen, dass die Ursache schlicht darin liegt, dass seitdem einfach keine Änderungen nötig waren. (tle)

Der Autor

Martin Mohr erlebte die komplette Entwicklung der modernen Computertechnik live mit. Nach dem Studium entwickelte er überwiegend Java-Applikationen. Mit dem Raspberry Pi erwachte seine alte Liebe zur Elektronik wieder.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben