I am connecting to ThinkSpeak using a Esp8266 chip on a FireBeetle board. And I am using this code: #include <SoftwareSerial.h> #define RX 2 #define TX 3 String AP = "**********"; // AP NAME String PASS = "*********"; // AP PASSWORD String API = "*************"; // Write API KEY String HOST = "api.thingspeak.com"; String PORT = "80"; String field = "field1"; int countTrueCommand; int countTimeCommand; boolean found = false; int valSensor = 1; SoftwareSerial esp8266(RX, TX); void setup() { Serial.begin(9600); esp8266.begin(115200); sendCommand("AT", 5, "OK"); sendCommand("AT+CWMODE=1", 5, "OK"); sendCommand("AT+CWJAP=\"" + AP + "\",\"" + PASS + "\"", 20, "OK"); } void loop() { valSensor = getSensorData(); String getData = "GET /update?api_key=" + API + "&" + field + "=" + String(valSensor); sendCommand("AT+CIPMUX=1", 5, "OK"); sendCommand("AT+CIPSTART=0,\"TCP\",\"" + HOST + "\"," + PORT, 15, "OK"); sendCommand("AT+CIPSEND=0," + String(getData.length() + 4), 4, ">"); esp8266.println(getData); delay(1500); countTrueCommand++; sendCommand("AT+CIPCLOSE=0", 5, "OK"); } int getSensorData() { return random(1000); // Test } void sendCommand(String command, int maxTime, char readReplay[]) { Serial.print(countTrueCommand); Serial.print(". at command => "); Serial.print(command); Serial.print(" "); while (countTimeCommand < (maxTime * 1)) { esp8266.println(command);//at+cipsend if (esp8266.find(readReplay)) //ok { found = true; break; } countTimeCommand++; } if (found == true) { Serial.println("OYI"); countTrueCommand++; countTimeCommand = 0; } if (found == false) { Serial.println("Fail"); countTrueCommand = 0; countTimeCommand = 0; } found = false; } __________________________________________________________________________________________________________________ I get this (error?) In the serial monitor when I run it. Output: Fail 0. at command => AT+CWMODE=1 Fail 0. at command => AT+CWJAP="******","********" Fail 0. at command => AT+CIPMUX=1 Fail 0. at command => AT+CIPSTART=0,"TCP","api.thingspeak.com",80 Fail 0. at command => AT+CIPSEND=0,51 Fail 1. at command => AT+CIPCLOSE=0 Fail 0. at command => AT+CIPMUX=1 Fail 0. at command => AT+CIPSTART=0,"TCP","api.thingspeak.com",80 Fail 0. at command => AT+CIPSEND=0,51 Fail 1. at command => AT+CIPCLOSE=0 Fail 0. at command => AT+CIPMUX=1 Fail 0. at command => AT+CIPSTART=0,"TCP","api.thingspeak.com",80 Fail 0. at command => AT+CIPSEND=0,51 Fail 1. at command => AT+CIPCLOSE=0 Fail 0. at command => AT+CIPMUX=1 Fail _________________________________________________________________________________________________________________ What am I doing wrong? The Wifi password and name are correct. I really couldn't find anything online to help. And I'm honestly out of ideas, I've been trying to fix it all day.