pilotage clim "exit status 1 'HEAT17ON' was not declared in this scope"

bonjour a tous,
je suis nouveau sur le forum passionné d’informatique, reseaux et domotique
après plusieurs mois de recherche je me suis lancer a l’aide d’un arduino mega et shield w5100 du contrôle par infrarouge de ma pompe a chaleur type clim Toshiba.
j’ai trouver un code pour contrôler ma clim par une page web
j’ai récupérer les code infrarouge de ma clim avec l’arduino que j’ai intégrés au code
j’ai avance pas a pas mais la je bloque
je cherche une âme pour m’aider
j’ai un erreur qui apparait et je ne trouve pas

exit status 1’HEAT17ON’ was not declared in this scope
merci

[code]
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // mac address
byte ip[] = { 192, 168, 0, 60 }; // ip arduino internet in
byte gateway[] = { 192, 168, 0, 254 }; // internet access via router
byte subnet[] = { 255, 255, 255, 0 }; //subnet mask
EthernetServer server(7500); //server port

IRsend irsend;
int khz = 38; //NB Change this default value as neccessary to the correct modulation frequency



                 // AC OFF
unsigned OFF[] = {4360
                  };
                  


                  // ON HEAT 17°C FAN-auto - AC
unsigned HEAT17[] = {4364,
                  };

                 // ON COOL 25 FAN MAX PUISSANCE MAX
unsigned COOL25[] = {4388, 08, 524, 
                 };

                 // ON cool 22°C FAN-auto - AC
unsigned COOL22[] = {4388, 
                  };
 
                  // AC DRY
unsigned DRY[] = {4360, 
                  };  
                  #define DHTPIN 2 // PIN data of DHT22
                  #define DHTTYPE DHT22 // DHT 22 (AM2302)
                  DHT dht(DHTPIN, DHTTYPE);

                  int irPin = 9; // pin IR led
                  String readString; //string
                  boolean COOLON = false; // flag status Cooling
                  boolean DRYON = false; // flag status Drying
                  void setup() {
                  Ethernet.begin(mac, ip, gateway, subnet);
                 dht.begin();
                 pinMode(irPin, OUTPUT);
                 Serial.begin(9600);
                 }

                 void loop() {

                 float t = dht.readTemperature(); // Value of Temp
                 float h = dht.readHumidity(); // Value of Humidity

                 /*inizio client*/
                 EthernetClient client = server.available();
              if (client) {
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        readString.concat(c); // Je mémorise tous les caractères de la chaîne
        //if HTTP request has ended
        if (c == '\n' && currentLineIsBlank) {
          Serial.print(readString);
              if (readString.indexOf("L=0") > 0) {
            if (HEAT17ON || HEAT20ON || COOL25ON || COOL22ON || DRYON) { // if is ON, switch it OFF
              //Serial.println("AC -> OFF");
              irsend.sendRaw(OFF, sizeof(OFF) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = false;
              DRYON = false;
           }
          }
          else if (readString.indexOf("L=1") > 0) { // lecture de la valeur si l'AC doit s'allumer
            if (!HEAT17ON) { //si elle n'est pas allumée.
              //Serial.println("HEAT ON");
              irsend.sendRaw(HEAT17, sizeof(HEAT17) / sizeof(int), khz);
              HEAT17ON = true;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = false;
              DRYON    = false;
            }
          }
          else if (readString.indexOf("L=2") > 0) {
            if (!HEAT20ON) { //si elle est allumée.
              //Serial.println("HEAT20 ON");
              irsend.sendRaw(HEAT20, sizeof(HEAT20) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = true;
              COOL25ON = false;
              COOL22ON = false;
              DRYON    = false;
            }
          }
           else if (readString.indexOf("L=3") > 0) {
            if (!COOL25ON) { //si elle est allumée.
              //Serial.println("COOL25 ON");
              irsend.sendRaw(COOL25, sizeof(COOL25) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = true;
              COOL22ON = false;
              DRYON    = false;
            }
          }
           else if (readString.indexOf("L=4") > 0) {
            if (!COOL22ON) { //si elle est allumée.
              //Serial.println("COOL22 ON");
              irsend.sendRaw(COOL22, sizeof(COOL22) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = true;
              DRYON   = false;
            }
          }
            else if (readString.indexOf("L=5") > 0) {
            if (!DRYON) { //si elle est allumée.
              //Serial.println("DRY ON");
              irsend.sendRaw(DRYON, sizeof(DRYON) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = false;
              DRYON     = true;
            }
          }
              
          // HTML PAGE CONSTRUCTION
          client.println("HTTP/1.1 200 OK.....");
          client.println("Content-Type: text/html");
          client.println();
          // initiation de la page (à supprimer si j'utilise ajax)
          client.print("<html><head><title>toshiba daisekai</title><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' ></head><body>");
          //commence le corps
          client.println("<div style='width:960px; height:1136px;'>"); //risoluzione per nokia 5800 640x360, iPhone4 960x640 pixel, iPhone5 1136x640
          client.println("<h1>CONTROLE CLIMATISATION</h1><hr />");
          //Écrivez sur le navigateur la valeur de la thermistance
          client.println("<p>TEMPERATURE = ");
          client.print(t);
          client.println(" *C 
</p>");

          // Ecrire sur le navigateur la valeur de la photoresistance
          client.println("<p>HUMIDITY = ");
          client.print(h);
          client.println(" % 
</p>");

          // lien vers la page de mise à jour et les valeurs
          client.print("<h2>Refresh: <a href=''>CHECK</a></h2><hr />");
          client.println("<h1>AC CONTROL</h1>");
          //scrivo il AC status
          client.print("<font size='5'>Status: ");
               if (HEAT17ON) {
            client.println("<span style='color:green; font-weight:bold;'>HEAT17</span></font>");
          }
          else if (HEAT20ON) {
            client.println("<span style='color:green; font-weight:bold;'>HEAT20</span></font>");
          }  
          else if (COOL25ON) {
            client.println("<span style='color:green; font-weight:bold;'>COOL25</span></font>");
          }  
           else if (COOL22ON) {
            client.println("<span style='color:green; font-weight:bold;'>COOL22</span></font>");
          }  
          else if (DRYON) {
            client.println("<span style='color:green; font-weight:bold;'>DRY</span></font>");
          }  
          else {
            client.println("<span style='color:grey; font-weight:bold;'>OFF</span></font>");
          }
          client.print("<h2><a href='/?L=0'> OFF </a> | <a href='/?L=1'> HEAT17 </a> | <a href='/?L=2'> HEAT20 </a> |<a href='/?L=3'> COOL25 </a> | <a href='/?L=4'> COOL22 </a> |<a href='/?L=5'> DRY </a></h2>");

          //signature ;)
          client.println("<hr />");
          client.print("<h4>TOSHIBA DAISEKAY</h4>");
          client.println("<hr />");

          // fermer la div
          client.println("</div>");
          // Fermer la page à supprimer si j'utilise ajax
          client.println("</body></html>");

          // Je nettoie la chaîne pour la prochaine lecture
          readString = "";
          // arrête le client
          client.stop();

        } //if c == /n
      } // if client available
    } // while client connesso
  } // FINE if client
} // fine loop

[/code]

bonjour, si tu ne mets pas tout le code, difficile de répondre.
comment est déclaré HEAT20ON ?

bonjour, oui j’ai en ai effacer un morceau en enlevant tout les code ir
merci

[code]
/* *** *** ***
Mega -  ok       18.758/253.952 - 2.090/8.192
Leonardo - ok    21.498/28.672 - 2.059/2.560
UNO - no ok      18.800/32.256 - 2.090/2.048
*** *** *** */

#include <String.h>
#include <SPI.h>
#include <Ethernet.h>
#include "IRremote.h"
#include <DHT.h>

/*
controllare un condizionatore via web
con sensori di temperatura e umidità
ARDUINO UNO - limitato
Mega o Leonardo
ETHERNET SHIELD
DHT22, IR led
*/

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // mac address
byte ip[] = { 192, 168, 0, 60 }; // ip arduino internet in
byte gateway[] = { 192, 168, 0, 254 }; // internet access via router
byte subnet[] = { 255, 255, 255, 0 }; //subnet mask
EthernetServer server(7500); //server port

IRsend irsend;
int khz = 38; //NB Change this default value as neccessary to the correct modulation frequency



                 // AC OFF
unsigned OFF[] = {4360,  
                  };
                  


                  // ON HEAT 17°C FAN-auto - AC
unsigned HEAT17[] = {4364,  
                  };

                  // ON HEAT 20°C FAN-auto - AC
unsigned HEAT20[] = {4364, 
                  };

                 // ON COOL 25 FAN MAX PUISSANCE MAX
unsigned COOL25[] = {4388, 
                 };

                 // ON cool 22°C FAN-auto - AC
unsigned COOL22[] = {4388,
                  };
 
                  // AC DRY
unsigned DRY[] = {4360, 
                  };  

                  #define DHTPIN 2 // PIN data of DHT22
                  #define DHTTYPE DHT22 // DHT 22 (AM2302)
                  DHT dht(DHTPIN, DHTTYPE);

                  int irPin = 9; // pin IR led
                  String readString; //string
                  boolean COOLON = false; // flag status Cooling
                  boolean DRYON = false; // flag status Drying


                  void setup() {
                  Ethernet.begin(mac, ip, gateway, subnet);
                 dht.begin();
                 pinMode(irPin, OUTPUT);
                 Serial.begin(9600);
                 }

                 void loop() {

                 float t = dht.readTemperature(); // Value of Temp
                 float h = dht.readHumidity(); // Value of Humidity

                 /*inizio client*/
                 EthernetClient client = server.available();
              if (client) {
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        readString.concat(c); // Je mémorise tous les caractères de la chaîne
        //if HTTP request has ended
        if (c == '\n' && currentLineIsBlank) {
          Serial.print(readString);
              if (readString.indexOf("L=0") > 0) {
            if (HEAT17ON || HEAT20ON || COOL25ON || COOL22ON || DRYON) { // if is ON, switch it OFF
              //Serial.println("AC -> OFF");
              irsend.sendRaw(OFF, sizeof(OFF) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = false;
              DRYON = false;
           }
          }
          else if (readString.indexOf("L=1") > 0) { // lecture de la valeur si l'AC doit s'allumer
            if (!HEAT17ON) { //si elle n'est pas allumée.
              //Serial.println("HEAT ON");
              irsend.sendRaw(HEAT17, sizeof(HEAT17) / sizeof(int), khz);
              HEAT17ON = true;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = false;
              DRYON    = false;
            }
          }
          else if (readString.indexOf("L=2") > 0) {
            if (!HEAT20ON) { //si elle est allumée.
              //Serial.println("HEAT20 ON");
              irsend.sendRaw(HEAT20, sizeof(HEAT20) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = true;
              COOL25ON = false;
              COOL22ON = false;
              DRYON    = false;
            }
          }
           else if (readString.indexOf("L=3") > 0) {
            if (!COOL25ON) { //si elle est allumée.
              //Serial.println("COOL25 ON");
              irsend.sendRaw(COOL25, sizeof(COOL25) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = true;
              COOL22ON = false;
              DRYON    = false;
            }
          }
           else if (readString.indexOf("L=4") > 0) {
            if (!COOL22ON) { //si elle est allumée.
              //Serial.println("COOL22 ON");
              irsend.sendRaw(COOL22, sizeof(COOL22) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = true;
              DRYON   = false;
            }
          }
            else if (readString.indexOf("L=5") > 0) {
            if (!DRYON) { //si elle est allumée.
              //Serial.println("DRY ON");
              irsend.sendRaw(DRYON, sizeof(DRYON) / sizeof(int), khz);
              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = false;
              DRYON     = true;
            }
          }
              
          // HTML PAGE CONSTRUCTION
          client.println("HTTP/1.1 200 OK.....");
          client.println("Content-Type: text/html");
          client.println();
          // initiation de la page (à supprimer si j'utilise ajax)
          client.print("<html><head><title>toshiba daisekai</title><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' ></head><body>");
          //commence le corps
          client.println("<div style='width:960px; height:1136px;'>"); //risoluzione per nokia 5800 640x360, iPhone4 960x640 pixel, iPhone5 1136x640
          client.println("<h1>CONTROLE CLIMATISATION</h1><hr />");
          //Écrivez sur le navigateur la valeur de la thermistance
          client.println("<p>TEMPERATURE = ");
          client.print(t);
          client.println(" *C 
</p>");

          // Ecrire sur le navigateur la valeur de la photoresistance
          client.println("<p>HUMIDITY = ");
          client.print(h);
          client.println(" % 
</p>");

          // lien vers la page de mise à jour et les valeurs
          client.print("<h2>Refresh: <a href=''>CHECK</a></h2><hr />");
          client.println("<h1>AC CONTROL</h1>");
          //scrivo il AC status
          client.print("<font size='5'>Status: ");
               if (HEAT17ON) {
            client.println("<span style='color:green; font-weight:bold;'>HEAT17</span></font>");
          }
          else if (HEAT20ON) {
            client.println("<span style='color:green; font-weight:bold;'>HEAT20</span></font>");
          }  
          else if (COOL25ON) {
            client.println("<span style='color:green; font-weight:bold;'>COOL25</span></font>");
          }  
           else if (COOL22ON) {
            client.println("<span style='color:green; font-weight:bold;'>COOL22</span></font>");
          }  
          else if (DRYON) {
            client.println("<span style='color:green; font-weight:bold;'>DRY</span></font>");
          }  
          else {
            client.println("<span style='color:grey; font-weight:bold;'>OFF</span></font>");
          }
          client.print("<h2><a href='/?L=0'> OFF </a> | <a href='/?L=1'> HEAT17 </a> | <a href='/?L=2'> HEAT20 </a> |<a href='/?L=3'> COOL25 </a> | <a href='/?L=4'> COOL22 </a> |<a href='/?L=5'> DRY </a></h2>");

          //signature ;)
          client.println("<hr />");
          client.print("<h4>TOSHIBA DAISEKAY</h4>");
          client.println("<hr />");

          // fermer la div
          client.println("</div>");
          // Fermer la page à supprimer si j'utilise ajax
          client.println("</body></html>");

          // Je nettoie la chaîne pour la prochaine lecture
          readString = "";
          // arrête le client
          client.stop();

        } //if c == /n
      } // if client available
    } // while client connesso
  } // FINE if client

[/code]

le code fonctionnait très bien avec trois commande, j'ai voulu le faire évoluer vers 5 fonctions et la plus rien ne marche
je tiens a préciser que je suis débutant j'ai déjà fait quelle petit montage mais la j'ai vu un grand
merci pour votre aide

salut

il me semble (j’ai lu vite) que tu déclares deux variables d’état de ton appareil :

                  boolean COOLON = false; // flag status Cooling
                  boolean DRYON = false; // flag status Drying

mais que tu en utilises ensuite bien plus :

              HEAT17ON = false;
              HEAT20ON = false;
              COOL25ON = false;
              COOL22ON = false;
              DRYON = false;

forcément si elles ne sont pas déclarées, le compilateur ne sait pas ce que c’est…

Merci pour de ton conseil
je vais essayer
je te tiens au courant

je viens de modifier le code et depuis j'ai de nouvelle erreur

C:\Program Files (x86)\Arduino\libraries\Server_AC_final\Server_AC_final.ino: In function 'void loop()':

Server_AC_final:247: error: no matching function for call to 'IRsend::sendRaw(boolean&, unsigned int, int&)'

irsend.sendRaw(DRYON, sizeof(DRYON) / sizeof(int), khz);

^

C:\Program Files (x86)\Arduino\libraries\Server_AC_final\Server_AC_final.ino:247:69: note: candidate is:

In file included from C:\Program Files (x86)\Arduino\libraries\Server_AC_final\Server_AC_final.ino:10:0:

C:\Users\cedd\Documents\Arduino\libraries\IRremote/IRremote.h:95:8: note: void IRsend::sendRaw(unsigned int*, int, int)

void sendRaw(unsigned int buf, int len, int hz);

^

C:\Users\cedd\Documents\Arduino\libraries\IRremote/IRremote.h:95:8: note: no known conversion for argument 1 from 'boolean {aka bool}' to 'unsigned int*'

Server_AC_final:280: error: expected '(' before 'HEAT17ON'

if HEAT17ON {

^

Server_AC_final:283: error: expected '}' before 'else'

else if (HEAT20ON) {

^

C:\Program Files (x86)\Arduino\libraries\Server_AC_final\Server_AC_final.ino: At global scope:

Server_AC_final:319: error: expected declaration before '}' token

} // fine loop

^

Plusieurs bibliothèque trouvées pour "IRremote.h"
Utilisé : C:\Users\cedd\Documents\Arduino\libraries\IRremote
Non utilisé : C:\Users\cedd\Documents\Arduino\libraries\Arduino-IRremote-master
Non utilisé : C:\Program Files (x86)\Arduino\libraries\IRremote
Utilisation de la bibliothèque SPI version 1.0 dans le dossier: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI
Utilisation de la bibliothèque Ethernet version 1.1.2 dans le dossier: C:\Program Files (x86)\Arduino\libraries\Ethernet
Utilisation de la bibliothèque IRremote version 2.2.3 dans le dossier: C:\Users\cedd\Documents\Arduino\libraries\IRremote
Utilisation de la bibliothèque DHT prise dans le dossier : C:\Program Files (x86)\Arduino\libraries\DHT (legacy)
exit status 1
no matching function for call to 'IRsend::sendRaw(boolean&, unsigned int, int&)'

je viens de contrôler tout le code.
j'avais l'erreur juste devant le nez.
tout fonctionne bien
merci a tous et longue vie a ce forum