🛠 GPIO en Python avec python3-libgpiod sur Le Potato
Objetivos
Controlar un LED en Python en el Le Potato con el módulo gpiod proporcionado por el paquete de distribución python3-libgpiod — la vía oficialmente documentada por Libre Computer para reemplazar los tutoriales de RPi.GPIO.
Material
- Le Potato AML-S905X-CC con Armbian o Debian/Ubuntu mainline
- LED + resistencia de 330 Ω en el pin físico 3 (GPIOAO_5 = chip 0, línea 5), masa en un pin GND
sudo apt install python3-libgpiod— especialmente NOpip install gpiod
Código completo
#!/usr/bin/env python3
"""Clignotement broche 3 du Le Potato (chip 0, ligne 5). python3-libgpiod 1.x."""
import gpiod
import time
with gpiod.Chip("0") as chip: # /dev/gpiochip0
line = chip.get_lines([5])
line.request(consumer="blink", type=gpiod.LINE_REQ_DIR_OUT)
try:
for _ in range(10):
line.set_values([1])
time.sleep(0.2)
line.set_values([0])
time.sleep(0.2)
finally:
line.release
print("Terminé")
Verificación esperada
python3 blink.py enciende/apaga el LED 10 veces. Un gpioinfo gpiochip0 ejecutado durante la ejecución muestra la línea 5 reclamada por el consumidor « blink ».
Errores frecuentes
module 'gpiod' has no attribute 'Chip': el paquete pipgpiodentra en conflicto conpython3-libgpiod; desinstale el paquete pip (pip uninstall gpiod) — error documentado en el hub oficial.- API v2 : en las distribuciones recientes,
chip.get_line/line.requestcambian de firma ; verifique la versión instalada antes de copiar un ejemplo. - Olvidar
line.release: la línea permanece reclamada y bloquea otros programas. - Permiso denegado : grupo
gpioo root.
Otros tutoriales para esta placa
- Faire clignoter une LED en C avec libgpiod sur Le Potato
- Lire un bouton poussoir avec libgpiod (pull-up interne)
- Fondu LED progressif avec PWM sous sysfs (meson)
- Capteur BME280 (I2C) sur Le Potato : overlay et lecture
- Console série (ttyAML0) et SSH sur Le Potato
- Boot SD/eMMC et récupération (pyamlboot) sur Amlogic S905X
Ejemplos de código para esta placa
clignotante.pyPythonbouton-gpio.pyPythoncapteur-i2c.shBashsurveillance-temperature.shBashcapteur-dht11.pyPythonservo-pwm-sysfs.shBash