sending fingerprint data to thingspeak using esp8266 module and arduino uno

HI here is the code i am using


String myAPIkey = "HPETZAC65TF1NP4B";  
#include <Adafruit_Fingerprint.h>


#include <SoftwareSerial.h>
int temp_f;  
long writingTimer = 17; 
long startTime = 0;
long waitTime = 0;
boolean relay1_st = false; 
boolean relay2_st = false; 
unsigned char check_connection=0;
unsigned char times_check=0;
boolean error;

SoftwareSerial ESP8266(4, 5);

SoftwareSerial mySerial(2, 3);

Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

void setup()  
{
  Serial.begin(9600);
  while (!Serial);  // For Yun/Leo/Micro/Zero/...
  delay(100);
  mySerial.begin(9600);
  Serial.println("\n\nAdafruit finger detect test");

  // set the data rate for the sensor serial port
  inifinger();
  wifi();
}
void loop()
{
  }
void akash(void)                     // run over and over again
{
  int ad=1;
  while(ad==1){
   int a=getFingerprintIDez();
   if (a>0)
   {
    ad=0;
    //mySerial.end();
   
    }
   }
   } 
   void inifinger()
   {
    
  finger.begin(57600);
  if (finger.verifyPassword()) {
    Serial.println("Found fingerprint sensor!");
  } else {
    Serial.println("Did not find fingerprint sensor :(");
    while (1) { delay(1); }
  }

  finger.getTemplateCount();
  Serial.print("Sensor contains "); Serial.print(finger.templateCount); Serial.println(" templates");
  Serial.println("Waiting for valid finger...");
  akash();
    
    }
   uint8_t getFingerprintID() {
  uint8_t p = finger.getImage();
  switch (p) {
    case FINGERPRINT_OK:
      Serial.println("Image taken");
      break;
    case FINGERPRINT_NOFINGER:
      Serial.println("No finger detected");
      return p;
    case FINGERPRINT_PACKETRECIEVEERR:
      Serial.println("Communication error");
      return p;
    case FINGERPRINT_IMAGEFAIL:
      Serial.println("Imaging error");
      return p;
    default:
      Serial.println("Unknown error");
      return p;
  }

  // OK success!

  p = finger.image2Tz();
  switch (p) {
    case FINGERPRINT_OK:
      Serial.println("Image converted");
      break;
    case FINGERPRINT_IMAGEMESS:
      Serial.println("Image too messy");
      return p;
    case FINGERPRINT_PACKETRECIEVEERR:
      Serial.println("Communication error");
      return p;
    case FINGERPRINT_FEATUREFAIL:
      Serial.println("Could not find fingerprint features");
      return p;
    case FINGERPRINT_INVALIDIMAGE:
      Serial.println("Could not find fingerprint features");
      return p;
    default:
      Serial.println("Unknown error");
      return p;
  }
  
  // OK converted!
  p = finger.fingerFastSearch();
  if (p == FINGERPRINT_OK) {
    Serial.println("Found a print match!");
  } else if (p == FINGERPRINT_PACKETRECIEVEERR) {
    Serial.println("Communication error");
    return p;
  } else if (p == FINGERPRINT_NOTFOUND) {
    Serial.println("Did not find a match");
    return p;
  } else {
    Serial.println("Unknown error");
    return p;
  }   
  
  // found a match!
  Serial.print("Found ID #"); Serial.print(finger.fingerID); 
  Serial.print(" with confidence of "); Serial.println(finger.confidence); 

  return finger.fingerID;
}

// returns -1 if failed, otherwise returns ID #
int getFingerprintIDez() {
  uint8_t p = finger.getImage();
  if (p != FINGERPRINT_OK)  return -1;

  p = finger.image2Tz();
  if (p != FINGERPRINT_OK)  return -1;

  p = finger.fingerFastSearch();
  if (p != FINGERPRINT_OK)  return -1;
  
  // found a match!
  Serial.print("Found ID #"); Serial.print(finger.fingerID); 
  Serial.print(" with confidence of "); Serial.println(finger.confidence);
 temp_f=finger.fingerID;
  Serial.print(temp_f);
  return finger.fingerID;
  
}
void wifi(){
Serial.begin(9600); 
  ESP8266.begin(9600); 
//   dht.begin();
  startTime = millis(); 
  ESP8266.println("AT+RST");
  delay(2000);
  Serial.println("Connecting to Wifi");
   while(check_connection==0)
  {
    Serial.print(".");
  ESP8266.print("AT+CWJAP=\"akash\",\"12345678\"\r\n");
  ESP8266.setTimeout(5000);
 if(ESP8266.find("WIFI CONNECTED\r\n")==1)
 {
 Serial.println("WIFI CONNECTED");
 break;
 }
 times_check++;
 if(times_check>3) 
 {
  times_check=0;
   Serial.println("Trying to Reconnect..");
  }
  }
}
void writeThingSpeak(void)
{
  startThingSpeakCmd();
  // preparacao da string GET
  String getStr = "GET /update?api_key=";
  getStr += myAPIkey;
  getStr +="&field1=";
  getStr += String(temp_f++);
  //getStr +="&field2=";
  //getStr += String(humidity);
  getStr += "\r\n\r\n";
  GetThingspeakcmd(getStr); 
}

void startThingSpeakCmd(void)
{
  ESP8266.flush();
  String cmd = "AT+CIPSTART=\"TCP\",\"";
  cmd += "184.106.153.149"; // api.thingspeak.com IP address
  cmd += "\",80";
  ESP8266.println(cmd);
  Serial.print("Start Commands: ");
  Serial.println(cmd);

  if(ESP8266.find("Error"))
  {
    Serial.println("AT+CIPSTART error");
    return;
  }
}

String GetThingspeakcmd(String getStr)
{
  String cmd = "AT+CIPSEND=";
  cmd += String(getStr.length());
  ESP8266.println(cmd);
  Serial.println(cmd);

  if(ESP8266.find(">"))
  {
    ESP8266.print(getStr);
    Serial.println(getStr);
    delay(500);
    String messageBody = "";
    while (ESP8266.available()) 
    {
      String line = ESP8266.readStringUntil('\n');
      if (line.length() == 1) 
      { 
        messageBody = ESP8266.readStringUntil('\n');
      }
    }
    Serial.print("MessageBody received: ");
    Serial.println(messageBody);
    return messageBody;
  }
  else
  {
    ESP8266.println("AT+CIPCLOSE");     
    Serial.println("AT+CIPCLOSE"); 
  } 
}

prathu1998:

HI here is the code i am using

String myAPIkey = "HPETZAC65TF1NP4B";  
#include <Adafruit_Fingerprint.h>

#include <SoftwareSerial.h>
int temp_f;  
long writingTimer = 17;
long startTime = 0;
long waitTime = 0;
boolean relay1_st = false;
boolean relay2_st = false;
unsigned char check_connection=0;
unsigned char times_check=0;
boolean error;

SoftwareSerial ESP8266(4, 5);

SoftwareSerial mySerial(2, 3);

Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

void setup()  
{
 Serial.begin(9600);
 while (!Serial);  // For Yun/Leo/Micro/Zero/...
 delay(100);
 mySerial.begin(9600);
 Serial.println("\n\nAdafruit finger detect test");

// set the data rate for the sensor serial port
 inifinger();
 wifi();
}
void loop()
{
 }
void akash(void)                     // run over and over again
{
 int ad=1;
 while(ad==1){
  int a=getFingerprintIDez();
  if (a>0)
  {
   ad=0;
   //mySerial.end();
 
   }
  }
  }
  void inifinger()
  {
   
 finger.begin(57600);
 if (finger.verifyPassword()) {
   Serial.println("Found fingerprint sensor!");
 } else {
   Serial.println("Did not find fingerprint sensor :(");
   while (1) { delay(1); }
 }

finger.getTemplateCount();
 Serial.print("Sensor contains "); Serial.print(finger.templateCount); Serial.println(" templates");
 Serial.println("Waiting for valid finger...");
 akash();
   
   }
  uint8_t getFingerprintID() {
 uint8_t p = finger.getImage();
 switch (p) {
   case FINGERPRINT_OK:
     Serial.println("Image taken");
     break;
   case FINGERPRINT_NOFINGER:
     Serial.println("No finger detected");
     return p;
   case FINGERPRINT_PACKETRECIEVEERR:
     Serial.println("Communication error");
     return p;
   case FINGERPRINT_IMAGEFAIL:
     Serial.println("Imaging error");
     return p;
   default:
     Serial.println("Unknown error");
     return p;
 }

// OK success!

p = finger.image2Tz();
 switch (p) {
   case FINGERPRINT_OK:
     Serial.println("Image converted");
     break;
   case FINGERPRINT_IMAGEMESS:
     Serial.println("Image too messy");
     return p;
   case FINGERPRINT_PACKETRECIEVEERR:
     Serial.println("Communication error");
     return p;
   case FINGERPRINT_FEATUREFAIL:
     Serial.println("Could not find fingerprint features");
     return p;
   case FINGERPRINT_INVALIDIMAGE:
     Serial.println("Could not find fingerprint features");
     return p;
   default:
     Serial.println("Unknown error");
     return p;
 }
 
 // OK converted!
 p = finger.fingerFastSearch();
 if (p == FINGERPRINT_OK) {
   Serial.println("Found a print match!");
 } else if (p == FINGERPRINT_PACKETRECIEVEERR) {
   Serial.println("Communication error");
   return p;
 } else if (p == FINGERPRINT_NOTFOUND) {
   Serial.println("Did not find a match");
   return p;
 } else {
   Serial.println("Unknown error");
   return p;
 }  
 
 // found a match!
 Serial.print("Found ID #"); Serial.print(finger.fingerID);
 Serial.print(" with confidence of "); Serial.println(finger.confidence);

return finger.fingerID;
}

// returns -1 if failed, otherwise returns ID #
int getFingerprintIDez() {
 uint8_t p = finger.getImage();
 if (p != FINGERPRINT_OK)  return -1;

p = finger.image2Tz();
 if (p != FINGERPRINT_OK)  return -1;

p = finger.fingerFastSearch();
 if (p != FINGERPRINT_OK)  return -1;
 
 // found a match!
 Serial.print("Found ID #"); Serial.print(finger.fingerID);
 Serial.print(" with confidence of "); Serial.println(finger.confidence);
temp_f=finger.fingerID;
 Serial.print(temp_f);
 return finger.fingerID;
 
}
void wifi(){
Serial.begin(9600);
 ESP8266.begin(9600);
//   dht.begin();
 startTime = millis();
 ESP8266.println("AT+RST");
 delay(2000);
 Serial.println("Connecting to Wifi");
  while(check_connection==0)
 {
   Serial.print(".");
 ESP8266.print("AT+CWJAP="akash","12345678"\r\n");
 ESP8266.setTimeout(5000);
if(ESP8266.find("WIFI CONNECTED\r\n")==1)
{
Serial.println("WIFI CONNECTED");
break;
}
times_check++;
if(times_check>3)
{
 times_check=0;
  Serial.println("Trying to Reconnect..");
 }
 }
}
void writeThingSpeak(void)
{
 startThingSpeakCmd();
 // preparacao da string GET
 String getStr = "GET /update?api_key=";
 getStr += myAPIkey;
 getStr +="&field1=";
 getStr += String(temp_f++);
 //getStr +="&field2=";
 //getStr += String(humidity);
 getStr += "\r\n\r\n";
 GetThingspeakcmd(getStr);
}

void startThingSpeakCmd(void)
{
 ESP8266.flush();
 String cmd = "AT+CIPSTART="TCP","";
 cmd += "184.106.153.149"; // api.thingspeak.com IP address
 cmd += "",80";
 ESP8266.println(cmd);
 Serial.print("Start Commands: ");
 Serial.println(cmd);

if(ESP8266.find("Error"))
 {
   Serial.println("AT+CIPSTART error");
   return;
 }
}

String GetThingspeakcmd(String getStr)
{
 String cmd = "AT+CIPSEND=";
 cmd += String(getStr.length());
 ESP8266.println(cmd);
 Serial.println(cmd);

if(ESP8266.find(">"))
 {
   ESP8266.print(getStr);
   Serial.println(getStr);
   delay(500);
   String messageBody = "";
   while (ESP8266.available())
   {
     String line = ESP8266.readStringUntil('\n');
     if (line.length() == 1)
     {
       messageBody = ESP8266.readStringUntil('\n');
     }
   }
   Serial.print("MessageBody received: ");
   Serial.println(messageBody);
   return messageBody;
 }
 else
 {
   ESP8266.println("AT+CIPCLOSE");    
   Serial.println("AT+CIPCLOSE");
 }
}




and this is not sending the data to my channel can anyone help me please?