Ouvrir une session SSH sur la brique Lego EV3

L'utilisation de la bibliothèque ev3dev2 sur la brique Lego EV3 nécessite de démarrer celle-ci en Linux Debian. Ce système d'exploitation, disponible en téléchargement ici, est installé sur une carte microSD. Le fait d'insérer cet carte dans la fente dédiée à cet usage (sur le coté gauche de la brique EV3) et de redémarrer la brique EV3 va utiliser ce système plutôt que celui installé par défaut dont l'utilisation passe par le logiciel Lego. L'utilisation de ce système Linux Debian permet, entre autres, d'utiliser le langage Python pour programmer des robots.
Cependant, il est souvent nécessaire de se connecter en SSH sur la console du système pour procéder à des opérations de mise à jour du système ou pour installer de nouveaux composants de la constellation Linux Debian.
Cet article présente deux façons d'ouvrir une session SSH sur la brique EV3 démarré sur ev3dev2.

Adresse IP de la brique EV3

Pour pouvoir se connecter à la brique EV3, il faut connaitre son adresse IP. Au démarrage de la brique EV3 sous ev3dev2, l'adresse IP de celle-ci (192.168.1.36 dans l'exemple ci-dessous) s'affiche en haut de l'écran LCD de celle-ci.
Cela sous-entend, bien-sur, que la brique EV3 est elle-même connectée à Internet. Ce blog présente deux manières de connecter la brique, soit avec le cable USB, soit en WiFi.

Ouvrir une session SSH sur la brique EV3 avec PuTTY

PuTTY est utilitaire gratuit utilisé couramment pour les connexion SSH ou Telnet sur les ordinateurs distants. Il est en téléchargement gratuit sur putty.org.
Au lancement de PuTTY, la fenêtre ci-dessous s'affiche :
  • Dans Category, choisir Session.
  • Dans Host Name, taper l'adresse IP de la brique EV3 (192.168.1.36 dans l'exemple).
  • Dans Port, taper 22 (le port IP réservé pour SSH).
  • Dans Connection Type choisir SSH.
  • Cliquer le bouton [Open].
Lors de la première connexion, une fenêtre des sécurité s'affiche pour valider la connexion sécurisée SSH. Cliquer le bouton [Oui] pour valider la connexion.
La fenêtre de la console s'affiche alors. Il faudra d'abord saisir le login (robot) puis le mot de passe (maker) pour enfin disposer du prompt Linux. L'utilisateur robot est celui utilisé par VSCode pour établir la connexion lors du développement des applications robotiques en Python. C'est aussi celui utilisé lors du démarrage de la brique EV3 pour afficher la page d'accueil sur l'écran LCD.
login as: robot
Using keyboard-interactive authentication.
Password: maker
Linux ev3dev 4.14.117-ev3dev-2.3.4-ev3 #1 PREEMPT Thu May 9 15:13:01 CDT 2019 armv5tejl
             _____     _
   _____   _|___ /  __| | _____   __
  / _ \ \ / / |_ \ / _` |/ _ \ \ / /
 |  __/\ V / ___) | (_| |  __/\ V /
  \___| \_/ |____/ \__,_|\___| \_/

Debian stretch on LEGO MINDSTORMS EV3!
Last login: Sat Jan  4 09:52:52 2020 from 192.168.1.92
robot@ev3dev:~$

Ouvrir un session SSH sur la brique EV3 avec VSCode

Il est aussi possible d'ouvrir une session directement dans l'IDE de développement Visual Studio Code utilisé pour le développement d'applications robotiques en Python.

Pré-requis

VSCode doit être connecté à la brique comme décrit dans l'article « Connecter Visual Studio Code à un robot MindStorm EV3 avec ev3dev-browser».

Ouvrir la session SSH dans VSCode

  • Dans VSCode, cliquer l'icone Explorer.
Cela affiche la liste des fichiers qui composent le projet robotique. Cela affiche aussi l'onglet EV3DEV DEVICE BROWSER. Lorsque la connexion avec la brique EV3 est établie, le petit disque s'affiche en vert.
  • Faire un clic-droit sur la connexion avec la brique EV3 (Brique EV3 en WiFi dans l'exemple).
  • Cliquer la commande  Open SSH Terminal.
La console SSH de la brique s'affiche dans la fenêtre de VSCODE en ouvrant un onglet supplémentaire comme indiqué dans l'image ci-dessous :
Il n'est pas nécessaire de ressaisir un login et un mot de passe, puisque la connexion entre VSCode et la brique EV3 était déjà établie. Il est maintenant possible de taper des commandes Linux derrière le prompt.

Commentaires

Posts les plus consultés de ce blog

Connecter ev3dev2 à Internet en WiFi

Connecter Visual Studio Code à un robot MindStorm EV3 avec ev3dev-browser

Installer les modules EV3DEV2 sur Python