gpiotools_blink.sh

Raspberry Pi 3 Model A+ (2018) — Ficha de placa · Archivo : gpiotools_blink.sh · Lenguaje : Bash · Uso : Piloter une GPIO depuis un script shell ou cron, sans dépendance Python

Sin Python: gpiotools exporta el pin y alterna su nivel, util en cron, scripts de instalacion o unidades systemd. GPIO17 es el pin 11 del conector J8 (40 pines). El trap libera el pin al salir.

Hardware

Una Raspberry Pi 3 Model A+ (formato compacto, BCM2837B0, Wi-Fi 5 GHz + Bluetooth, un solo puerto USB, alimentación de 5 V/700 mA, GPIO de 40 pines). Un LED, una resistencia de 330 ohmios, ningun paquete Python (solo gpiotools).

Cableado

LED + resistencia entre GPIO17 (pin 11) y GND, el montaje clasico del conector J8.

Funcionamiento

gpio-export crea /sys/class/gpio/gpio17; el script escribe 1/0 en value con gpio-set/gpio-clear, direccion fijada al exportar.

Ejecución

Copia el script en la placa (scp) y ejecútalo con python3 (o bash). Raspberry Pi OS incluye gpiozero; si no, sudo apt install python3-gpiozero. Cuida el presupuesto de 700 mA para periféricos USB.

Variantes

gpio-get lee un boton; gpiomon (libgpiod) espera flancos. Placa compacta que hay que refrigerar; USB-C de 5 V/2,5 A; un solo puerto USB, añada un hub si hace falta.

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 40 broches (J8).
# 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

← Volver a la ficha