Pico Wireless: Comment utiliser WEBRepl

WEBRepl permet d'établir une connexion REPL avec un microcontrôleur MicroPython via une connexion Ethernet (donc aussi en WiFi).

Pico Wireless sous MicroPython

1. Installer MicroPython

Si le firmware MicroPython n'est pas encore installé sur votre MicroContrôleur alors je vous porpose de lire les articles suivant:

  1. Pico Wireless: Installer le Firmware MicroPython
  2. Utiliser Thonny IDE pour comme environnement de découverte pour MicroPython (aussi valable pour le Pico)

2. Connecter votre Pico-W sur le WiFi

Il faut commencer par connecter votre Pico sur votre routeur WiFi pour qu'il se trouve sur le même réseau que votre ordinateur.

Ce point a été traité en détail dans notre article "Pico Wireless: MicroPython et le WiFi".

3. Copier le Serveur WebREPL sur le Pico

Le firmware MicroPython pour Pico-W n'inclus pas le serveur WebREPL (du moins pas encore).

Il est très facile de vérifier sa présence de WebRepl sur le Pico en saisissant la commande:

import webrepl

Si WebRepl n'est pas présent dans le système de fichier... ni dans le firmware... alors MicroPython retournera une erreur (le module ne peut pas être importé).

Il faudra alors copier WebREPL sur votre plateforme MicroPython en utilisant, par exemple, Thonny IDE.
Les sources fichiers WEB REPL sont disponibles dans le dépôt MicroPython (dans les modules d'extension).

Copiez simplement les fichiers webrepl.py et webrepl_setup.py sur votre carte MicroPython.

extmod/webrepl sources

4. Configurer WebREPL sur le Pico

WebREPL doit également être configuré (avec un mot de passe) et doit démarrer automatiquement au démarrage de votre plateforme MicroPython.

Cela se fait en saisissant l'instruction suivante dans une session REPL (via Thonny par exemple).

import webrepl_setup

Le script s'exécute, pose différentes questions (dont le mot de passe) et installe le démarrage de WebRepl en même temps que la plateforme.

En fin d'installation, le script propose de redémarrer la plateforme.
Lorsque WebREPL est actif sur une plateforme MicroPython, il ajoute/active les deux lignes suivantes en fin du fichier boot.py

import webrepl
webrepl.start()
Par expérience, je conseille de faire un redémarrage matériel. Bouton Reset ou cycle d'alimentation pour que le service WebREPL démarre correctement.

5. Client WebREPL sur ordinateur

Le client WebRepl est également disponible dans le dépôt MicroPython dans le répertoire micropython/webrepl .

WEBREPL doit être chargé dans le navigateur depuis le disque de votre ordinateur (via le menu File | Open).

J'utilise personnellement FireFox car il est moins contraignant. J'ai bien essayé Chrome mais sans succès.

Interface WebREPL

L'interface présente différents éléments:

  • Zone de connexion : en haut à gauche avec un bouton [Connect] .
  • Zone terminal : qui occupe la partie principale de l'interface.
  • Zone de transfert : sur la droite, permet d'envoyer/réceptionner un fichier

Il va de soit que la zone terminal et transfert n'est accessible qu'une fois la connexion établie.

Pour établie la connexion, il faut saisir l'adresse IP de la carte MicroPython suivit du n° de port 8266 puis presser le [Connect] .

La connexion s'établit avec le serveur WebREPL sur le microcontrôleur. La première opération à faire dans le terminal c'est de saisir le mot de passe WEBREPL.


Une fois le mot de passe saisit, nous avons accès à l'invite REPL.

2 commentaires:

  1. merci pour ce très intéressant tuto.
    mais le lien vers les fichiers revoie l' erreur 404, dommage

    RépondreSupprimer
    Réponses
    1. La LIB a été déplacée (je ne l'ai pas encore retrouvée).
      Par contre, WebREPL est maintenant disponible dans Firmware MicroPython pour Pico W.

      Supprimer