🛠 Faire clignoter une LED via le GPIO avec libgpiod

Radxa ROCK 3B (Rockchip RK3568) · debutant · Schéma : IMG-radxa-rock-3b-debutant-1-rock3b-led-gpio.svg — LED et résistance 330 Ω câblées sur une broche GPIO du connecteur 40 broches de la Radxa ROCK 3B

Objectifs

Découvrir le connecteur 40 broches de la Radxa ROCK 3B (Rockchip RK3568) et faire clignoter une LED avec libgpiod, l'API GPIO moderne de Linux que Radxa recommande officiellement — l'ancien mécanisme sysfs « gpio export » est déprécié. Vous apprendrez à identifier la bonne puce (gpiochip) et la bonne ligne avec gpiofind/gpioinfo plutôt qu'à copier des numéros hérités de tutoriels Raspberry Pi.

Matériel

Code complet

sudo apt update && sudo apt install -y gpiod
gpiodetect                 # RK3568 : gpiochip0..gpiochip3 (banques GPIO0..GPIO3)
gpiofind PIN_7             # renvoie « gpiochipLigne » pour la broche 7 du connecteur
# Nommage Rockchip : GPIO3_C5 -> gpiochip3, ligne 21 (banque*8 + groupe + index)
sudo gpioset -m signal $(gpiofind PIN_7) 1 &     # reste haut jusqu'au Ctrl-C
sudo gpioget $(gpiofind PIN_11)                  # lire une autre broche
# Clignotage 10 cycles sans compiler :
for i in $(seq 1 10); do sudo gpioset --time=0.2 $(gpiofind PIN_7) 1; sleep 0.3; done

Vérification attendue

gpiodetect affiche gpiochip0 à gpiochip3. gpiofind PIN_7 renvoie une paire chip/ligne ; avec le câble correct, la LED s'allume ~0,2 s à chaque tour de boucle. La LED RGB heartbeat (pilote « heartbeat » dans le device tree) clignote déjà sous Linux : vous pouvez la récupérer avec echo none | sudo tee /sys/class/leds/*/trigger si elle gêne vos mesures.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels