Shutdown Raspberry PI par gpio
Encore un petit manque dans le monde du raspberry pi , un bouton arrêt ( propre , pas en coupant a la sauvage l’alimentation du PI ).
besoin d’avoir python et rpi.gpio installé , un boutton poussoir (dans cet exemple cablé entre le GPIO17 et gnd )
installation de rpi.gpio
1- Paquets debian :
apt-get install python-rpi.gpio
2- install depuis sources :
wget https://pypi.python.org/packages/source/R/RPi.GPIO/RPi.GPIO-0.6.3.tar.gz tar -xvf RPi.GPIO-0.6.3.tar.gz cd RPi.GPIO-0.6.3 sudo python setup.py install cd ~ sudo rm -rf RPi.GPIO-0.*
script pour attendre appuie sur le bouton et lancer shutdown lorsque l’on appuie sur le bouton : pishutdown.py =>
#!/usr/bin/python # Import the modules to send commands to the system and access GPIO pins import RPi.GPIO as gpio import os #set up GPIO using BCM numbering gpio.setmode(gpio.BCM) #Set up pin 7 as an input gpio.setup(17, gpio.IN, pull_up_down = gpio.PUD_UP) # Set up an interrupt to look for pressed button gpio.wait_for_edge(17, gpio.FALLING) # Shutdown os.system('shutdown now -h')
script qui va se lancer au demérrage du PI : pishutdown.sh =>
#!/bin/sh cd / cd home/tools python pishutdown.py cd /
puis chmod +x pishutdown.sh
on édite le fichier /etc/rc.local
/home/tools/pishutdown.sh &
a rajouter avant la ligne exit 0 , a adapter selon l’endroit ou vous copiez les 2 fichiers ( pishutdown.py , pishutdown.sh) et du gpio utilisé .