use raspi-gpio to display pin states
authorDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 18 Apr 2018 12:12:16 +0000 (12:12 +0000)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 18 Apr 2018 12:12:16 +0000 (12:12 +0000)
debian-install.sh
gpio.pl

index 67d6e6e..365957c 100755 (executable)
@@ -1,4 +1,5 @@
 #!/bin/sh -xe
 
 sudo apt-get install libdata-dump-perl
-apt-cache search --names-only sunxi-tools | cut -d' ' -f1 | xargs -i sudo apt-get install {}
+apt-cache search --names-only '^sunxi-tools$' | cut -d' ' -f1 | xargs -i sudo apt-get install {}
+apt-cache search --names-only '^raspi-gpio$'  | cut -d' ' -f1 | xargs -i sudo apt-get install {}
diff --git a/gpio.pl b/gpio.pl
index 3a31ade..1d3047e 100755 (executable)
--- a/gpio.pl
+++ b/gpio.pl
@@ -214,6 +214,21 @@ close($pio);
 
 } # have_sunxi_pio
 
+my $have_raspi_gpio = `which raspi-gpio`;
+if ( $have_raspi_gpio ) {
+
+open(my $pio, '-|', 'raspi-gpio get');
+while(<$pio>) {
+       chomp;
+       if ( m/^GPIO (\d+): (.+)/ ) {
+               my $pin = 'gpio' . $1;
+               annotate_pin $pin, $2 if ! $opt_svg;
+       }
+}
+close($pio);
+
+} # have_raspi_gpio
+
 
 my $pinmux;
 my $pinmux_path = (glob("/sys/kernel/debug/pinctrl/*/pinmux-functions"))[0];