Comment : ESP8266 – flashez les fichiers .bin sous Windows avec « Esptool ».

Le flashage réel des fichiers de firmware tels que les fichiers .bin (également appelés « binaires ») sur le Wemos D1 Mini, la carte NodeMcu Dev ou toute autre carte basée sur l'ESP8266 se produit complètement en arrière-plan dans l'IDE Arduino.

Derrière cela se cache en réalité le « esptool » proposé par Espressif – le fabricant de l'ESP8266. Avec les bons paramètres, vous pouvez facilement transférer les fichiers .bin terminés vers l'ESP8266.

Une méthode simple et un peu plus exigeante est décrite dans cet article.


Consignes de sécurité

Je sais que les notes suivantes sont toujours un peu ennuyeuses et semblent inutiles. Malheureusement, de nombreuses personnes qui savaient "mieux" ont perdu des yeux, des doigts ou d'autres choses à cause d'une négligence ou se sont blessées. La perte de données est presque négligeable en comparaison, mais même celles-ci peuvent être vraiment ennuyeuses. Par conséquent, veuillez prendre cinq minutes pour lire les consignes de sécurité. Parce que même le projet le plus cool ne vaut pas une blessure ou d'autres problèmes.
https://www.nerdiy.de/sicherheitshinweise/

Liens d'affiliation/publicitaires

Les liens vers des boutiques en ligne répertoriés ici sont des liens dits d'affiliation. Si vous cliquez sur un tel lien d'affiliation et effectuez un achat via ce lien, Nerdiy.de recevra une commission de la boutique en ligne ou du fournisseur concerné. Le prix ne change pas pour vous. Si vous effectuez vos achats via ces liens, vous aidez Nerdiy.de à pouvoir proposer d'autres projets utiles à l'avenir. 🙂 


Conditions préalables

Outil requis :
-Non-

Matériel requis :
-Non-


L'esptool

Vous pouvez toujours trouver la version actuelle du « esptool » en question dans le GitHub du fabricant à l’adresse :

https://github.com/espressif/esptool

Le « problème » est que cet outil est un script/application Python et ne peut donc pas être exécuté directement/facilement sous Windows.

En pratique, les scripts Python peuvent également être « regroupés » dans un fichier .exe compact. Cela facilite également la manipulation sous Windows.
Comment faire c'est dans l'article Python - Traduire Esptool.py en Esptool.exe décrites.
Alternativement, vous pouvez également accéder aux versions préparées (un peu plus anciennes) sur

https://github.com/igrr/esptool-ck/releases

Se replier sur.

Pour la suite de cet article, vous n'avez pas à organiser vous-même l'esptool, vous pouvez simplement utiliser le fichier esptool.exe dans le Git suivant.


Transférer un fichier .bin existant avec l'esptool et l'ESPEasy Flasher

Si vous souhaitez simplement transférer un fichier .bin vers l'ESP8266 « armé » de l'esptool, cela signifie généralement que vous devez appeler l'esptool via la ligne de commande et avec les paramètres appropriés.

C'est souvent difficile, surtout pour les utilisateurs moins avancés, et à part ça, c'est tout simplement peu pratique.

D'autres l'ont déjà remarqué et travaillent donc sur la façon de rendre le processus de flash de l'ESP8266 aussi simple que possible.

Vous pouvez trouver l'un de ces résultats dans le référentiel Git suivant

https://github.com/BattloXX/ESPEasyFlasher

comme toujours, il y a aussi une sauvegarde sur le Nerdiy-Git :

https://github.com/Nerdiyde/ESPEasyFlasher

En plus de l'esptool.exe mentionné, il existe également un FlashESP8266.exe dans ce référentiel Git. Ce dernier fonctionne comme une interface utilisateur graphique, qui traduit l'entrée faite avec la souris en paramètres et un appel de ligne de commande. Ce que cela signifie exactement est expliqué dans le paragraphe suivant. La manière facile commence ici. 🙂

Dans le référentiel Git mentionné, vous pouvez voir les fichiers contenus dans le référentiel Git.
Pour commencer le téléchargement des fichiers, cliquez sur le bouton « Cloner ou Télécharger » et…
…puis cliquez sur « Télécharger ZIP ». Vous pouvez également trouver plus d'informations sur le téléchargement de fichiers à partir d'un référentiel Git dans l'article GitHub - Comment copier des fichiers d'un référentiel Git sur mon ordinateur
Si vous avez téléchargé le fichier ZIP, vous devez d'abord le décompresser. Vous trouverez des informations à ce sujet dans l'article WinRar ? WinZip ? Gagner quoi ? - Chérie, j'ai réduit les fichiers. Dans le dossier décompressé, vous devriez alors pouvoir voir le contenu du dossier affiché.
Vous avez maintenant préparé tous les fichiers programme dont vous avez besoin pour le flashage. Ce qui vous manque encore, c'est le fichier .bin que vous souhaitez transférer sur votre ESP. Vous pouvez l'obtenir - montré dans l'image - par exemple à partir du dossier « bin » d'ESPEasy Git. Là et dans Tasmota Git, des « binaires » entièrement compilés (c'est ainsi qu'on appelle les fichiers .bin) sont préparés et proposés. Étant donné que ces binaires ont toujours été compilés spécifiquement pour un type de contrôleur avec la taille de mémoire et la configuration correspondantes, il est important de sélectionner ici le fichier correct. Par exemple, pour un Wemos D1-Mini vous pouvez sélectionner le fichier « ESP_Easy_mega-20190803_custom_ESP8266_4M.bin ». Ne soyez pas dérouté par le fait que la séquence de numéros entre « ESP_Easy_mega- » et « _custom_ESP8266_4M.bin » change dans les versions plus récentes. Cette partie correspond à la date à laquelle le binaire a été créé. Copiez maintenant le binaire sélectionné et collez-le dans...
...dans le même répertoire que le fichier .exe de l'ESPEasy Flasher. Il s'agit donc du répertoire dans lequel vous avez précédemment décompressé les fichiers du programme d'esptools and co.
Vous pouvez maintenant démarrer ESPEasy Flasher en exécutant le fichier FlashESP8266.exe.
Le programme qui est maintenant ouvert est très simple. Là, vous pouvez sélectionner le port COM auquel vous avez connecté votre ESP. À part ça …
...vous pouvez sélectionner le fichier binaire que vous souhaitez transférer vers votre ESP dans le menu de sélection ci-dessous. Tous les binaires situés dans le même dossier que le programme FlashESP8266.exe sont répertoriés ici. C'est pourquoi vous trouverez également ici le binaire que vous avez précédemment copié du dossier « bin » dans le dossier du programme décompressé.

Il ne vous reste plus qu'à cliquer sur le bouton « Flash » et le binaire sélectionné sera transféré sur votre ESP.

Autre remarque importante : la liste des ports COM disponibles n'est mise à jour qu'au redémarrage de l'application. Donc si vous avez connecté votre ESP alors que le programme était déjà lancé, il faut le refermer et le rouvrir.


Appelez Esptool depuis la ligne de commande

Comme mentionné, vous pouvez également utiliser l'esptool directement pour transférer un binaire existant vers votre ESP.

Pour ce faire, vous devez utiliser la ligne de commande pour appeler esptool avec les paramètres spécifiés comme suit :

esptool.exe -vv -cd nodemcu -cb 921600 -cp COM32 -ca 0x00000 -cf C:ESPEasy.ino.bin
  • Le nombre « 921600 » correspond au débit en bauds auquel votre ESP est programmé. Cela peut varier d'un modèle à l'autre. Les débits en bauds typiques sont « 9 600 », « 115 200 » ou « 921 600 ». Si un débit en bauds ne fonctionne pas, vous pouvez simplement en essayer un autre.
  • La partie « COM32 » correspond au port COM sous lequel votre ESP connecté est accessible.
  • « 0x00000 » correspond à la zone mémoire à partir de laquelle le binaire doit être écrit dans la mémoire ESP. Normalement, vous ne devriez pas modifier cette valeur.
  • Maintenant, la partie "C:ESPEasy.ino.bin" est importante. Le chemin d'accès à votre binaire doit être spécifié ici. Si vous avez copié votre binaire sur votre lecteur C: et l'avez nommé « ESPEasy.ino.bin », cette valeur peut rester telle quelle.

Informations Complémentaires:

https://github.com/arendst/Sonoff-Tasmota/wiki/Esptool


Amusez-vous avec le projet

J'espère que tout a fonctionné comme décrit. Si ce n'est pas le cas ou si vous avez des questions ou des suggestions, faites-le moi savoir dans les commentaires. Je les ajouterai à l'article si nécessaire.
Les idées de nouveaux projets sont toujours les bienvenues. 🙂

PS Beaucoup de ces projets - en particulier les projets matériels - coûtent beaucoup de temps et d'argent. Bien sûr, je le fais parce que j'aime ça, mais si vous pensez que c'est cool que je partage l'information avec vous, je serais heureux d'un petit don au fonds du café. 🙂

Achetez-moi un café sur ko-fi.com       

10 commentaires

  1. Bonjour,
    Tout est super, mais malheureusement le port COM n'est pas reconnu. Pouvez-vous m'aider s'il vous plaît.
    Achim

    1. Bonjour Hans Joachim,
      pouvez-vous me donner plus d'informations à ce sujet? 🙂 Pouvez-vous, par exemple, vérifier si le pilote du convertisseur USB-série est installé ? Quelle planche as-tu ?
      Le CH340G est installé sur de nombreuses cartes. Malheureusement, il n'y a pas de pilote standard préinstallé pour cela sous Windows. Si vous avez un périphérique dans le gestionnaire de périphériques auquel un pilote ne peut pas être attribué, essayez le pilote du CH340G. 🙂

  2. Bonjour à tous,
    très bonnes instructions, il suffit de reconstruire l'horloge à sous,
    Malheureusement, comme décrit ici, je ne trouve nulle part le "ESP_Easy_mega-20190803_custom_ESP8266_4M.bin".
    J'ai téléchargé le git ESPEasy mais je ne trouve pas ce fichier .bin.
    Est-ce que quelqu'un peut m'aider?

    Merci d'avance

  3. L'outil n'est plus inclus dans le package en tant que .exe, mais en tant que .sln.
    Malheureusement, ce n'est plus si facile de démarrer.

  4. Bonjour Fab,

    site cool et projets encore plus cool ! Je suis ici pour la première fois... 🙂

    Je travaille avec ESPeasy depuis longtemps, je connais donc les plugins standards. Maintenant, j'aimerais implémenter votre « HowTo : pxlBlck – pxlBlck_8x8 ».
    Cependant, lors de la mise à jour du firmware OTA avec « ESP8266_ESPEasy_incl_pxlBlck_4M.bin », quelque chose comme « Magic Bit est manquant » est apparu et lorsque je le fais via USB avec le flasher officiel ESPeasy, il ne diffuse alors pas de point d'accès WLAN. Pouvez-vous me dire où se trouve l'erreur ?

    Salutations Franz

    projets de bateaux ouverts. org

    1. Salut Franz,
      Merci et bienvenue. 🙂
      La mise à jour du firmware via OTA ne fonctionnera probablement pas car le fichier bin avec le plugin pxlBlck est trop volumineux pour la plupart des « partitions standard ». Je dois admettre que je n'ai pas encore essayé ou utilisé l'installation via OTA et que je ne peux donc pas en dire grand-chose, désolé. :/ Il faudrait que je regarde de plus près.
      ESPEasy démarre-t-il correctement si vous l'installez avec ESPEasy Flasher ? Vous voyez donc une sortie dans la console série ?
      Si c'est le cas, vous pouvez essayer de configurer les données d'accès Wifi via l'interface série. Je l'ai décrit (un peu de manière compacte) ici: https://nerdiy.de/howto-espeasy-firmware-flashen/#WLAN-Zugangsdaten_ueber_die_serielle_Schnittstelle_konfigurieren
      Si ce n'est pas le cas, faites le moi savoir et j'essaierai de le reproduire. 🙂
      Cordialement
      Fabien

Kommentar hinterlassen

Votre adresse e-mail ne sera pas publiée. Erforderliche Felder sind mit * markiert

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