Gérer les broches GPIO avec WebIOPi !

Suite à mes précédents articles (Art1, Art2) sur le connecteur GPIO du Raspberry-Pi, nous allons voir dans ce billet comment gérer l’état des broches depuis une interface Web grâce à WebIOPi.

Pour utiliser cette solution, il vous faut simplement partir sur la base d’une distribution Raspbian.

Préparation du Raspberry-Pi

Je passe ici l’installation, la mise à jour de Raspbian. Je vous laisse suivre le tutoriel en lien ci-dessus.

Installation de WebIOPi

Nous allons donc récupérer le logiciel et l’installer sur notre Raspberry-Pi.

Pour ce faire, on lance les commandes suivantes à partir du terminal ou en connexion SSH :

wget http://webiopi.googlecode.com/files/WebIOPi-0.6.0.tar.gz
tar xvzf WebIOPi-0.6.0.tar.gz
cd WebIOPi-0.6.0
sudo ./setup.sh

L’installation et maintenant terminé !

Malgré tout, noter bien que le serveur et l’état GPIO seront perdus quand vous arrêterez le script ou fermerez le terminal.

Lancement du soft

Pour commencer on lance le logiciel avec la commande suivante :

sudo /etc/init.d/webiopi start

Maintenant, on lance notre navigateur web et on spécifie l’URL de votre Raspberry-Pi et le port « 8000 ». Soit « http://@Ip_du_RPI:8000 ».

Ensuite connectez-vous avec les identifiants suivants :

  • Identifiant : webiopi
  • Mot de passe : raspberry

Vous devriez alors accéder à la page suivante :

Menu de WebIOPi

Menu principal

Une fois sur l’interface web, il vous suffit de choisir le lien d’en-tête GPIO sur la page principale , vous pourrez alors contrôler GPIO :

Menu Webiopi

Interface de GPIO Header

Pour modifier les états, il faut  :

  • Cliquer sur la touche OUT > IN pour changer de direction GPIO .
  • Cliquer sur la broche pour changer l’état de sortie GPIO .

Configuration

Si vous souhaitez personnaliser les paramètres du soft, voici quelques commandes qui pourront vous être utiles.

Modifier le port HTTP :

On se déplace dans le répertoire du soft.

cd /etc/webiopi/config

Puis il vous suffit de remplacer la ligne correspondant au port souhaité :

[HTTP]
enabled = true
port = 8000
passwd-file = /etc/webiopi/passwd
doc-root = /home/pi/webiopi/examples/scripts/macros
welcome-file = index.html

Changer son Identifiant/Mot de passe :

Le soft utilise par défaut un fichier crypté qui contient à la fois login et mot de passe. Vous devez utiliser « webiopi-passwd » pour générer ce fichier.

webiopi-passwd -h
WebIOPi passwd file generator
Usage: webiopi-passwd [--help|file]
Compute and display hash used by WebIOPi for Authentication
Login and Password are prompted
--help  Display this help
-h
file    Save hash to file

Démarrer/Arrêter le service :

sudo /etc/init.d/webiopi start
sudo /etc/init.d/webiopi stop

Démarrer le service au démarrage du système :

sudo update-rc.d webiopi defaults

Conclusion

Voilà pour ce petit tutoriel. Vous pouvez maintenant tester la méthode avec l’allumage d’une LED par exemple.

A Très vite !


Sources: codegoogle.

Partager l'article >Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedInEmail this to someone

7 Comments

  • cusimicka

    Reply Reply 16 novembre 2015

    :'( toutes les cases in/out sont grises et vides, les gpio sont gris ..

    • Régis

      Régis

      Reply Reply 21 novembre 2015

      Bonjour,

      Lorsque tu clique sur les cases il ne se passe rien ? Es-ce que tu as eu des messages d’erreur lors de l’installation ?

      @+

  • sauvage

    Reply Reply 9 janvier 2016

    Bonjour
    je viens d’installer la dernière version de webiopi 0.7.1 sur mon raspberry pi 2, apparemment sans aucun problème.
    Mais lorsque je veux accéder a l interface graphique via mon navigateur, les cases in/out sont grises et en cliquant dessus rien ne se passe, malgré mes recherches google je ne trouve aucune solution pour resoudre ce probleme.
    Y aurait il une personne qui pourrait me guider car d apres le post ci dessus je ne serais pas le seul dans ce cas.
    Merci

  • sauvage

    Reply Reply 10 janvier 2016

    Bonjour

    en fait la version de webiopi n’est pas compatible avec le pi 2, mais il existe un patch pour y remedier.
    J ai trouver la solution sur le forum https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=98981

    Voila la demarche a suivre :

    telecharger la derniere version de webiopi et la decompresser sur le pi 2 :

    wget http://sourceforge.net/projects/webiopi/files/WebIOPi-0.7.1.tar.gz
    tar -zxvf WebIOPi-0.7.1.tar.gz

    telecharger et appliquer le patch pour pi 2 :

    git clone https://github.com/acrobotic/Ai_Demos_RPi
    cd WebIOPi-0.7.1
    patch -p0 -i ~/Ai_Demos_RPi/demos/gpio/webiopi_raspberry_pi_2_cpu_support.patch
    patch -p0 -i ~/Ai_Demos_RPi/demos/gpio/webiopi_raspberry_pi_2_gpio_40_pin.patch
    patch -p0 -i ~/Ai_Demos_RPi/demos/gpio/webiopi_raspberry_pi_2_gpio_mapping.patch

    enfin installer webiopi :

    sudo ./setup.sh

    penser a rebooter le pi 2

    sudo reboot

    Voila j espere que ces explications sont claires et pourront aider

    Merci regis pour vos tutos

    • Régis

      Régis

      Reply Reply 10 janvier 2016

      Bonjour,

      Désolé de ma réponse tardive…

      En effet, je n’ai pas encore pu tester le tutoriel sur un RPI2.

      En tout les cas merci pour ce complément d’informations sur le tutoriel qui devrait aider bien d’autres personnes. 🙂

    • Julien

      Reply Reply 10 février 2016

      Je vais essayer ça ce soir !

      Merci

    • Antoine

      Reply Reply 13 février 2016

      Bonjour,

      merci de ces précisions, cependant je suis bloquer à « patch -p0 -i » je reçois cette erreur et je ne sais pas quoi faire.

      patch: option requires an argument — ‘i’
      patch: Try ‘patch –help’ for more information.

Leave A Response

* Denotes Required Field