Bonjour,
Je sollicite vos lumières car je suis bloqué dans un projet d'automatisation.
J'ai acheté une carte Mega + WiFi R3 ATmega2560 + ESP8266 (Geekcreit mega +wifi r3 module atmega2560+esp8266 32mb memory usb-ttl ch340g Sale - Banggood.com sold out-arrival notice-arrival notice??cur_warehouse=CN).
J'ai besoin de récupérer des données (capteurs de température) de d'ATmega (qui gère les pin) et de les envoyer à l'ESP8266 pour pouvoir ensuite les enregistrer et les consulter par internet.
J'arrive à faire fonctionner chaque module séparément (l'ATmega allume des leds, récupère des températures..., l'ESP8266 se connecte au wifi), j'arrive également à envoyer des données de l'ESP vers l'ATmega via la liaison série mais je n'arrive pas à faire l'inverse (envoyer des données de l'ATmega vers l'ESP).
Après des heures de recherches sur internet, de tutos, etc. je ne trouve pas la solution.
Il me semble avoir à peu près compris le fonctionnement des dip switch sans en être totalement certain.
Je place 1, 2, 3 et 4 sur ON et les autres sur OFF. Et le switch sur "RXD3/TXD3".
Si j'ai bien compris, la liaison série "1" permet la communication entre l'ATmega et le PC (via USB) et la liaison série "3" permet la communication entre ATmega et ESP8266 (et c'est cela qui ne semble fonctionner que dans un seul sens).
Voici mes codes que j'ai simplifiés pour essayer d'isoler le problème :
Sur l'ATmega :
void setup() {
Serial.begin(115200);
Serial3.begin(115200);
}
void loop() {
delay(2000);
Serial3.println("coucou du mega");
}
void serialEvent3() {
while (Serial3.available()) {
char inChar=Serial3.read();
Serial.print(inChar);
}
}
Sur l'ESP :
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
void setup() {
Serial.begin(115200);
}
void loop() {
delay(3000);
Serial.println("coucou de l'ESP");
}
void serialEvent() {
while (Serial.available()) {
char inChar=Serial.read();
Serial.print(inChar);
}
}
Résultat : j'obtiens des "coucou de l'ESP" toutes les 3s dans le moniteur série mais je n'ai jamais les "coucou du mega".
Merci beaucoup à ceux qui voudront bien essayer de m'aider.