🛠 Premier script Python avec gpiozero
Objectifs
Écrire et exécuter un premier script Python sur le Raspberry Pi 5 avec gpiozero, la bibliothèque GPIO par défaut de Raspberry Pi OS. gpiozero gère de façon transparente le GPIO servi par la puce RP1 du Pi 5. Le script fait clignoter une LED et réagit à un bouton.
Matériel
- Raspberry Pi 5 sous Raspberry Pi OS 64 bits (gpiozero et Python 3 préinstallés)
- 1 LED + résistance 470 Ω sur GPIO17 (broche physique 11)
- 1 bouton poussoir sur GPIO4 (broche physique 7) vers GND
- Câbles Dupont et pain de montage
Code complet
#!/usr/bin/env python3
# blink.py — gpiozero est installé par défaut sur Raspberry Pi OS.
# Note Pi 5 : le GPIO est servi par la puce RP1 ; gpiozero le gère en interne.
from gpiozero import LED, Button # LED sur GPIO17, bouton sur GPIO4
from signal import pause
led = LED(17)
btn = Button(4, pull_up=True) # pull-up interne ; bouton broche vers GND
btn.when_pressed = led.blink # clignotement infini dès l'appui...
btn.when_released = led.close # ...et arrêt au relâchement
pause # maintient la boucle d'événements vivante
Vérification attendue
Exécution par python3 blink.py : rien ne s'affiche, la LED reste éteinte. En maintenant le bouton enfoncé, la LED se met à clignoter ; au relâchement elle s'éteint. Ctrl-C termine proprement le script.
Erreurs fréquentes
- Oublier
pause: le script se termine immédiatement et la LED ne clignote jamais. - Ancienne version de RPi.GPIO en conflit : sur Pi 5, préférez gpiozero ou lgpio ; les vieux chemins directs BCM2835 sont cassés.
- LED à l'envers : la patte longue (anode) va vers le GPIO, la courte vers la résistance puis GND.
ModuleNotFoundError: gpiozero: installer avecsudo apt install python3-gpiozero.- Exécuter le script dans un environnement virtuel sans le paquet système : réinstaller gpiozero dans le venv avec pip.
Autres tutoriels pour cette carte
Exemples de code pour cette carte
led_blink.pyPythonbutton_led.pyPythonservo_sweep.pyPythondht_temp.pyPythonoled_i2c.pyPythonmcp3008_read.pyPython