gpiotools_blink.sh
Sans Python, les gpiotools (paquet gpiotools) exportent la broche et basculent son niveau : pratique dans un cron, un script d'installation ou un service systemd. GPIO17 correspond à la broche 11 du connecteur P1 (26 broches). Le trap garantit la libération de la broche à la sortie.
Matériel requis
Une Raspberry Pi Model B révision 1 (BCM2835, connecteur GPIO 26 broches, ports traversants d'origine, pas de connecteur P1 standard 40 broches). Une LED, une résistance 330 ohms, aucun paquet Python requis (gpiotools seulement).
Câblage
LED + résistance entre GPIO17 (broche 11) et GND, comme le montage LED classique du connecteur P1.
Fonctionnement
gpio-export crée /sys/class/gpio/gpio17, le script écrit 1/0 dans value via gpio-set/gpio-clear ; le mode out est fixé à l'export.
Exécution
Copiez le script sur la carte (scp ou clé USB), puis lancez-le avec python3 (ou bash). Ces cartes tournent souvent sous une ancienne Raspbian : gpiozero reste installable par apt. Les broches GPIO suivent le connecteur 26 broches du schéma officiel.
Variantes
gpio-get pour lire un bouton ; gpiomon (libgpiod) pour un événement. Révision 1 très modeste (256 Mo) : restez léger côté périphériques et vérifiez la tension d'alimentation.
gpiotools_blink.sh
#!/usr/bin/env bash
set -u
# gpiotools_blink.sh — LED clignotante sans Python, via gpiotools.
# Deps: sudo apt install gpiotools
# GPIO17 = broche 11 sur le connecteur 26 broches (P1).
# Alternative sans paquet : echo 17 > /sys/class/gpio/export a la main.
# Relancez si la broche est deja occupee par un autre service.
PIN=17
gpio-export $PIN out
trap 'gpio-unexport $PIN' EXIT
echo "LED sur GPIO$PIN, Ctrl+C pour sortir"
while true; do
gpio-set $PIN
echo "ON"
sleep 0.5
gpio-clear $PIN
echo "off"
sleep 0.5
done