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.

[toc]

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.

Si vous avez trouvé une faute d’orthographe, merci de nous en informer en sélectionnant le texte en question et en appuyant sur « Ctrl + Entrée« .

    8 replies to "Gérer les broches GPIO avec WebIOPi !"

    • cusimicka

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

      • Régis

        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

      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

      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

        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

        Je vais essayer ça ce soir !

        Merci

      • Antoine

        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.

      • maro

        Bonjour
        j ai essaye mais toujours le meme probleme
        si tu peux repondre

Leave a Reply

Your email address will not be published.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.