gpiotools_blink.sh

Raspberry Pi Model B (Rev 1, 2012) — Board Sheet · File : gpiotools_blink.sh · Language : Bash · Use case : Piloter une GPIO depuis un script shell ou cron, sans dépendance Python

No Python needed: gpiotools exports the pin and toggles its level, handy in cron, install scripts or systemd units. GPIO17 is pin 11 of the P1 (26-pin) connector. The trap releases the pin on exit.

Hardware

A Raspberry Pi Model B revision 1 (BCM2835, 26-pin GPIO header, original through-hole ports, no standard 40-pin P1 connector). One LED, a 330-ohm resistor, no Python packages (gpiotools only).

Wiring

LED + resistor between GPIO17 (pin 11) and GND, the classic P1 LED build.

How it works

gpio-export creates /sys/class/gpio/gpio17; the script writes 1/0 to value via gpio-set/gpio-clear, direction set at export.

Running it

Copy the script to the board (scp or USB stick), then run it with python3 (or bash). These boards often run an old Raspbian: gpiozero is still apt-installable. GPIO pins follow the 26-pin header in the official schematic.

Variants

gpio-get reads a button; gpiomon (libgpiod) waits on edges. The revision 1 board (256 MB) is modest: keep peripherals light and check the supply voltage.

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

← Back to the board