Différences entre les versions de « ESP8266 : ENVIRONNEMENT »

De GCE Electronics
Aller à la navigation Aller à la recherche
Ligne 148 : Ligne 148 :
* appuyez le bouton <code>Reset</code> puis relâchez
* appuyez le bouton <code>Reset</code> puis relâchez
* relâchez le bouton <code>Flash</code>
* relâchez le bouton <code>Flash</code>
Vous pouvez constater que la carte NodeMCU simplifie grandement la programmation. Les autres cartes nécessitent souvent des connections spécifiques entre les broches, tantôt  <code>Vcc</code>, tantôt <code>Gnd</code>.
Les connaisseurs pourront constater que la carte NodeMCU simplifie grandement la programmation. Les autres cartes nécessitent souvent des connections spécifiques entre les broches, tantôt  <code>Vcc</code>, tantôt <code>Gnd</code>.

Version du 27 juin 2018 à 09:42

NodeMCU LoLin (V3)

LoLin Presentation.png
Nom NodeMCU LoLin (V3)
Famille Objets connectés
Wiki créé le 22/05/2018
Wiki mis à jour le 22/05/2018
Auteur fgtoul

Présentation de l’ESP8266

L'ESP8266 a été créé en 2014 par la société chinoise Espressif, d'où son nom.

Il était à l'origine un module permettant d'implémenter les connexions Wifi dans les réalisations à base d'Arduino. Mais devant son franc succès, il a évolué, passant d'une version ESP-01 présentant 6 broches, à la version ESP-14 avec 22 broches comportant ainsi beaucoup plus d'entrées/sorties et devenant une réelle alternative à l'Arduino pour ceux qui voulaient une connectivité en wifi.

Une version spéciale de l'ESP8266 est équipée de 1MB de mémoire Flash, c'est l'ESP8285.

Aujourd'hui, l'ESP-32 a succédé à l'ESP8266, offrant plus de connectivité (avec le bluetooth par exemple) et plus de puissance.

Pour en savoir plus sur les décinaisons du module, vous pouvez consulter cette page pour plus d'informations sur la famille ESP :

ESP8266 module Familly

Pour la série d'articles qui va suivre, nous nous intéresserons plus particulièrement à la version ESP-12E, dans son intégration NodeMCU, module plus petit mais offrant suffisament de fonctionnalités pour nos besoins.

NodeMCU est un terme qui désigne également le firmware embarqué sur le module, permettant une programmation en LUA.

Nous choisirons la version LoLin (V3) du module NodeMCU. Cette version présente une amélioration à ne pas manquer.

Il embarque effectivement un contrôleur USB CH340G compatible avec un nombre plus grand de plateformes, permettant à la fois de programmer facilement le module et de l'alimenter (5V).

Une autre nouveauté - les broches inutilisées sur les versions précédentes (Réserves) premettent le report de la tension aux bornes du port USB VU = 5V & G = GND).

La programmation peut être effectuée avec Lua-Script ou Arduino IDE (C++).

Le module dispose de 4MB de mémoire flash disponible, le processeur est cadencé à 80-160 MHZ.

Le module est équipé d'une antenne wifi 25 dbm, compatible avec avec les normes 802.11 b/g/n.

LoLin double.PNG LoLin Layout.png

Installation de l'environnement de programmation

Difficulté de mise en oeuvre : ★★☆☆☆

Installation du pilote USB CH340G

Le Pilote CH340G peut être trouvé sur le site arduined.eu

http://www.arduined.eu/ch340g-converter-windows-7-driver-download/ Il existe une version spécifique pour Win 8.1. Pour Windows 10, vous pouvez utiliser le lien ci-dessus.

Pour macOS, vous pouvez le trouver sur cette page : https://wiki.wemos.cc/downloads

Installation sous windows

ESP8266 CH340G.png

Téléchargez et décompressez l'archive.

ESP8266 CH340G2.png

Dans le sous-dossier CH341SER, lancez le programme setup.exe

ESP8266 CH340G3.png

Sur votre PC, dans le gestionnaire de Périphériques : développez la catégorie Ports COM/LPT et relevez le numéro du port série émulé (COM6 dans l'exemple).

ESP8266 CH340G4.png

Installation de l'outil Arduino IDE

Téléchargement et Installation

Sur le site http://www.arduino.cc

téléchargez la dernière version de l'application Arduino IDE.

Vous pourrez trouver le logiciel en fonction de votre système d'exploitation.

Il existe pour Windows, mac OS et Linux.

ESP8266 IDE1.png

Installez et exécutez Arduino IDE

ESP8266 IDE2.png

Ajout de la carte ESP8266

Arduino IDE ne reconnaît pas l'ESP8266 par défaut. Nous allons devoir ajouter les bibliothèques nécessaires.

Dans le menu Fichier/Préférences , ajoutez l’URL pour la carte ESP8266

http://arduino.esp8266.com/stable/package_esp8266com_index.json

Vous pouvez faire un copier/coller de l'URL.

ESP8266 IDE3.png

validez par OK

Dans le menu Outils / Type de carte / Gestionnaire de Cartes

ESP8266 IDE4.png

Recherchez le type esp8266 et installez les bibliothèques.

ESP8266 IDE5.png

A l'heure de la rédaction de cet article, la dernière version disponible est la 2.4.1. Ayant rencontré des dysfonctionnements et une forte instabilité du module avec cette version, j'ai downgradé en version 2.4.0. Avec cette version, les performances et la stabilité du module sont tout à fait correctes. Je n'ai pas cherché plus loin, peut-être fallait-t'il adapter le code.

Paramétrage de l'IDE pour ESP8266

Nous devons sélectionner le type de carte pour que le compilateur génère un code correct.

Dans le menu Outils / Type de carte,

Recherchez NodeMCU 1.0 (ESP-12E Module) et sélectionnez.

ESP8266 IDE6.png

Paramétrage du Port COM

Afin que l'application Arduino IDE puisse téléverser le code compilé dans le module NodeMCU, nous devons lui indiquer le numéro du port série relevé précédemment lors de l'installation du pilote CH340G.

  • Dans le menu Outils / Port
Réglez le Port COM relevé précédemment dans le Gestionnaire de Périphériques
ESP8266 IDE7.png
  • Connectez l’Esp8266 sur le port USB du PC


La Led embarquée sur le module s’allume puis s’éteint immédiatement.
L’ESP8266 esp prêt à recevoir votre programme.
LoLin Led.PNG

Normalement, le module NodeMCU se met en mode flashage automatiquement, aucune manipulation à faire pour téléverser le programme.

Cependant, si le flashage échoue, il faut repasser la carte en mode apprentissage en suivant la procédure :

  • appuyez sur le bouton Flash et maintenez appuyé
  • appuyez le bouton Reset puis relâchez
  • relâchez le bouton Flash

Les connaisseurs pourront constater que la carte NodeMCU simplifie grandement la programmation. Les autres cartes nécessitent souvent des connections spécifiques entre les broches, tantôt Vcc, tantôt Gnd.