Les modules ESP

Pour chaque projet, vous retrouverez la liste des modèles compatibles.

Les puces ESP peuvent contrôler un moteur, lire pratiquement tous les types de capteurs, héberger un site web ou même créer son propre réseau WI-FI. Avec elles, vous pouvez autant construire un simple thermomètre intelligent, qu’un drone contrôlé par le réseau cellulaire, qui fait de la reconnaissance faciale en diffusant de la musique générée par la couleur du sol et munit d’un GPS. Autrement dit, leurs possibilités sont infinies.

Ce sont des microcontrôleurs montés sur un NodeMCU, une plate-forme « open source » pour les projets IoT, qui permettent d’exécuter des fonctions, d’établir des connexions WIFI et qui disposent de différents ports de communication. Leurs programmations est assez simples, du même type qu’un Arduino et ils sont très fiables, la majorité des appareils domotiques dans le monde sont contrôler par une puce ESP.

ESP8266 ou ESP32

Les puces ESP32 sont les successeurs des puces ESP8266, qui en plus d’être plus puissantes, elles disposent généralement de la connexion Bluetooth et d’un mode de consommation réduit lorsqu’elle fonctionne sur batterie. S’il existe plus ou moins un modèle de puce ESP8266 (il y a la puce ESP8285 qui a les mêmes caractérisés que la ESP8266, mais avec 1 meg de mémoire ROM), il existe plusieurs puces ESP32 (Xtensa et RISC-V) qui ont chacune leurs avantages et leur inconvénient.

Les puces ESP8266 sont plus abordable et malgré qu’elles sont moins puissantes, elles sont généralement assez puissantes pour la plupart des projets. Par contre, elle n’ont pas de Bluetooth.

Les différents modèles

Il y a les gros modèles comme les cartes de développement, elles permettent d’avoir accès à tous les ports de la puce ESP qu’elles embarquent. On les utilise dans les gros projets ou lors du développement. Il existence des dizaines de modèles aux proportions différentes .

Les modèles moyens de type D1 Mini sont généralement équipés d’une puce ESP8266. Ils sont plus petits et disposent de la moitié des ports du « gros » modèle, mais c’est généralement suffisamment pour la plupart des projets. Il existe une version D1 Mini du ESP32, il est un peu plus gros et offre plus de connexion, mais une partie de ses ports sont disposés de façon identique à celui du ESP8266. Attention, il existe le ESP32 S2, il est similaire au D1 Mini, mais il n’est pas compatible.

Les modèles mini comme les ESP-01 qui sont des ESP3266 réduits à un seul port et avec une capacité de mémoire limitée, elles sont commodes pour les petits projets en plus d’être très abordable. Il est très pratique d’avoir un adaptateur pour le programmer, car la tâche peut être fastidieuse.

Les micros modèles tels que les ESP07 et ESP12 sont conçus pour être soudés directement à un circuit imprimé, ce qui permet d’évité de souder tous les composants nécessaires pour le fonctionnement de la puce esp8266. Il existe tout autant de modèles pour les ESP32.

Les différentes versions

En plus du vaste choix de modèle, ils se décomposent en plusieurs versions. Par exemple, on retrouve le ESP8266 D1 Mini en version 1 meg, en V3 de 4 meg et 16 meg ou encore la V4 avec une connexion USB Type-C. Dans les ESP32, on y retrouve les S2, S3, C3, C5, C6, etc. Chacune avec des caractéristiques différentes. Voici un lien vers un tableau comparatif non exhaustif.

Attention

Nous vous proposons des liens qui vous permettent d’acheter le bon produit, mais si vous voulez choisir un autre modèle, faites attention à certains détails.

  • L’espace: selon la taille de votre projet, l’espace peut être un enjeu. Pour un projet comme le « Gestionnaire Énergétique », il est recommandé de disposer d’une mémoire de 4 meg. Un projet avec un seul capteur comme un thermomètre, une mémoire de 512k peut être suffisant.
  • L’antenne: certain circuit imprimé ont antenne incluse directement dans le circuit, pour d’autres, ils ont dois connecter une antenne externe et certains offre le choix d’utiliser l’antenne du circuit ou de connecter une antenne externe. Une antenne externe est très pratique pour les projets à l’extérieur ou dans les espaces clos comme le grenier ou certaines pièces du sous-sol comme une chambre froide.
  • Le Bluetooth: les ESP8266 n’en ont pas, mais ce n’est pas tous les ESP32 qui ont une antenne Bluetooth, vérifier si votre choix à cette technologie si vous voulez l’ajouter à votre projet.

Cette opération peut sembler complexe, mais elle est « pratiquement » sans risque. Si votre programme est incompatible, incomplet ou si votre appareil est déconnecté durant le téléversement, ce n’est pas grave, vous pourrez recommencer. Les ESP sont beaucoup plus sensibles aux erreurs de voltage ou de connectiques.

Pour programmer une puce ESP, on doit le connecter à un ordinateur via un port USB. L’ordinateur détecte un pour série (COM) et puits on transfert le programme dans l’ESP par l’entremise d’un logiciel ou d’un site web. Une fois que cette étape a été faite une première fois, il est souvent possible de faire les mises à jour ou de téléverser un nouveau programme par le Wi-Fi.

Pour pouvoir téléverser un programme dans un ESP, il doit être en « Boot mode ». Une puce ESP8266 peut demander qu’on tienne un bouton lorsqu’on le connecte à l’ordinateur et pour le ESP32 on peut devoir appuyer une seconde durant le téléversement. Le bouton peut s’appeler Flash, Boot, Reset, Prog, Switch, etc. Des puces comme les ESP-01 ou ESP32-CAM n’ont pas de bouton et même de port USB, il est alors très pratique d’avoir un programmeur afin de bien les connecter à l’ordinateur. Attention, certains programmeurs pour ESP-01 on un port USB, mais ils n’ont pas de bouton, il faut alors en ajouter un soi-même.

Si vous avez acheté un « Programmeur pour ESP-01 » sans bouton, ce tutoriel vous expliquera comment en ajouter un.

Comme il existe plusieurs techniques de téléversement, nous expliqueront uniquement celles utilisées dans nos tutoriels.

M̩thode #1 РDepuis un site web

C’est cette technique que nous utiliserons généralement pour ESPHome.

On peut installer un programme depuis un site web, ESPHome et WLed permettent cette opération. Pour ce faire, on doit utiliser Chrome ou Edge, d’autres navigateurs peuvent être compatibles.

On connecte l’ESP à l’ordinateur, on se rend à la page d’installation ( par exemple: https://install.wled.me/ ), on clique sur « Install » et on choisit le port COM de notre ESP. On patiente quelques secondes et voilà, l’ESP est programmé. Ensuite on doit le connecteur à notre réseau, pour cela on va dans les réseaux Wi-Fi de notre téléphone et on choisit le réseau de notre appareil (exemple: WLED-AP) avec le mot de passe au besoin (exemple: wled1234). Il ne reste plus qu’à ce rendre sur la page de l’appareil et d’ajouter les informations du réseau.

M̩thode #2 РDepuis un logiciel

Les logiciels vont envoyer un fichier conteneur ( Exemple, un fichier .bin ) sur l’ESP. Certains logiciels sont plus complexes que d’autres. Pour les programmes de ESPHome, nous vous recommandons ESPHome-Flasher: https://github.com/esphome/esphome-flasher

(Allez dans la section « Releases » à droite et sélectionnez « Lastest », ensuite, au bas de la page, vous aurez les liens pour télécharger le logiciel selon votre OS)

ESPHome-Flasher est compatible avec d’autres programmes comme WLED, Tasmota et ESP_Easy

On connecte l’ESP à l’ordinateur, on démarre le logiciel, on sélectionne le port série de l’ESP et le fichier .bin. Puis on appuie sur « Flash ESP ».

Si vous avez une erreur, vérifiez bien que vous avez sélectionné le bon port ou que l’ESP est en « Boot mode ».

Voici un lien qui explique comment installer WLED par cette technique

https://www.instructables.com/Flash-WLED-to-ESP8266-Based-Controllers/

M̩thode #3 РDepuis le Wi-Fi

Lorsque vous avez ajouté un ESP sur votre réseau, il est parfois possible de s’y connecter pour le contrôler, modifier des paramètres ou avoir les informations de ses capteurs. Mais il est parfois possible de faire une mise à jour manuel « OTA » (Over the air), ce qui permet d’installer le logiciel que l’on veut, par exemple: installer Tasmota par dessus WLED.

Attention, l’opération va totalement effacer ce qui se trouve sur l’ESP, vous n’aurez pas Tasmota et WLED sur la même puce. Aussi, cette opération demande de l’espace, parc exemple, il est possible d’installer WLED sur une puce ESP-01, mais pas de faire une mise à jour OTA puisqu’un ESP-01 à 1 MB d’espace et WLED occupe 723 KB. Donc il n’est pas passible de téléverser un fichier .bin de 723 KB nécessaires à une mise à jour. Donc on doit récupérer l’ESP et le connecter à un ordinateur.