Liaison ESP8266 et Sinric pro

Bonjour, cela fait plus d'une semaine, j'ai un problème avec mon projet Arduino. J'ai brancher mon relais puis, tester la LED elle s'allume/ s'éteint 1secondes par secondes pour tester le relais ça fonctionne. Ma carte Arduino est bien alimenter. J'utilise le site web Sinric pro pour piloter mon relais. Maintenant je vois mon switch en ligne sur l'application mais il ne change pas d'état sur la carte Arduino. j'ai aussi vérifier plusieurs fois l'identifiant app key et secret pour Sinric pro ainsi que mon wifi. Auriez vous une solution pour m'aider s'ils vous plait merci.

Voici mon code :

 #include <Arduino.h> 
#if defined(ESP8266)
  #include <ESP8266WiFi.h>
#elif defined(ESP32) || defined(ARDUINO_ARCH_RP2040)
  #include <WiFi.h>
#endif

#include "SinricPro.h"
#include "SinricProSwitch.h"

#define WIFI_SSID         "xxxx"  // Change WIFI_SSID to your WiFi Name. 
#define WIFI_PASS         "xxx"  // Change WIFI_PASS to your WiFi password. 
#define APP_KEY           "xxxx"  // Paste App Key from above  
#define APP_SECRET        "xxxx"  // Paste App Secret from above  
#define SWITCH_ID_1       "xxxx"  // Paste Device Id from  above 

#if defined(ESP8266)

  #define RELAYPIN_1        3

#endif

#define BAUD_RATE         57600                // Change baudrate to your need

bool onPowerState1(const String &deviceId, bool &state) {
 Serial.printf("Device 1 turned %s", state?"on":"off");
 digitalWrite(RELAYPIN_1, state ? HIGH:LOW);
 
 /* If your relay is activated with low signal, change the above to below code
  digitalWrite(RELAYPIN_1, state ? LOW : HIGH); */

 return true; // request handled properly
}



// setup function for WiFi connection
void setupWiFi() {
  Serial.printf("\r\n[Wifi]: Connecting");

  #if defined(ESP8266)
    WiFi.setSleepMode(WIFI_NONE_SLEEP); 
    WiFi.setAutoReconnect(true);
  #elif defined(ESP32)
    WiFi.setSleep(false); 
    WiFi.setAutoReconnect(true);
  #endif

  WiFi.begin(WIFI_SSID, WIFI_PASS);

  while (WiFi.status() != WL_CONNECTED) {
    Serial.printf(".");
    delay(250);
  }

  Serial.printf("connected!\r\n[WiFi]: IP-Address is %s\r\n", WiFi.localIP().toString().c_str());
}

// setup function for SinricPro
void setupSinricPro() {
  // add devices and callbacks to SinricPro
  pinMode(RELAYPIN_1, OUTPUT);
    
  SinricProSwitch& mySwitch1 = SinricPro[SWITCH_ID_1];
  mySwitch1.onPowerState(onPowerState1);
    
  // setup SinricPro
  SinricPro.onConnected([](){ Serial.printf("Connected to SinricPro\r\n"); }); 
  SinricPro.onDisconnected([](){ Serial.printf("Disconnected from SinricPro\r\n"); });
   
  SinricPro.begin(APP_KEY, APP_SECRET);
}

// main setup function
void setup() {
  Serial.begin(BAUD_RATE); Serial.printf("\r\n\r\n");
  setupWiFi();
  setupSinricPro();
}

void loop() {
  SinricPro.handle();
}

:warning:
Post mis dans la mauvaise section, on parle anglais dans les forums généraux. déplacé vers le forum francophone.

Merci de prendre en compte les recommandations listées dans Les bonnes pratiques du Forum Francophone