ESP Easy Mega arrive sur ESP32, test sur la Wemos LoLin32 Lite, nouveautés du firmware

Partager sur facebook
Partager sur twitter
Partager sur linkedin
Partager sur pinterest
Partager sur email
Partager sur telegram

L’équipe de développement d’ESP Easy vient de publier une première version du firmware adapté à l’ESP32. Dans l’article précédent, nous avons découvert le firmware MicroPython installé par défaut par Wemos sur sa nouvelle carte de développement LoLin32 Lite. Je vous propose aujourd’hui d’installer le firmware ESPEasy qui a été adapté pour fonctionner sur cette carte.

 

La version 20000 d’ESP Easy Mega est une version de développement qui comporte très certainement de nombreux bugs mais les premiers tests sont déjà très concluant. Pour le moment, le firmware semble fonctionner uniquement sur la nouvelle Wemos LoLin32 Lite. J’ai tenté sans succès de l’installé sur une carte ESP32 générique Geekcreit.

De quoi avez-vous besoin ?

Le firmware est disponible au téléchargement sur cette page. Il est livré sous la forme d’un fichier ZIP qui contient les fichiers suivants :

  • Le fichier binaire (ou plutôt les fichiers) du firmware à téléverser sur l’ESP32.
  • Un script d’installation OTA (Over The Air) pour l’installation sans fil (flashOTA), non testé
  • Un script d’installation via le port série (flashSerial)
  • Les outils esptool et espota utilisés par les scripts

Téléchargez et décompressez le fichier ESPEasy32 R20000. Pour le moment, il vous faudra donc un PC sous Windows pour installer le firmware. Si vous êtes sous Linux ou macOS, il suffira d’adapter la commande d’appel du script esptool.py

esptool.exe --chip esp32 --port COM%comport% --baud 256000 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0xe000 boot_app0.bin 0x1000 bootloader.bin 0x10000 ESPEasy32_R%build%.bin 0x8000 ESPEasy.ino.partitions.bin 

deviendra

sudo python esptool.py --chip esp32 --port /dev/ttyXXX --baud 256000 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0xe000 boot_app0.bin 0x1000 bootloader.bin 0x10000 ESPEasy32_R%build%.bin 0x8000 ESPEasy.ino.partitions.bin 

Pour en savoir plus sur le script esptool.py, lisez cet article précédent.

Pour le moment le firmware n’a été validé que sur la Wemos LoLin32 Lite. J’ai tenté ma chance avec une carte de développement Geekcreit…sans succès. Le firmware s’installe mais reboot en boucle.

Installation du drivers CH341

La LoLin32 embarque un convertisseur Série vers USB CH341C. Il est très probable que la Wemos LoLin32 Lite ne soit pas reconnue par Windows, macOS ou Linux au branchement. Suivez ce tutoriel pour installer le drivers qui convient à votre système.

Une fois que le drivers aura été installé, connectez la carte ESP32 à votre PC puis ouvrez PowerShell ou l’invite de commande et exécutez la commande mode pour trouver le port COM sur lequel est branché la carte.

C:\Windows\system32>mode

Statut du périphérique COM3:
----------------------------
    Baud :            115200
    Parité :          None
    Bits de données : 8
    Bits d’arrêt :    1
    Temporisation :   OFF
    XON/XOFF :        OFF
    Protocole CTS :   OFF
    Protocole DSR :   OFF
    Sensibilité DSR : OFF
    Circuit DTR :     ON
    Circuit RTS :     ON


Statut du périphérique CON:
---------------------------
    Lignes :          9001
    Colonnes :        121
    Vitesse clavier : 31
    Délai clavier :   1
    Page de codes :   850

Installation du firmware ESP Easy pour ESP32

Lancez le script d’installation flashSerial. L’invite de commande s’ouvre. Indiquez le port COM (ici 3) puis le numéro de version (ici 20000). L’installation débute immédiatement. A la fin de l’installation, appuyez sur une touche pour redémarrer la carte.

Comport (example 3, 4, ..)           :3
Build (example 20000, ..)           :20000
Using com port: 4
Using bin file: ESPEasy32_R20000.bin
esptool.py v2.1
Connecting........_
Chip is ESP32D0WDQ6 (revision 0)
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 256000
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 8192 bytes to 47...
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 5957.9 kbit/s)...
Hash of data verified.
Flash params set to 0x022f
Compressed 11072 bytes to 7420...
Wrote 11072 bytes (7420 compressed) at 0x00001000 in 0.3 seconds (effective 285.7 kbit/s)...
Hash of data verified.
Compressed 820960 bytes to 505252...
Wrote 820960 bytes (505252 compressed) at 0x00010000 in 21.0 seconds (effective 312.9 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 122...
Wrote 3072 bytes (122 compressed) at 0x00008000 in 0.0 seconds (effective 1755.4 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting...

Pour vous assurer que tout est correct, ouvrez le moniteur série depuis l’IDE Arduino. Vous devriez avoir un compte rendu de démarrage qui indique que la carte est démarrée en mode AP (Access Point) avec l’adresse IP par défaut 192.168.4.1.

INIT : Booting version: (custom)
INIT : Cold Boot
FS   : Mounting...
INIT : Free RAM:157580
INIT : I2C
INIT : SPI not enabled
WIFI : AP Mode disabled
WIFI : AP Mode ssid will be ESP_Easy_0 with address 192.168.4.1
WIFI : Could not connect to AP!
WIFI : AP Mode enabled
OTA  : Arduino OTA enabled on port 8266
WD   : Uptime 0 ConnectFailures 0 FreeMem 96652

Tout fonctionne, la carte est en attente d’une configuration WiFi valide. On se retrouve en terrain connu !

Configurer la connexion WiFi

Ouvrez le gestionnaire de connexion WiFi de Windows et connectez vous au réseau ESP_Easy_0. Le mot de passe par défaut est configesp. La fenêtre de configuration s’ouvre. Choisissez le réseau WiFi sur lequel doit se connecter l’ESP32 et indiquez le mot de passe. Validez. Le compte à rebours démarre.

La carte reboot automatiquement et l’adresse IP est attribuée par le routeur est affichée. Fermez la fenêtre et connectez vous à la LoLin32 Lite depuis un navigateur Web.

espeasy mega esp32 configuration wifi mode ap

Nouveautés d’ESPEasy Mega

Si vous n’avez pas encore testé ESP Easy Mega (ou v2), c’est l’occasion de découvrir les nouveautés que propose cette nouvelle version. Nous allons rapidement passer en revue les différentes pages. Le premier changement est d’ordre esthétique. ESPEasy Mega gagne en clarté, les boutons d’accès aux panneaux ont été remplacés par des onglets. Le noir a été remplacé par un gris moins agressif.

Page principale (main)

La première page qui regroupait de nombreuses informations a été simplifiée.

ESP EasyESP Easy Mega
espeasy main page1 esp easy mega main

Page de configuration (config)

On retrouve sur cette page la section Main Settings (réglages principaux) qui étaient présents sur la page Main de la v1. Option intéressante, il est maintenant possible de forcer la mise en veille du module en cas d’échec de connexion au réseau WiFi. Cette option évitera de drainer la batterie en cas de coupure de courant ou de panne du routeur WiFi. Si vous avez plusieurs projets à base d’ESP Easy, vous pouvez les mettre en réseau et échanger des messages (commandes, mesures, états). Pour cela, attribuez un Unit Number (numéro d’unité) à chaque module. On retrouve le numéro sur le résumé de la page principale.

2 esp easy mega config

2 esp easy mega config

 ESP EasyESP Easy Mega
espeasy main settings2 espeasy mega 20000 esp32 config page2 esp easy mega config2 esp easy mega config2 esp easy mega config2 esp easy mega config2 esp easy mega config2 esp easy mega config

Nouvelle page Controller (contrôleur)

Une nouvelle page Controller (contrôleur) fait son apparition. Il est maintenant possible de gérer jusqu’à 3 contrôleurs différents. On pourra par exemple communiquer avec un serveur domotique Domoticz, Nodo, OpenHab, PiDome, FHEM, Generic HTTP pour Jeedom par exemple. En même temps, on pourra envoyer des données sur un serveur en ligne tel que Emoncms (pour le suivi de la consommation énergétique) ou ThingSpeak pour l’enregistrement et l’affichage de mesures.

5 esp easy mega controllers

Le mode Standalone laisse fonctionner l’ESP32 en mode autonome. Il faut cocher l’option Enable pour activer chaque contrôleur individuellement.

4 esp easy mega esp32 wemos lolin32 lite controllers4 esp easy mega esp32 controllers

Page Hardware (matériel)

De nouvelles options ont été ajoutées. Il est maintenant possible d’initialiser le bus SPI et de spécifier la broche CS (chip select) pour les lecteurs de carte SD. Comme dans la première version, il est possible de forcer le mode de fonctionnement de chaque broche de l’ESP32 (default, input, Output HIGH, Output LOW). Contrairement à la version ESP8266, le repérage des broches est plus simple. GPIO-4 correspond à la broche 24 de l’ESP32. Le câblage est beaucoup plus facile !

espeasy hardware settings5 esp easy mega esp32 hardware settings

Page Device (appareils)

Il est toujours possible de gérer jusqu’à 12 Device avec ESP Easy Mega. Cala peut paraître beaucoup pour un projet d’objet connecté mais certains Device (Dummy Device) sont nécessaires pour créer des règles (Rules) comme nous l’avons déjà vu dans ce tutoriel ou celui-ci. Il y a toujours 3 pages de 4 devices. Pour passer d’une page à l’autre, utilisez les flèches dans le coin supérieur gauche du tableau fleche page devices

La page de configuration est quasiment identique à la version précédente. Les changements sont d’ordre esthétique et ergonomiques. De nouveaux modules ont été ajoutés :

  • Capteur de CO2 Senseair
  • MQTT Import qui permet de récupérer des messages MQTT et déclencher des actions
  • Sortie MQTT pour Domoticz.
  • Point lumineux à Led indexés NeoPixel. 3 modules (basic, candle, clock)
  • System Info. permet maintenant de récupérer plus facilement les info de la carte : Uptime (temps de fonctionnement), RAM disponible, adresse IP, activité WEB…)
  • Thermocouples MAX6675 ou MAX31855

Capteurs, entrées analogiques ou numériques

Les nouveautés sont en gras dans les tableaux suivants

tcr5000Compteur de pulsation

  • TCR5000
dallas-ds18b20Température

BMP180Baromètre numérique

  • BMP085/BMP180  : pression atmosphérique de 300 à 1100hPa
  • BMP280 : température de -40 à + 85°C, pression atmosphérique de 300 à 1100 hPa
  • BME280 : température de -40 à + 85°C, humidité de 0 à 100%, pression atmosphérique de 300 à 1100 hPa
  • MS5611 (GY63)
bh1750Luminosité

  • BH1750 : de 0-65535 lux, convertisseur 16 bits.
  • TSL2561 : de 188 μLux jusqu’à 88000 lux
Broches DHT22Température + humidité

sensor senseair co2 esp32Environnement : CO2

 pn532RFID

hc-sr04Distance / proximité

bouton-poussoirMicro-interrupteurs (push button)
Entrées analogiques de l’ESP32
ads1115Carte analogique externe

mcp23017Entrées digitales supplémentaires

ir keyes ky-022Récepteur Infra rouge
gp2y10Poussières

  • GP2Y10 : particules de taille supérieure à 0,8µm. 0.5V pour 0.1mg/m3.
ina219Tension et Intensité à base de INA219 sur bus I2C

Respectez les caractéristiques de votre capteur avant tout branchement. Vous êtes responsable de toute détérioration de votre matériel. Attention, manipuler du courant électrique est dangereux pour votre santé. Ne faites aucun branchement si vous n’avez pas les compétences

Le module est maintenant capable de mesurer la tension, l’intensité et de calculer la puissance. Trois plages de mesure sont disponibles : 32V/2A, 32V/1A, 16V/0,4A

Actionneurs, écrans

Sorties numériques ESP32 : Led, servo, relais
mcp23017Sorties numériques supplémentaires

pca9685PWM

oled ssd1306 ecran i2cEcrans

NeoPixel : points lumineux à Led pilotés individuellement. 3 modules (aucune documentation disponible)

  • Basic 
  • Candle (bougie)
  • Clock (horloge)

Page Notifications

Un nouveau système de notification a été ajouté. Il est possible de créer 4 notifications par email différentes. La commande notify permet de déclencher l’envoi d’une notification sur un événement ou un seuil. Par exemple, la notification 1 sera envoyée au démarrage de la carte. La commande notify accepte deux paramètres. Le numéro de la notification (1 à 4) puis le message (sans guillemets).

on System#Boot do 
   notify 1,system is started
endon

esp easy mega esp32 notifications

Page Tools (outils)

La page outils est pleine de nouveautés.

ESP Easy dispose maintenant d’un point d’entrée qui met à disposition un JSON contenant les principales info sur la carte ainsi que l’état (ou les valeurs) de chaque capteurs. On y accède à l’aide de l’adresse IP suivi de /json, par exemple http://192.168.1.85/json. Voici un exemple de JSON généré par ESP Easy Mega

{"System":{
"Build": 20000,
"Unit": 0,
"Uptime": 1,
"Free RAM": 96236
},
"Sensors":[
{
"TaskName": "BME280",
"Temperature": 19.51,
"Humidity": 42.59,
"Pressure": 972.93
},
{
"TaskName": "Switch",
"Switch": 0.00
}
]}

La section Filesystem (système de fichier) permet de lister les fichiers stockés sur la mémoire SPIFFS. On peut maintenant télécharger un fichier. On pourra par exemple s’en servir pour charger une feuille de style CSS. Il est maintenant possible d’enregistrer le journal d’exécution sur une carte micro SD (un lecteur coûte moins de 2,80€). Il ne manque plus qu’un contrôleur qui permettrait de créer un enregistreur de données (data logger) en quelques minutes !

esp easy mega system file

Le système de Rule est toujours désactivé par défaut. Pour l’activer, il faut toujours aller dans les Tools puis Advanced et cocher Rules (terminer par Submit). Il st maintenant possible de créer jusqu’à 4 Rules. Chaque Rules ne peut pas excéder 2048 caractères.

esp easy mega esp32 rules

 

Conclusions

Cette première version d’ESP Easy Mega adaptée aux modules ESP32 est une vrai réussite. Durant tous les tests, je n’ai rencontré aucun problème particulier ni plantage de la carte. Elle s’installe en quelques minutes depuis Windows. Son interface simple et efficace est très facile à prendre en main même si vous n’avez aucune notion de programmation. Le système de Rules permettra de faire évoluer vos projets en ajoutant un peu de logique. Vous pourrez très facilement allumer une lampe (à l’aide d’un relais) à l’aide d’un détecteur de mouvement. Le firmware fonctionne parfaitement sur la LoLin32 Lite de Wemos. Avec son connecteur de batterie LiPo et son système de recharge intégré, l’ESP32 est maintenant une alternative crédible à l’ESP8266 ! Espérons que la prochaine mise à jour sera compatible avec toutes les cartes ESP32

Promos sur les composants compatibles ESPEasy

-21% Carte d'extension de stockage Micro SD WAVGAT Module de bouclier mémoire de...
0,37 0,47
1 PCS TENSTAR ROBOT GY-68 BMP180 Remplacer BMP085 Barométrique Numérique Capteur de...
0,45
-20% 1 pièces PCF8591 AD/DA Conversion de Convertisseur Numérique Température Du Module D'éclairage
0,58 0,73
Ultrasons Module HC-SR04 de Mesure De Distance Capteur Capteur
0,59
TENSTAR ROBOT DHT22 Température Numérique et Capteur D'humidité AM2302 Module + PCB...
0,60
-15% GY-68 BMP180 GY68 Module de carte de capteur de pression barométrique numérique...
0,62 0,73
-16% WAVGAT GY-302 GY-30 BH1750 BH1750FVI le capteur d'éclairage d'intensité optique numérique BH1750FVI...
0,67 0,80
Nouveau Module de capteur de température et d'humidité Relative DHT11 avec câble...
0,71
100 pièces 6*6*4.3mm 5mm 6 7 8 9 10 11 12 13...
0,78
-20% Nouveau 1 PCS Importé DALLAS DS18B20 18B20 18S20 TO-92 IC PUCE Thermomètre...
0,88 1,10
-29% 1 pièces DS1820 boîtier en acier inoxydable étanche DS18b20 sonde de température...
0,92 1,30
5 PCS PCF8574P PCF8574 DIP16 DIP nouveau et original IC livraison gratuite
1,29
-17% Servomoteur 12 bits 16 canaux PWM I2C IIC PCA9685 module pilote pour...
1,33 1,62
-4% C302 Livraison gratuite Zéro dérive CJMCU-219 INA219 I2C interface Bi-directionnel courant/puissance surveillance...
1,39 1,46
-10% Nouvelle Interface Série Module IIC I2C MCP23017 SPI MCP23S17 Bidirectionnel 16-Bit I/O...
1,66 1,85
-14% 1 pièce LCD carte 2004 20*4 LCD 20X4 3.3 V/5 V bleu/jaune...
1,72 2,02
-26% Industrielle De Haute Précision Si7021 Capteur D'humidité avec Interface I2C
1,95 2,67
-20% 0.96 pouce IIC Série Blanc OLED Module D'affichage 128X64 I2C SSD1306 12864...
2,28 2,85
-6% BME280 Capteur Numérique Température Humidité Capteur de Pression Barométrique Module I2C SPI...
2,97 3,19
1 PCS écran LCD2004 + I2C 2004 20x4 2004A bleu HD44780 Caractère...
3,28
5 Couleur Dessus de Touche 25 Pcs Tactile Bouton-Poussoir Momentané 12*12*7.3 MM...
3,36
-10% GY-63 MS5611-01BA03 Haute-résolution Atmosphérique Hauteur Capteur Module IIC/SPI Communication MS5611
4,06 4,56
1 pièces CJMCU-2561 TSL2561 Module d'intensité lumineuse numérique capteur de lumière numérique
4,46
Sharp GP2Y1010AU0F Compact des poussières du capteur capteur optique de fumée de...
5,48
AZDelivery GY-68 BMP180 Digital Barometric Pressure Temperature et Capteur d'altitude Module Board...
5,49
-10% 1 pièces GP2Y1023AU0F GP2Y1023 GP2Y10
7,98 8,87
GY-MCU90614-BCC de Module de thermométrie infrarouge sans Contact/infrarouge à Port série MLX90614-BCC
71,84
Avez-vous aimé cet article ?
[Total: 0 Moyenne: 0]
Partager sur facebook
Partager sur twitter
Partager sur linkedin
Partager sur pinterest
Partager sur email
Partager sur telegram

Vous avez aimé ce projet ? Ne manquez plus aucun projet en vous abonnant à notre lettre d’information hebdomadaire!

Ressources utiles
quel modèle esp8266 choisir
Quel modèle d'ESP8266EX choisir en 2020 ?
guide choix esp32 development board
Quel ESP32 choisir en 2020 ?
2 Commentaires
  1. J’utilise ESP32 avec la release R20100. J’ai quelques bugs majeurs comme la gestion d’un écran OLED à allumer avec un PIR.
    De même avec le bus I2C partagé par BME280 et l’écran OLED qui semblent-il implique des reboots forcés au moins tous les 2 jours.
    Et que dire de la mise à jour par RTP qui ne fonctionne que lors du boot et dont le les minutes prennent beaucoup de retard sans mise à jour du RTP possible.
    Je voudrais allumer l’écran OLED par détection PIR mais cela fonctionne à l’inverse. Reste allumé jusqu’à ce que le PIR détecte et s’éteint puis se rallume à nouveau.
    Et je suis déçu de n’avoir aucune évolution du soft depuis 2 ans?
    Et finalement je trouve peu de sujets ESP32 récents.

    • Bonjour José. Oui c’est vrai qu’on aurait pu s’attendre à une sortie plus rapide de la V2 qui déjà très stable. C’est un avis personnel mais je trouve que l’ESP32 arrive seulement a maturité. je comprends que les contributeurs au projet ESP Easy préfèrent attendre que la plateforme soit stable plutot que de passer leur temps (libre) à gérer les mises à jour à chaque évolution de l’ESP32.

    Laisser un commentaire

    Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

    Domotique et objets connectés à faire soi-même