Vieille librairie EasyTransferI2C semble incompatible avec ESP8266

Bonjour,

Dans la continuité de mes posts précédents, il me reste un obstacle de taille : la vielle librairie EasyTransferI2C qui ne semble pas être compatible avec l'ESP8266.
Elle est pourtant bien pratique puisqu'elle permet de faire voyager via l'I2C des données structurées.
Par exemple :

struct ST_TFA { // Réception / Émission 
  char Loc[10];
  int Canal ;
  float Temp;
  byte Hum;
};
ST_TFA mydata ;

void setup() {
//...
  Wire.begin(4); // slave nr 4 pour réception I2C
  ET.begin(details(mydata), &Wire);
  Wire.onReceive(receive);
//...
}
void loop(){
//...
  if (ET.receiveData()) {// réception i2c
   Serial.print(mydata.Canal);
  //..
  }
}

Connaissez-vous une librairie compatible ESP pouvant faire cela ?

Je l'utilise abondamment entre un µC qui collecte les températures, 2 autres qui les affichent et un dernier qui les envoie sur le NET

Merci !

Bonsoir @Renard32

il y a (ou avait ) semble-ti un problème avec la librairie wire en mode esclave pour ESP8266

le mode esclave n'est pas évoqué dans la doc :
https://arduino-esp8266.readthedocs.io/en/latest/libraries.html#i2c-wire-library

ici il était question en 2018 d'un patch
https://github.com/suculent/esp8266-I2C-slave

Les choses se sont peut être améliorées depuis....

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.