Rasp-Hack-Afficheur-LCD-InitScript

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche

System V vs System D

Raspbian Wheezy (et prédécesseurs) utilise un système d'initialisation basé sur System V, ses RunLevels et scripts shell d'initialisations.

Depuis Raspbian Jessie (courant 2016), le système d'initialisation est basé sur le très controversé SystemD (Wikipedia.fr)


Le fonctionnement doit encore être vérifier/confirmé avec Raspbian Jessie (et plus récent).

Mise-en-place sur System V

Disposer d'un script tel que Adafruit_CharLCD_IPclock_example.py à exécuter manuellement est pratique et élégant. Mais ne serait-il pas sympa d'avoir l'adresse IP et l'heure qui s'affiche automatiquement lorsque le Rapsberry-Pi boot?

Cela est réalisé à l'aide d'un script init qui exécutera le code Adafruit_CharLCD_IPclock_example.py durant le boot et qui l'arrêtera (kill) au moment du Shutdown.

Collez le code suivant dans /etc/init.d/lcd

(vous aurez besoin d'utiliser sudo pour écrire dans ce répertoire)

### BEGIN INIT INFO
# Provides: LCD - date / time / ip address
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Liquid Crystal Display
# Description: date / time / ip address
### END INIT INFO


#! /bin/sh
# /etc/init.d/lcd


export HOME
case "$1" in
    start)
        echo "Starting LCD"
        /home/pi/Adafruit-Raspberry-Pi-Python-Code/Adafruit_CharLCD/Adafruit_CharLCD_IPclock_example.py  2>&1 &
    ;;
    stop)
        echo "Stopping LCD"
	LCD_PID=`ps auxwww | grep Adafruit_CharLCD_IPclock_example.py | head -1 | awk '{print $2}'`
	kill -9 $LCD_PID
    ;;
    *)
        echo "Usage: /etc/init.d/lcd {start|stop}"
        exit 1
    ;;
esac
exit 0

Vous devriez adapter le nom de fichier /home/pi/Adafruit-Raspberry-Pi-Python-Code/Adafruit_CharLCD/Adafruit_CharLCD_IPclock_example.py pour indiquer l'endroit exacte pù vous avez placez/enregistré le script Python IPclock

Rendez le script init exécutable.

$ sudo chmod +x /etc/init.d/lcd

Utilisez la commande update-rc.d de sorte que le système sache qu'il y a un nouveau script init nommé "lcd".

$ sudo update-rc.d lcd defaults

Rasp-Hack-Afficheur-LCD-init.jpg

Maintenant, à chaque fois que vous booterez/démarrez votre Pi, l'afficheur LCD montrera automatiquement la date/heure/adresse IP .

Cela vous permettra également de savoir si votre Pi est disponible sur le réseau et à quelle adresse IP sans avoir besoin de connecter un moniteur.


Source: Character LCD with Raspberry Pi or BeagleBone Black écrit par Tony Dicola pour Adafruit Industries.

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.