ESP8266 .. petit problème de connexion

Bonjour tout le monde !

J’espère que vous portez bien … Sans trop tarder, mon problème est le suivant : J’utilise un Arduino Uno lié à un capteur de température LM35, à ESP8266 01 et à mon PC portable, et je compte envoyer les données collectées par le capteur vers la plate-forme ThingSpeak, et pour se faire j’utilise le code ci-dessous.

// esp8266_test.ino
//
// Plot LM35 data on thingspeak.com using an Arduino and an ESP8266 WiFi 
// module.
//
// Author: Mahesh Venkitachalam
// Website: electronut.in

#include <SoftwareSerial.h>
//#include <stdlib.h>

// LED 
int ledPin = 13;
// LM35 analog input
int lm35Pin = 0;

// replace with your channel's thingspeak API key
String apiKey = "QUELQUESCHOSES";

// connect 10 to TX of Serial USB
// connect 11 to RX of serial USB
SoftwareSerial ser(10, 11); // RX, TX

// this runs once
void setup() {                
  // initialize the digital pin as an output.
  pinMode(ledPin, OUTPUT);    

  // enable debug serial
  Serial.begin(9600); 
  // enable software serial
  ser.begin(9600);
  
  // reset ESP8266
  ser.println("AT+RST");
}


// the loop 
void loop() {
  
  // blink LED on board
  digitalWrite(ledPin, HIGH);   
  delay(200);               
  digitalWrite(ledPin, LOW);

  // read the value from LM35.
  // read 10 values for averaging.
  int val = 0;
  for(int i = 0; i < 10; i++) {
      val += analogRead(lm35Pin);   
      delay(500);
  }

  // convert to temp:
  // temp value is in 0-1023 range
  // LM35 outputs 10mV/degree C. ie, 1 Volt => 100 degrees C
  // So Temp = (avg_val/1023)*5 Volts * 100 degrees/Volt
  char buf[16];
  float temp = (val*500.0)/1024.0;

  // convert to string
  String strTemp = dtostrf(temp, 0, 5, buf);
  
  Serial.println(strTemp);
  
  // TCP connection
  String cmd = "AT+CIPSTART=\"TCP\",\"";
  cmd += "184.106.153.149"; // api.thingspeak.com
  cmd += "\",80";
  ser.println(cmd);
   
  if(ser.find("Error")){
    Serial.println("AT+CIPSTART error");
    return;
  }
  
  // prepare GET string
  String getStr = "GET /update?api_key=";
  getStr += apiKey;
  getStr +="&field1=";
  getStr += String(strTemp);
  getStr += "\r\n\r\n";

  // send data length
  cmd = "AT+CIPSEND=";
  cmd += String(getStr.length());
  ser.println(cmd);

  if(ser.find(">")){
    ser.print(getStr);
  }
  else{
    ser.println("AT+CIPCLOSE");
    // alert user
    Serial.println("AT+CIPCLOSE");
  }
    
  // thingspeak needs 15 sec delay between updates
  delay(16000);  
}

Quand je téléverse le code, l’ESP8266 se connecte parfaitement à mon réseau WiFi et j’obtiens une adresse IP, je peux la PINGer … bref pas de problèmes de connexion.
Or, le “upload” de mes données vers ThingSpeak ne marche pas, je n’arrive pas à les envoyer et visualiser … J’ai même essayer google.com au lieu de thingspeak mais ça n’a pas marché aussi, du coup mon problème je pense est que je ne peux pas sortir vers internet depuis l’ESP, c’est pas un problème lié juste au site thingspeak.
Un autre truc c’est que lorsque je lance un scan vers les ports de mon ESP je les trouve tous fermés … est ce que je dois ouvrir les ports 80 et 443? si oui comment ?

Si vous pouvez voir mon erreur et comment la corriger :smiley:

Merci d’avance :smiley: