Cet article est lié à cette "vieille" page où je décrivais comment flasher péniblement un module ESP 32 comme le Lolin32 Lite avec EasyESP : Créer ses propres objets connectés avec les modules ESP
Mais je viens de découvrir comment y flasher facilement le firmware Tasmota à l'aide du navigateur Google Chrome qu'on peut installer (même s'il vaut mieux privilégier Firefox) sous Ubuntu. Attention ça ne fonctionnera pas sous Firefox ou même Chromium.
J'ai aussi utilisé cette méthode pour flasher un module Sonoff Dual R2 très facilement contrairement à la méthode "traditionnelle" avec mon module convertisseur FT232RL 3.3V 5V FTDI USB vers TTL.
Source : https://tasmota.github.io/docs/ESP32/
I- Clone du Wemos Lolin32 Lite
J'ai commandé 2 modules (https://fr.aliexpress.com/item/WEMOS-LOLIN32-Lite-V1-0-0-Wifi-Bluetooth-Conseil-de-D-veloppement-Antenne-ESP-32-ESP32/32843053744.html) qui ne sont pas des Wemos originaux (pas de sérigraphie officielle). La commande "lsusb" retourne :
Bus 002 Device 020: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
Arduino IDE retourne comme informations sur ce module, BN: Carte inconnue, VID: 1A86, PID: 7523
Ce sont donc ce qu'on appelle des clones. Le problème c'est que parfois les clones ne répondent pas de la même façon que les originaux. Mais je n'ai jamais rencontré ce souci.
Autre info donnée par l'installateur Web de Tasmota : il s'agit du module ESP32 intitulé ESP32-D0WDQ6
II- Précaution sur le type de cable USB à utiliser pour le flashage
ATTENTION, le type de câble USB que vous utilisez est essentiel : il doit être entièrement câblé ! En effet, nous avons autour de nous de nombreux câbles USB qui ne servent qu'à recharger ou à alimenter un appareil électronique (cas des smartphones). Or ces câbles sont incomplets car ils ne peuvent véhiculer qu'un courant électrique mais pas les signaux permettant d'échanger des données. Ces câbles sont donc inutilisables pour programmer un module ESP. De façon pragmatique, on reconnaît, en général, les câbles USB complets à leur plus gros diamètre. On peut aussi s'en servir pour échanger des données entre son smartphone et son PC : si on ne peut pas, c'est que le câble n'est pas bon.
Pour savoir si le câble est bon, on tape la commande dans un terminal "lsusb" et on doit voir apparaître la ligne :
Bus 002 Device 020: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
III- Procédure d'installation
Afin que l'on puisse avoir accès au port série ttyUSB0 pour le flashage, il est nécessaire d'avoir les droits nécessaires et faire partie des groupes dialout et tty. Pour cela on tape les commandes suivantes :
sudo usermod -a -G dialout $USER
sudo usermod -a -G tty $USER
Dans Google Chrome, on se rend sur la page de l'installateur Web pour le firmware Tasmota : https://tasmota.github.io/install/ et on choisit le Firmware Tasmota FR pour module ESP32 :
Remarque : Il est aussi possible de passer par cette page explicative https://tasmota.github.io/docs/Getting-Started/#flashing
On branche le module au port USB de l'ordinateur avec un bon câble USB (voir avertissement ci-dessus) et on clique sur le bouton "CONNECT". Sur la fenêtre qui apparaît, on choisit le port USB (en général, le port intitulé "ttyUSB0") et on clique sur le bouton "Connexion" :
REMARQUE : Sous Linux Mint 21.3, Chrome n'arrivait pas à détecter le port USB ttyUSB0. Pour que cela soit possible, il faut supprimer le module permettant la lecture du braille (source : https://www.linux.org/threads/ch340-driver-on-linux-mint.44961/#post-204493) avec la commande :
sudo apt-get remove -y brltty
On clique ensuite sur les différents paramètres permettant l'installation du firmware en suivant le cheminement proposé (je vous conseille d'effacer complètement les anciennes données).
Avertissement : Il peut arriver qu'on ait un message d'erreur après l'étape 3 ci-dessus nous indiquant qu'il faut mettre le module en position Reset au moment où on appuie sur le bouton Install de la boîte de dialogue. Pour cela, il suffit d'appuyer 1 seconde (ne pas laisser appuyer) sur le bouton RST du module au moment où on clique sur "INSTALL" et si tout se passe bien, on verra apparaître une fenêtre avec un cercle croissant indiquant le niveau de progression de l'installation (qui dure environ 2 minutes).
Ensuite, on configure comme d'habitude notre module sous Tasmota en le laissant branché en USB : on peut configurer directement le wifi (6) et arriver après l'étape 7 à la page habituelle de configuration d'un module sous Tasmota.
Franchement, cette méthode de flashage est extrêmement simple par rapport aux anciennes nécessitant de passer par Arduino IDE et les ESP Tools ! Le seul hic est l'utilisation de Google Chrome...