Les insolents, les impolis et les .....

Je suis vraiment désespéré .. J'ai besoin d'aide :(

Je suis une débutante avec le esp266-01 et j'ai un projet qui doit être fait en ce mois ..

Je ne sais pas si mon problème est compliquer ou non :( mais c'est vraiment embêtant, j'ai une carte Arduino Mega et un esp266-01 et il me suffit d'envoyer une chaîne de caractère de l'Arduino à l'ESP via la communication série. .. pour être clair, mon Arduino peut lire les données provenant de l’ESP et les imprimer dans le moniteur série

mais le contraire ne fonctionne pas .. et je ne sais pas où est le problème J'utilise serial1 du Mega ..

quelqu'un peut-il m'aider avec un code clair et un câblage s'il vous plaît :(

vous êtes mon dernier espoir de terminer le projet ..

Peut être soucis Mega Tx 5V => ESP Rx 3.3V ... et grillage de l’ESP...

J’ai écrit un petit tuto avec esp-01 cherchez dans la partie tutos

J-M-L: Peut être soucis Mega Tx 5V => ESP Rx 3.3V ... et grillage de l’ESP...

J’ai écrit un petit tuto avec esp-01 cherchez dans la partie tutos

tu peut me envoyer le lien s'il vous plait

c'est Honteux mais je ne maîtrise pas l’utilisation de ce site :(

safa_1997: c'est Honteux mais je ne maîtrise pas l’utilisation de ce site :(

C'est marrant parceque pour poster la même question sur la partie anglaise du forum t'as l'air de bien connaitre...

Bonjour,

J'envoie cette trame d'un UNO vers un Nano mais le message reçu ne correspond pas au message envoyé : Trame départ : 15:33:18.221 -> BASE 004097ADCO 811775639733 S 15:33:20.019 -> OPTARIF BASE 0 15:33:20.296 -> 15:33:20.296 -> ISOUSC 30 9 15:33:20.296 -> BASE 004097929 2 15:33:20.537 -> PTEC TH.. $ 15:33:20.537 -> IINST 000 W 15:33:20.810 -> IMAX 090 H 15:33:20.810 -> PAPP 00130 % 15:33:20.810 -> HHPHC A , 15:33:21.053 -> MOTDETAT 000000 B Trame arrivée: 15:36:35.460 -> BACE $ )')$ " 15:36:35.733 -> @DEC DH.. $ 15:36:35.733 -> IINCD G 15:36:36.001 -> IMAH ) H 15:36:36.001 -> @A@@ !# % 15:36:36.001 -> HH@HC A , 15:36:36.244 -> MODDEDAD B

Pouvez vous m'aider ? A bientôt !

On devine tous seuls le type d'interface utilisée : UART, I2C, SPI ? Et la vitesse ?

Ci-sessous les infos de la carte :

BN: Carte inconnue VID: 1A86 PID: 7523 SN: Envoyez un croquis pour l'obtenir

Ce n'est pas une réponse à la question posée.

J'envoie cette trame d'un UNO vers un Nano mais le message reçu ne correspond pas au message envoyé :

Cette trame emprunte bien un chemin physique entre les deux cartes ? - ligne série - bus I2C - autre ?

Il s'agit des trames tele-info EDF... Elles partent de l'UNO via le Tx et arrive sur le NANO sur le Rx J'utilise un optocoupleur SFH620A-3X entre l'UNO et le NANO. Est ce plus clair ?

hbachetti: On devine tous seuls le type d'interface utilisée : UART, I2C, SPI ? Et la vitesse ?

Si tu répondais à toutes les questions ?

Autant te dire que tirer les vers du nez des demandeurs qui donnent les infos au compte-goutte ne me passionne pas vraiment.

Tu vas devoir fournir toutes les infos : - schéma (indispensable) - code (récepteur surtout).

Tout ceci étant précisé ici : https://forum.arduino.cc/index.php?topic=546956.0

Ci-dessous le code sur le recepteur NANO :
// ,
// Linky-TIC.ino

#include <ELECHOUSE_CC1101_RCS_DRV.h>

//#include <SoftwareSerial.h>
//const byte TELEINFO_PIN = 8; //Connexion TELEINFO
const byte TX_PIN = 6; //emetteur 433 MHZ
const unsigned long TIME = 488;
const unsigned long TWOTIME = TIME2;
#define SEND_HIGH() digitalWrite(TX_PIN, HIGH)
#define SEND_LOW() digitalWrite(TX_PIN, LOW)
byte OregonMessageBuffer[13]; // OWL180
//
********************************************************
char HHPHC;
int ISOUSC; // intensité souscrite
int IINST; // intensité instantanée en A
int IMAX; // intensité maxi en A
int PAPP; // puissance apparente en VA
int calt;
int calt2;
unsigned long HCHC; // compteur Heures Creuses en W
unsigned long HCHP; // compteur Heures Pleines en W
String PTEC; // Régime actuel : HPJB, HCJB, HPJW, HCJW, HPJR, HCJR
String ADCO; // adresse compteur
String OPTARIF; // option tarifaire
String MOTDETAT; // status word
String pgmVersion; // TeleInfo program version
boolean ethernetIsOK;
boolean teleInfoReceived;
char chksum(char *buff, uint8_t len);
char message;
boolean handleBuffer(char bufferTeleinfo, int sequenceNumnber);
char version[17] = “TeleInfo V 1.00”;
unsigned long PAPP_arrondi; // PAPP
497/500/16 arrondi
unsigned long chksum_CM180;
unsigned long long HCP;

inline void sendZero(void) {
SEND_LOW();
delayMicroseconds(TIME);
SEND_HIGH();
delayMicroseconds(TIME);
}

inline void sendOne(void) {
SEND_HIGH();
delayMicroseconds(TIME);
SEND_LOW();
delayMicroseconds(TIME);
}

void sendData(byte data, byte size) {
for(byte i = 0; i < size; ++i) {
(bitRead(data
, 0)) ? sendOne() : sendZero();*
_ (bitRead(data*, 1)) ? sendOne() : sendZero();_
_ (bitRead(data, 2)) ? sendOne() : sendZero();
(bitRead(data, 3)) ? sendOne() : sendZero();
(bitRead(data, 4)) ? sendOne() : sendZero();
(bitRead(data, 5)) ? sendOne() : sendZero();
(bitRead(data, 6)) ? sendOne() : sendZero();
(bitRead(data, 7)) ? sendOne() : sendZero();
}
}
inline void sendPreamble(void) {
for(byte i = 0; i < 10; ++i) //OWL CM180
{
sendOne();
}
}
inline void sendPostamble(void) {
for(byte i = 0; i <4 ; ++i) //OWL CM180
{
sendZero() ;
}_

SEND_LOW();
_ delayMicroseconds(TIME);
}
void sendOregon(byte *data, byte size) {
sendPreamble();
sendData(data,size);
sendPostamble();
}
void encodeur_OWL_CM180() {
OregonMessageBuffer[0] =0x62;
OregonMessageBuffer[1] =0x80;
//OregonMessageBuffer[2] =0x7D;
PAPP=int(PAPP0.9941);

* calt=PAPP % 256;
calt=calt-(PAPP % 16);
OregonMessageBuffer[3] =calt,HEX;
calt=int(PAPP/256);
calt=calt % 256;
OregonMessageBuffer[4] =calt,HEX;
calt=int(PAPP/256/256);
OregonMessageBuffer[5] =calt,HEX;
//HCP=(HCHC223666LL)/1000LL;

* OregonMessageBuffer[6] =(HCP>>4)&0xFF;
OregonMessageBuffer[7] =(HCP>>12)&0xFF; // ST sert total conso*

* OregonMessageBuffer[8] =(HCP>>20)&0xFF; // UV sert total conso*
* OregonMessageBuffer[9] =(HCP>>28)&0xFF;
OregonMessageBuffer[10] =(HCP>>36)&0xFF;_

chksum_CM180= 0;
_ for (byte i=0; i<11; i++) {
chksum_CM180 += long(OregonMessageBuffer&0x0F) + long(OregonMessageBuffer>>4);
}_

chksum_CM180 -=2;
OregonMessageBuffer[11] =((chksum_CM180&0x0F)<<4) + ((chksum_CM180>>8)&0x0F);
calt2=int(chksum_CM180 % 16)16+int((chksum_CM180)/16);
_ OregonMessageBuffer[12] =calt2,HEX;

* //OregonMessageBuffer[12] =(int(chksum_CM180>>4)&0x0F); //C = 0 mais inutilisé*
}
//******************************************************************
void setup() {
Serial.begin(1200);_

//Serial.begin(1200,SERIAL_7E1);

ELECHOUSE_cc1101.setMHZ(433.92);

ELECHOUSE_cc1101.Init(PA10);
ELECHOUSE_cc1101.SetRx();
pinMode(TX_PIN, OUTPUT);

SEND_LOW();

_}

String info="";
String libelle;
unsigned long millis();
unsigned long tempo;
void loop() {
if (Serial.available()>0) {

message=Serial.read()& 0x6F;

Serial.print(message);_

* if (message==0x0A) {*
* if (info.substring(1,5)==“PAPP”) {*
* libelle=info.substring(6,12);*
* PAPP=libelle.toInt();*
* Serial.print(“PAPP=”); *
* Serial.println(PAPP); *
* }*
* if (info.substring(1,5)==“HCHC”) {*
* libelle=info.substring(6,16);*
* HCHC=libelle.toInt();*
* Serial.print(“HCHC=”); *
* Serial.println(HCHC); *
* }*
* if (info.substring(1,5)==“HCHP”) {*
* libelle=info.substring(6,16);*
* HCHP=libelle.toInt();*
* Serial.print(“HCHP=”); *
* Serial.println(HCHP); *
* }*
* if (info.substring(1,5)==“BASE”) {*
* libelle=info.substring(6,16);*
* HCHC=libelle.toInt();*
* Serial.print(“HCHC=”); *
* Serial.println(HCHC); *
* }*
* info="";*
* }*
* info=info+message;*
* tempo=millis();*
* tempo=int(tempo/1000) % 55;*
* delay(5);*
* if (tempo < 10) {*
* OregonMessageBuffer[2] =0x6D;*
_ HCP=(HCHC223666LL)/1000LL;_
encodeur_OWL_CM180();
_ sendOregon(OregonMessageBuffer, sizeof(OregonMessageBuffer));
delay(5000);
OregonMessageBuffer[2] =0x6C;
HCP=(HCHP223666LL)/1000LL;

* encodeur_OWL_CM180();*
* sendOregon(OregonMessageBuffer, sizeof(OregonMessageBuffer));
delay(5000);
}
}
}*_

J’ai une photo du montage mais je ne sais pas comment l’envoyer…

tu peux le métre entre entre balise stp ;(

si tu sais pas comment faire c'est par ici

ou la

aussi lit sa sa aideras pour test post (ou eviter que hbachetti te donne une fesser XD)

Topic: Informations nécessaires

Et un petit schéma du montage parce que le couplage avec un optocoupleur peut réserver des surprises comme, par exemple, une inversion du signal. Ce qui rendrait la liaison série incompréhensible.

Je joins une photo du montage.

Je tiens à préciser que le programme normalemùent fonctionne bien mais c’est au niveau de la traduction du message que ça pêche…
Je ne peux pas compiler et transférer ce programme sur l’Arduino Nano si je ne mets pas en ATMega328P et non ATMega328P (Old BootLoader).
J’ai essayé avec la version IDE de 1.8.5 à 1.8.11…
Est ce à ce niveau ?
Je tiens à préciser aussi que la résistance côté Nano est de 1K et côté Uno 220Ohms…
A bientôt !

aussi lit sa sa aideras pour test post (ou eviter que hbachetti te donne une fesser XD)

Je sens que ça ne va pas tarder ...

Quand un schéma est demandé il s'agit de ça :

|500x130

Il ne s'agit pas de fournir une photo floue où l'on ne distingue presque rien.

Et les balises code bien sûr : https://forum.arduino.cc/index.php?topic=315372.0

C'est pas très clair ta description du (ou des) problème(s). Au début tu dis:

Lamusicadomi: J'envoie cette trame d'un UNO vers un Nano mais le message reçu ne correspond pas au message envoyé

ce qui fait penser soit à un problème de code, soit à un problème de câblage.

Et maintenant tu dis ça:

Lamusicadomi: Je ne peux pas compiler et transférer ce programme sur l'Arduino Nano si je ne mets pas en ATMega328P et non ATMega328P (Old BootLoader).

C'est peut-être que ton Nano n'a pas un ancien bootloader tout simplement.

Et tu ferais bien de mettre rapidement ton code entre balise comme demandé parce que sinon il va passer à la benne. En plus cela le rend illisible car certains caractères sont modifiés ou supprimés.

Merci pour tout vos bons conseils moralistes. Je vais me débrouiller tout seul au regard et à la lecture de vos réflexions un peu trop autoritaires et hautaines... Tout le monde n'a pas votre science infuse des Arduinos Messieurs les "professionnels" Aurevoir !

Bonjour Lamusicadomi

Pourquoi :

message=Serial.read()& 0x6F; ?

message n'est plus codé en ASCII Et cela explique vos résultats.

Cordialement, bidouilleelec