Configurare GPIO

De la YO3ITI
Sari la navigare Sari la căutare

Interfața pentru controlul pinilor GPIO bazată pe /sys/class/gpio nu mai este suportată oficial. Se recomandă să se folosească character device interface, mai precis dispozitivele gpiochip descrise la /dev/gpiochipN. Modificarea este determinată de evoluția kernel-ului Linux și are scopul de a îmbunătăți controlul GPIO. Informațiile din această pagină nu mai sunt de actualitate. Ultimele versiuni de svxlink folosesc GPIOD.


cd /sys/class/gpio
echo 17 > export
echo out > gpio17/direction
cat gpio17/value
0
echo 1 > gpio17/value

Apoi se modifică în /etc/rc.local:

################
#GPIO SCRIPT #
#TO BE INSERTED#
#ON START-UP #
################
# GPIO 17 as PTT to TxLocal
echo 17 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio17/direction
sudo chmod 777 /sys/class/gpio/gpio17/value

# GPIO 27 as Squelch to RxLocal
echo 27 > /sys/class/gpio/export
echo in > /sys/class/gpio/gpio27/direction
sudo chmod 777 /sys/class/gpio/gpio27/value


################
#GPIO SCRIPT #
#TO BE INSERTED#
#ON START-UP #
################
# GPIO 17 as PTT to TxLocal
echo 17 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio17/direction
sudo chmod 777 /sys/class/gpio/gpio17/value

# GPIO 27 as Squelch to RxLocal
echo 27 > /sys/class/gpio/export
echo in > /sys/class/gpio/gpio27/direction
sudo chmod 777 /sys/class/gpio/gpio27/value

Atenție ! scriptul de mai sus trebuie adăugat înainte de linia cu exit 0 în rc.local. În caz contrar nu este executat.

ATENȚIE !

Noua abordare: chardev interface

https://sergioprado.blog/new-linux-kernel-gpio-user-space-interface/

$ sudo apt install gpiod https://lloydrochester.com/post/hardware/libgpiod-intro-rpi/