Wifi ESP8266 mécanismes de fonctionnement mis en jeu.

Bonjour à tous,

J'ai fait mes débuts avec ce module, mais je n'arrive pas à bien comprendre les différents cas d'utilisation.
Ce que j'ai compris : (3 cas possibles)
Merci de bien vouloir me corriger, si possible en suivant mon plan.

  • a) utilisation des commandes AT à partir d'une carte UNO (UNO à titre d'exemple)
  • b) utilisation de bibliothèques 8266 à partir d'une carte UNO (SANS les commandes AT)
  • c) utilisation en autonome (sans carte UNO)

Cas a) : J'ai bien compris. J'ai dû reflacher car impossible de fonctionner en 115200 bits/s. 9600 = OK.
..........firmware utilisé : « v0.9.2.2 AT Firmware.bin »

Cas b) C'est la bibliothèque qui traduit en commandes AT ?
..........en ajoutant dans mes préférences "http://arduino.esp8266.com/stable/package_esp8266com_index.json"
..........il n'est pas nécessaire de reflacher au préalable ?
..........Si oui avec quoi ?
..........Je ne voudrais utiliser que l'IDE Arduino. Possible ?

Cas c) Est-il nécessaire de reflacher ? Je pense que oui..... Si oui avec quoi ?
..........Je ne voudrais utiliser que l'IDE Arduino. Possible ?

Si je passe du cas b) au cas c) ou vice-versa, faut-il reflacher ?

geryko:
J'ai fait mes débuts avec ce module, mais je n'arrive pas à bien comprendre les différents cas d'utilisation.
1 Ce que j'ai compris : (3 cas possibles)
...
2 Cas c) Est-il nécessaire de reflacher ? Je pense que oui..... Si oui avec quoi ?
..........Je ne voudrais utiliser que l'IDE Arduino. Possible ?
...
3 Si je passe du cas b) au cas c) ou vice-versa, faut-il reflacher ?

bonsoir
Je tente une synthese :grin:

1 , il y a plus de 3 cas possibles :sunglasses:
2 , L'IDE arduino (avec l'ajout de boards ESP ) gere completement l'upload .
3. Si tu veux ensuite revenir à d'autres firmwares ( simples commandes AT par exemple) , il faut reflacher avec des outils dédiés (pas compliqué)

si tu utilise des modules esp82266 + interface TTL/USB (genre nodemcu) cest exactement la meme manip que de faire de l'upload sur un UNO

Bonjour

pour rester , comme demandé , dans le plan initial je ferai une remarque :

Le premier point énuméré en b) "en ajoutant dans mes préférences......." est en fait constitutif du fonctionnement en mode c) . Les fichiers qui seront téléchargés par cette intervention ajoutent à l'IDE Arduino un 'core ESP8266' + les descriptions de divers modules utilisant cette puce. Il ne s'agit pas d'une librairie ESP8266 pour UNO.

Le fonctionnement en mode b) "avec UNO mais non AT" suppose de flasher avec les outils dédiés un firmware spécifique comme par exemple ESP-LINK https://github.com/jeelabs/esp-link,
= firmwares permettant d'utiliser l'ESP8266 en 'coprocesseur WiFi'

le fonctionement en mode b) peut d'ailleurs découler du c) si le module programmé à partir d'un sketch genre Firmata

Dans le mode c) comme indiqué par Artouste l'IDE Arduino prend en charge l'intégralité de la gestion du module comportant l'ESP8266, y compris l'activation du bootloader figé dans la ROM de l'ESP8266. Sur certains modules plus ou moins dérivé du hardware NodeMCU il n'y a même pas à agir sur les boutons poussoirs.

Dans le mode c) l'IDE Arduino effectue lui même le flashage nécessaire, il n'y a pas de préparation préliminaire à effectuer (l'IDE Arduino crée en fait le firmware intégral intégrant les fonctions (SDK) + le code de l'application.)

Bonjour Artouste et al1fch,

Je ne veux pas vous ennuyer d'avantage mais voilà ce qui me gêne et ressemble à une contradiction :
Artouste dit :

2 , L'IDE arduino (avec l'ajout de boards ESP ) gère complètement l'upload .

Donc je me dis : pas nécessaire de flasher ESP8266
al1fch dit :

Le fonctionnement en mode b) "avec UNO mais non AT" suppose de flasher avec les outils dédiés un firmware spécifique comme par exemple ESP-LINK GitHub - jeelabs/esp-link: esp8266 wifi-serial bridge, outbound TCP, and arduino/AVR/LPC/NXP programmer,
= firmwares permettant d'utiliser l'ESP8266 en 'coprocesseur WiFi

sketch genre Firmata : je ne sais pas ce que c'est mais je verrai plus tard.

Pour faire au plus simple, j'abandonne provisoirement le mode b).
Je vais passer directement au mode c) et faire ses essais.

Ce que je comprends :

  1. dans mes préférences "http://arduino.esp8266.com/stable/package_esp8266com_index.json"
  2. il n'est pas nécessaire de flasher au préalable.

Nota : j'ai déjà essayé de "Vérifier" un sketch trouvé sur l'internet avec l'IDE Arduino et le "1)" ci-dessus.
Je n'avais pas d'erreur, mais un temps de compilation assez long.
J'ai bien compris qu'il ne s'agissait pas de simples bibliothèques mais plutôt d'une adaptation pour les ESP8266.

J'en reste là pour l"instant. Si je me plante ou si vous avez d'autres précisions, merci de me les signaler.
Ne comprenant pas l'anglais c'est un sérieux handicap.

Bien cordialement.

Salut Géryko,

Je passe moi aussi le pas de l'ESP, j'attend la livraison d'une nodeMCU sous peu. (Les questions sur le fonctionnement devrait arriver avec).

Tu as choisi quoi comme board?

geryko:
...
Je vais passer directement au mode c) et faire ses essais.

Ce que je comprends :

  1. dans mes préférences "http://arduino.esp8266.com/stable/package_esp8266com_index.json"
  2. il n'est pas nécessaire de flasher au préalable.

Nota : j'ai déjà essayé de "Vérifier" un sketch trouvé sur l'internet avec l'IDE Arduino et le "1)" ci-dessus.
Je n'avais pas d'erreur, mais un temps de compilation assez long.
J'ai bien compris qu'il ne s'agissait pas de simples bibliothèques mais plutôt d'une adaptation pour les ESP8266.

J'en reste là pour l"instant. Si je me plante ou si vous avez d'autres précisions, merci de me les signaler.
Ne comprenant pas l'anglais c'est un sérieux handicap.

Bien cordialement.

bonjour
voilà tu a tous compris de l'utilisation d'un esp8266 sous l'IDE arduino
au premier upload avec l'IDE cela va remplacer le firmware present d'origine par un nouveau firmware généré par l'IDE.

Perso actuellement j'utilise surtout ça
ça se programme aussi facilement qu'un UNO (pas de boutons/cavalier à modifier pour l'upload)

NB attention aux versions de l'IDE , perso pour l'esp je travaille avec la 1.6.5

Artouste:
Perso actuellement j'utilise surtout ça
ça se programme aussi facilement qu'un UNO (pas de boutons/cavalier à modifier pour l'upload)

Malgré la présence des 2 poussoirs flash et rst?

Jambe:
Malgré la présence des 2 poussoirs flash et rst?

absolument , l'IDE arduino gere les signaux au travers du CH340

Bonjour à tous !

Je n'utilise plus les ESP8266 qu'en "mode c" pour reprendre la classification initale du fil.

Modules sélectionnés pour répondre à mes besoins au meillleur coût : WEMOS D1 Mini principalement (bon régulateur 3,3V low drop), parfois ESP-03 quand je veux faire une appli alimentée par un accu 3,2V et donc sans régulateur ni interface USB/UART permanente.

L'essentiel est de débuter avec un module alimentant correctement les puces (ESP8266 et Flash SPI) et disposant des divers pull-up et pull-down nécessaires. Si en plus le flashage se fait sans intervention physique (BP, cavaliers....) sur la carte c'est encore plus confortable.

L'IDE Arduino 1.6.9 ne me pose pas de problème, contrairement à certaines versions antérieures

Si un jour une application (le cas ne s'est pas présenté ces deux dernières années) nécessite le recours aux périphériques d'un ATMEGA 328, à son système d'interruptions... je passerai en "mode b" soit avec un firmware AT si je trouve une bonne librairie gérant correctement le dialogue AT, soit avec le firmware cité dans mon message précédent.

concernant la contradiction apparente que tu cites, geryko :
-si tu utilises l'IDE Arduino pour programmer ta carte UNO et que tu souhaites que cette carte UNO utilise les 'services' d'un ESP8266 il faut bien que celui-ci soit rendu capable de répondre aux commandes venant du Mega328 (donc flashage préalable d'un firmware adhoc de ton choix)
-si tu utilises l'IDE Arduino pour programmer ta carte ESP8266 'en solo' l'IDE Arduino reprogramme intégralement et sans préalable, la mémoire flash accompagnant l'ESP8266 à chaque 'upload' de code.

Bonsoir à tous,

Je pense que c'est clair pour l'instant : ce que j'ai appelé "Cas c)"
Je vais donc poursuivre mes tests mais doucement car il y a d'autres priorités extérieures.
Un grand merci.

Je possède 2 modules que j'ai achetés rien que pour tester (jouer).
1x ESP8266-01 et 1 x ESP8266-12E

J'ai fait ça pour les débutants : Debuter_avec_ESP8266_wifi.zip à télécharger
(J'ai même mis une page de mon site pour ceux qui veulent tester leurs 1ers essais.)

Debuter_avec_ESP8266_wifi.zip (91.7 KB)

J'ai reçu ce matin ma première NodeMCU comme mentionné plus tôt dans ce topic.

J'utilise ton Option C (à peine déballé de son sachet AS). J'upload des sketch directement depuis l'IDE Arduino (v1.6.5). Rien a dire, ça semble très prometteur, je risque de me faire un stock.

Il y a juste le pinout à adapter, tel que noté sur la carte, le numéro de pin est différent dans le code. Et à la limite très facilement contournable avec quelques lignes de préprocesseur.

Première fois pour moi aussi que je bosse en 3.3V, il va falloir faire gaffe :grin:

Jambe:
J'ai reçu ce matin ma première NodeMCU comme mentionné plus tôt dans ce topic.

J'utilise ton Option C (à peine déballé de son sachet AS). J'upload des sketch directement depuis l'IDE Arduino (v1.6.5). Rien a dire, ça semble très prometteur, je risque de me faire un stock.

Il y a juste le pinout à adapter, tel que noté sur la carte, le numéro de pin est différent dans le code. Et à la limite très facilement contournable avec quelques lignes de préprocesseur.

Première fois pour moi aussi que je bosse en 3.3V, il va falloir faire gaffe :grin:

bonjour Jambe
tu verra à l'usage = c'est que du plaisir
pour rappel : les I/O des esp8266 sont (même si ce n'est pas parfaitement explicite dans le DS)
tolérant 5V.

le 3.3V est imperatif "juste" pour l'alim (a 5V il est cuit,cuit 8) )

Artouste:
bonjour Jambe
tu verra à l'usage = c'est que du plaisir

Je rajouterai même (en conclusion d'un article lu sur le net):

The NodeMCU board has been touted as an Arduino killer. And it is easy to see why. It is cheap, wifi enabled and easy to program. The majority of my project use this board and until something better comes along I will continue too.

Sans aller toutefois "killer" Arduino, le nombre d'I/O reste limité mais couplé à une nano ou autre chip (mux, shift register etc...), ça devient le top

Artouste:
pour rappel : les I/O des esp8266 sont (même si ce n'est pas parfaitement explicite dans le DS)
tolérant 5V.

Merci pour la précision! Il y a beaucoup de montage sur le net qui utilisent des "level-shifter"

Jambe:
Merci pour la précision! Il y a beaucoup de montage sur le net qui utilisent des "level-shifter"

Je commence à en avoir utilisés pas mal dans differents projets.
je n'ai jamais utilisé de level-shifter, je n'ai (encore) jamais eu de problemes concernant ce point.

c'est même agréable de ne pas à avoir se poser de questions.
simplement bien avoir à l'esprit : pas d'alim > 3.3V

pour le reste , c'est vrai qu'il y a qq manque de specificités, ça devrait etre +/- resolu avec l'ESP32
mais en attendant c'est quand meme bien sympa de jouer avec.

Bonjour à tous

"5V tolerant ou pas"....infos contradictoires d'Espressif.
NON si l'on s'en tient à la dernière Data Sheet,
OUI selon un tweet du directeur d'Espressif circulant sur des forums !!

Des retours de terrain tels que ceux d'Artouste témoignent du fait que la puce tolère finalement bien les signaux 5V,la protection des I/O (type snap_in) contre les surtensions ne s'activant qu'un peu au delà de 6V.

Mes réalisations perso jusqu'à présent étant intégralement en 3V3 je ne peux témoigner d'incident quelconque.

Si j'avais ,pour une bidouille perso, à relier à l'ESP8266 un périphérique 5V je m'interrogerait sur la valeur que peut prendre le courant en cas de déclenchement de la protection (effet thyristor) J'ajouterait alors éventuellement une résistance série pour limiter ce courant sans insérer d'adaptation de niveau.

Par contre dans un contexte 'pro' avec mise sur le marché je suivrait la D.S mise à jour et insérerait une adaptation de niveau. (La marge entre le déclenchement du 'snap-in' et un éventuel signal à 5,5V devenant un peu faible à mon goût.)

al1fch:
...

Par contre dans un contexte 'pro' avec mise sur le marché je suivrait la D.S mise à jour et insérerait une adaptation de niveau. (La marge entre le déclenchement du 'snap-in' et un éventuel signal à 5,5V devenant un peu faible à mon goût.)

Bonsoir Al1
Il est evident que mes propos sont à prendre dans un cadre "DIY" ET en connaissance de cause.
J'assume parfaitement là le risque et les éventuelles conséquences d'etre "border line"