# Programmer Arduino Uno et esp8266

**URL:** <https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254>\
**Category:** Français\
**Created:** [January 7, 2023, 1:30am UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254 "2023-01-07T01:30:07Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![terwal](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/terwal/32/1098571_2.png) [@terwal](https://forum.arduino.cc/u/terwal)\
**Post date:** [January 10, 2023, 1:29pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/21 "2023-01-10T13:29:50Z")

</div>

> [@ludrickmel](#):
>
> En faite tout les tuto que je vois ne sont pas en commande AT, d’accord ben je vais chercher encore

tu as regardé du coté de la documentation des [ESP](https://docs.espressif.com/projects/esp-at/en/release-v2.2.0.0_esp8266/AT_Command_Set/index.html)?

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 1:48pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/22 "2023-01-10T13:48:33Z")

</div>

je vais essayer de modifier cela alors merci

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 1:49pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/23 "2023-01-10T13:49:40Z")

</div>

j'ai testé du coup cela par rapport au forum et j'ai une erreur quand même

```cpp
#include <SoftwareSerial.h>
#define DEBUG true
String host ="http://x.x.x.x\,80";
//String host ="192.168.1.14\",8082";
//String NomduReseauWifi = "ff"; // nom du reseau
//String MotDePasse ="ggg";//mo de passe wifi

SoftwareSerial esp8266(10,11); // connexion série; 3 TX de l'esp;2 RX de l'esp

                             
void setup()
{
  Serial.begin(9600); //vitesse de transmition moniteur série
  esp8266.begin(9600); // vitesse de transmition esp
  
  sendData("AT\r\n",2000,DEBUG); // reset module
 
  String Positions;
  Positions="GET post-sensor-data.php?distance=10\r\n";
 //Positions+="HTTP/1.0\r\n";
 //Positions+="";
 //Positions+="\r\n";
  
  //sendData("AT+CWJAP=\""+ NomduReseauWifi + "\",\"" + MotDePasse +"\"\r\n",3000,DEBUG);
  sendData("AT+CWJAP=\"x\",\"pp\"",3000,DEBUG);
  
  sendData("AT+CIFSR\r\n",3000,DEBUG);
  sendData("AT+CIPMUX=1\r\n",3000,DEBUG);
  sendData("AT+CIPSTART=0,\"TCP\",\""+host+"\r\n",5000,DEBUG);//connexion au serveur
  sendData("AT+CIPSEND=0,"+String(Positions.length())+"\r\n",3000,DEBUG);//envoie de la longeur des données à envoyer
  sendData(String(Positions)+"\r\n",800,DEBUG);//envoie des données
  sendData("AT+CIPCLOSE\r\n",5000,DEBUG);
}
 
void loop()
{
}
  
String sendData(String command, const int timeout, boolean debug)
{
 
   String response = "";
    
    esp8266.print(command); // send the read character to the esp8266
    
    long int time = millis();
    
    while( (time+timeout) > millis())
    {
      while(esp8266.available())
      {
        
        // The esp has data so display its output to the serial window 
        char c = esp8266.read(); // read the next character.
        response+=c;
      }  
    }
    
    if(debug)
    {
      Serial.print("ESP8266 => "+response);
    }
      return response;
}

```

---

<div class="post-metadata">

**Author:** ![J-M-L](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/j-m-l/32/766245_2.png) [@J-M-L](https://forum.arduino.cc/u/J-M-L)\
**Post date:** [January 10, 2023, 2:02pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/24 "2023-01-10T14:02:04Z")

</div>

> [@ludrickmel](#):
>
> ```arduino
> while( (time+timeout) > millis())
> 
> ```

Ce n'est pas un souci pour le moment mais il faut toujours procéder par soustraction avec le temps

```arduino
    while (millis()-time < timeout)

```

---

<div class="post-metadata">

**Author:** ![terwal](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/terwal/32/1098571_2.png) [@terwal](https://forum.arduino.cc/u/terwal)\
**Post date:** [January 10, 2023, 2:07pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/25 "2023-01-10T14:07:44Z")

</div>

Quel est l'erreur que tu récupère et surtout sur quel commande?

Ton code ne fait rien ou à moitié, tu envois une taille d'un buffer que tu va envoyer, mais tu envois rien, c'est normal?

Tu as essayé la commande "AT+HTTPCLIENT" ?

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 4:19pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/26 "2023-01-10T16:19:47Z")

</div>

Oui j’ai mis la commande là haut mais je doit y apporter dès modification @J-M-L m’a fait remarqué que j’avais mal écris

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 4:38pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/27 "2023-01-10T16:38:09Z")

</div>

ok je modifie merci

---

<div class="post-metadata">

**Author:** ![terwal](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/terwal/32/1098571_2.png) [@terwal](https://forum.arduino.cc/u/terwal)\
**Post date:** [January 10, 2023, 4:47pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/28 "2023-01-10T16:47:03Z")

</div>

> [@ludrickmel](#):
>
> Oui j’ai mis la commande là haut mais je doit y apporter dès modification @J-M-L m’a fait remarqué que j’avais mal écris

Certes, mais ce n'est pas le code que tu propose après.  
Il est difficile de pouvoir t'aider, si le code que tu montre n'est pas chronologique et celui que tu utilise.

Donc j'en conclue que tu as réglé tout tes problèmes.

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 5:53pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/29 "2023-01-10T17:53:59Z")

</div>

du coup j'ai ca maintenant :

```cpp
 String cmd1 = "AT+HHTPCLIENT= 3\,0,\"http://x.x.x.x/post-sensor-data.php/\",\"http://x.x.x.x\",\"/post-sensor-data.php\",1,\"distance=10\"";
  //Serial.println(cmd1);
  esp8266.println(cmd1); 

```

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 6:26pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/30 "2023-01-10T18:26:18Z")

</div>

je suis toujours entrain d'essayé de le régler et je garde le même PHP mais pour l'instant ca ne fonctionne toujours pas

```cpp
#include <SoftwareSerial.h>

SoftwareSerial esp8266(10,11); 

#define SSID "box" // "SSID-WiFiname" 
#define PASS "code" // "password"
#define IP "192.x.x.x"// thingspeak.com ip

float temp; //Stores temperature value

void setup()
{
  //pinMode(A1,INPUT);
  //pinMode(8,INPUT);
  //dht.begin();
  delay(100);
  Serial.begin(9600); //or use default 115200.
  esp8266.begin(9600);
  Serial.println("AT");
  esp8266.println("AT");
  delay(3000);
  if(esp8266.find("OK")){
    connectWiFi();
  }
}

void loop()
{
  //Temperature
  //float temperature_celcius = valeur_brute * (5.0 / 1023.0 * 100.0);
  int valeur_brute = analogRead(A0);
  temp= valeur_brute * (5.0 / 1023.0 * 100.0);
  Serial.println(temp);
  delay(2000);
    update();

  }

void update(){
  String cmd = "AT+CIPSTART=\"TCP\",\"";
  cmd += IP;
  cmd += "\",80";
  Serial.println(cmd);
  esp8266.println(cmd);
  delay(2000);
  if(esp8266.find("Error")){
    return;
  }
 /* cmd = msg ;
  cmd += "&field1=";   
  cmd += temp;
  cmd += "\r\n";*/
  cmd = msg;
  cmd += "api_key=";
  cmd += apiKeyValue;
  cmd += "&sensor=";
  cmd += sensorName;
  cmd += "&location=";
  cmd += sensorLocation;
  cmd += "&distance=";
  cmd += distance ;
  cmd += "\r\n";

  String cmd1 = "AT+HHTPCLIENT=3\,0,\"http://192.x.x.x/post-sensor-data.php\",\"192.x.x.x\",\"/post-sensor-data.php\",1,\"distance=10\"";
  Serial.println(cmd1);
  esp8266.println(cmd1);  
  //Serial.print('AT+HTTPCLIENT="3,0,"http://192.x.x.x/post-sensor-data.php/","http://192.x.x.x","/post-sensor-data.php",1,"sensor=LM35"');
}

boolean connectWiFi(){
  Serial.println("AT+CWMODE=1");
  esp8266.println("AT+CWMODE=1");
  delay(2000);
  String cmd="AT+CWJAP=\"";
  cmd+=SSID;
  cmd+="\",\"";
  cmd+=PASS;
  cmd+="\"";
  Serial.println(cmd);
  esp8266.println(cmd);
  delay(5000);
  if(esp8266.find("OK")){
    Serial.println("OK");
    return true;    
  }else{
    return false;
  }
} 

```

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 6:36pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/31 "2023-01-10T18:36:45Z")

</div>

du coup je doute du PHP

---

<div class="post-metadata">

**Author:** ![J-M-L](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/j-m-l/32/766245_2.png) [@J-M-L](https://forum.arduino.cc/u/J-M-L)\
**Post date:** [January 10, 2023, 7:49pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/32 "2023-01-10T19:49:42Z")

</div>

Est-ce que le PHP se déclenche ?

---

<div class="post-metadata">

**Author:** ![J-M-L](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/j-m-l/32/766245_2.png) [@J-M-L](https://forum.arduino.cc/u/J-M-L)\
**Post date:** [January 10, 2023, 7:52pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/34 "2023-01-10T19:52:12Z")

</div>

Donc ce n’est pas le PHP c’est avant

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 7:52pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/35 "2023-01-10T19:52:47Z")

</div>

j'ai pas du tout l'impression , rien ne se passe du tout ! je me demande si c'est pas mon code PHP

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 7:53pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/36 "2023-01-10T19:53:30Z")

</div>

dans mon code série quand j'affiche pour le HTTP , j'ai ça :

 ![Capture d’écran 2023-01-10 à 20.51.14](https://europe1.discourse-cdn.com/arduino/original/4X/4/8/d/48d25f8093b1786a8546c8a30b2896933cc85f71.png)

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 7:53pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/37 "2023-01-10T19:53:57Z")

</div>

donc dans le code arduino ??

---

<div class="post-metadata">

**Author:** ![J-M-L](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/j-m-l/32/766245_2.png) [@J-M-L](https://forum.arduino.cc/u/J-M-L)\
**Post date:** [January 10, 2023, 8:09pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/38 "2023-01-10T20:09:43Z")

</div>

Il y a un H en trop au moins

AT+HHTPCLIENT=3..

L’adresse IP est sur le loop back??

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 8:17pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/39 "2023-01-10T20:17:55Z")

</div>

ah oui j'avais pas vu merci . si j'ai bien compris la question j'utilise juste le localhost(127.0.0.1) il faut que je la mette sur le loopbaack? si cela fonctionne je mettrais sur le serveur de webhost00.

---

<div class="post-metadata">

**Author:** ![J-M-L](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/j-m-l/32/766245_2.png) [@J-M-L](https://forum.arduino.cc/u/J-M-L)\
**Post date:** [January 10, 2023, 10:05pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/40 "2023-01-10T22:05:51Z")

</div>

Il faut l’adresse IP du serveur sur un réseau joignable depuis l’ESP

---

<div class="post-metadata">

**Author:** ![ludrickmel](https://avatars.discourse-cdn.com/v4/letter/l/958977/32.png) [@ludrickmel](https://forum.arduino.cc/u/ludrickmel)\
**Post date:** [January 10, 2023, 11:11pm UTC](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254/41 "2023-01-10T23:11:59Z")

</div>

j'ai pas bien compris, désolé. c'est à dire qu'il faudrais prendre l'adresse ip qui est généré par le code pour l'ESP?

[Previous page](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254.md?page=1)

[Next page](https://forum.arduino.cc/t/programmer-arduino-uno-et-esp8266/1074254.md?page=3)
