No sé que usais cuando por ejemplo quereis manejar un gpio de forma cómoda. Desde la desaparición de gpioctl resulta engorroso, hay que hacer exports etc en sysfs.
Normalmente solo necesitamos manipularlos cuando añadimos soporte a placas nuevas para averiguar que gpio corresponde a cada led, etc.
De todas formas creo que a más de uno le interesará este script que encontré por ahí con alguna modificación mía menor.
#!bin/sh
show_usage()
{
printf "\ngpio.sh <gpio pin number> [in|out [<value>]]\n"
}
if [ \( $# -eq 0 \) -o \( $# -gt 3 \) ] ; then
show_usage
printf "\n\nERROR: incorrect number of parameters\n"
exit 255
fi
#doesn't hurt to export a gpio more than once
(echo $1 > /sys/class/gpio/export) >& /dev/null
if [ $# -eq 1 ] ; then
cat /sys/class/gpio/gpio$1/value
exit 0
fi
if [ \( "$2" != "in" \) -a \( "$2" != "out" \) ] ; then
show_usage
printf "\n\nERROR: second parameter must be 'in' or 'out'\n"
exit 255
fi
echo $2 > /sys/class/gpio/gpio$1/direction
if [ $# -eq 2 ] ; then
cat /sys/class/gpio/gpio$1/value
exit 0
fi
VAL=$3
if [ $VAL -ne 0 ] ; then
VAL=1
fi
echo $VAL > /sys/class/gpio/gpio$1/value
El funcionamiento es algo tal que así
gpio.sh 31 out 1
activa el gpio31
gpio.sh 31 in
configura como entrada el gpio31
gpio.sh 31
devuelve el valor