Arduino Mega 2560 et ESP8266 par ESP-01 adapter

Bonjour à tous !

Premier post, j'essaye de bien faire, mais n’hésitez pas a me dire si je ne respecte pas la charte !

J'ai bien chercher sur le forum et je ne trouve pas de réponse a mon problème plutôt précis :wink:

Je cherche à connecter un module ESP8266 par l’intermédiaire d'un ESP-01 adapter a mon Arduino Mega 2560 afin de communiquer en Wifi , mais je n'y arrive pas, j'ai essayé plusieurs configuration mais ne comprends pas ce qui coince, les schémas trouvées sur internet sont très souvent différents, alors j'ai plusieurs questions pour les connaisseurs.

Premièrement, j'ai branché le ESP-01 adapter comme suit : VCC > 5V de l'Arduino Mega 2560, GND > GND, puis le RX sur le RX1(19) de l'Arduino Mega 2560, et le TX sur le TX1(18) de l'Arduino Mega 2560

Le câblage vous semble t'il correct ?

Car de mon coté aucunes réponse quand je tape "AT" dans le moniteur série.

Secondement, j'ai vu qu'il était question de flasher l'ESP8266, le problème viens peut-être de la ? mais a ce niveau j'avoue ne pas savoir ni comprendre comment faire.

besoin de vos lumières !

Un grand merci ! :slight_smile:

bonjour,

déjà j'ai un petit programme de test a te proposer :

/*****************************************************
Sketch pour tester la connexion entre l'Arduino Uno et
le module ESP8622.
*****************************************************/
#include <SoftwareSerial.h>

static const byte EnablePin PROGMEM = 6;   // ch_PD
static const byte ResetPin PROGMEM = 7;   // reset

SoftwareSerial mySerial(10, 11); // RX = 10, TX = 11
void setup()
{
    Serial.begin(9600);
 // Serial1.begin(9600);
    mySerial.begin(9600);


  pinMode(EnablePin, OUTPUT);
  pinMode(ResetPin, OUTPUT);

  RebootSystem();

}


void loop()
{

while (mySerial.available()) {
        Serial.write(mySerial.read());  // réponse de l'ESP8266 copié dans le moniteur série
    }
while (Serial.available()) {
        mySerial.write(Serial.read());  // vos instructions transmises à l'ESP8266
    }

/*
while (Serial1.available()) {
        Serial.write(Serial1.read());  // réponse de l'ESP8266 copié dans le moniteur série
    }
while (Serial.available()) {
        Serial1.write(Serial.read());  // vos instructions transmises à l'ESP8266
    }

*/

}


void RebootSystem()
{
    Serial.println("Boot...");
    EnableESP();
    ResetESP();
 //   testesp();
 //   connectWiFi();
 //   testping();
 //   if (WIFIok) { CompteurMeteo=50; CompteurNTP=20; CompteurAutoReset=300; }
}


void ResetESP()
{
  Serial.println("Rst.ESP");
  digitalWrite(ResetPin, LOW);
  delay(200);
  digitalWrite(ResetPin, HIGH);
  delay(800);
}

void DisableESP()
{
  digitalWrite(EnablePin, LOW);
  Serial.println("ESP off");
}

void EnableESP()
{
  digitalWrite(EnablePin, HIGH);
  Serial.println("ESP on");
    // Open serial communications and wait for port to open:
  while (!Serial) {
    ; // wait for serial port to connect. Needed for Leonardo only
  }
}

j'étais parti sur une uno mais cela ne change pas si tu est un une mega ou nano

mon programme de test active la carte ESP01 et permet de dialoguer en AT

par contre tu ne peut pas mettre directement la ESP01 sur une arduino à cause des tensions différentes

je te met en pièce jointe le schéma que j'ai utilisé pour une horloge avec modules d'affichage 8x8 sur un arduino mega, un ESP01, module RTC et capteur de lumière...

maintenant, c'est bien pour jouer et apprendre mais je te conseil d'aller directement vers l'ESP32 qui a tout d'intégré !

bon courage,
Stéphane

pour ce qui est du 'flash' du module ESP01
normalement, de base il doit répondre aux commandes AT

sinon il est possible de le programmer directement avec l'éditeur arduino, c'est le plus simple,
il y a bien des outils spécifiques pour le flasher mais je n'ai jamais testé cela ...

pour le programmer sur l'interface arduino il te faut juste un adaptateur sur port USB comme il s'en vend sur 'ali' et ajouter les cartes ESP8266 aux gestionnaire de cartes arduino

...

Bonjour

j'ai branché le ESP-01 adapter comme suit : VCC > 5V de l'Arduino Mega 2560, GND > GND, puis le RX sur le RX1(19) de l'Arduino Mega 2560, et le TX sur le TX1(18) de l'Arduino Mega 2560

Le câblage vous semble t'il correct ?

Non; Il faut 'croiser les Rx et les Tx : la sortie TX de l'un doit aller vers l'entrée Rx de l'autre

Car de mon coté aucunes réponse quand je tape "AT" dans le moniteur série.

sans croisement pas d'échange de données*,* l'ESP8286 ne reçoit rien et s'il disait qq chose l'Arduino le recevrait pas

Pour le reste il serait préférable de donner un lien vers l'adaptateur utilisé pour voir s'il gère correctement l'alimentation de l'ESP8266 , les adaptations de niveaux 5V/3,3V pour les GPIOs....

Flasher ou Pas ? Seulement si c'est nécessaire parce que le firmware en place ne conviendrait pas.

Aller également voir dans les tutoriels de ce forum, un tutoriel fiable est disponible sur le sujet
https://forum.arduino.cc/index.php?topic=501923.0

Bonjour à nouveau,

Merci de vos réponses j'y voit un peu plus clair.

Oui c'est pour apprendre, je verrai avec un ESP32 dès que je pourrais !

Pour la prise en charge de la tension de l'Arduino je pensait que mon ESP-01 adapter était la pour ça, je me trompe ?

Du coup, j'ai croisé le RX et le TX comme conseillé, j'ai chargé le programme que Stef96 m'a donné, l'ai adapté au pin de mon Arduino au niveau du RX/TX (18/19), et le retour dans le moniteur série est le suivant :

Boot...
ESP On
Rst.ESP

Il y a un changement mon ESP8266 est allumé fixe rouge comme d'habitude mais une nouvelle LED bleu s'allume, je pense que ça viens de ton programme si je le comprends bien mais lorsque j'envoie une commande AT, elle ne renvoie toujours aucunes réponses.

J'ai oublié quelquechose ?

Une idée ?

Merci encore ! :slight_smile:

Je me permet d'UP, j'ai continué d'essayer de trouver une solution de mon côté mais rien...

Besoin d'aide !

Up

Salut
Si personne ne répond plus c'est que toutes les infos ont été données, en particulier le tuto conseillé par al1fch.
Tu ne dis même pas si tu l'as lu, compris, ni si tu as vérifié la présence d'un firmware AT.

Oui c'est pour apprendre, je verrai avec un ESP32 dès que je pourrais !

Si ta demande ne concerne pas un projet précis, il n'y a pas d'urgence.
D'autre part à quoi bon se familiariser avec ce genre de technologie complètement dépassée ?
Personnellement je te conseillerais de passer directement à l'ESP32.