Connecting to ThinkSpeak With Esp8266 and FireBeetle board Errors
Show older comments
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.
Accepted Answer
More Answers (2)
Christopher Stapels
on 9 Jan 2022
0 votes
Why not try the ThingSpeak library for Arduino and ESP and others ? I think its a lot easier than using the AT command set.
1 Comment
John Anand
on 9 Jan 2022
John Anand
on 9 Jan 2022
0 votes
2 Comments
Christopher Stapels
on 9 Jan 2022
Edited: Christopher Stapels
on 9 Jan 2023
I am sorry to have led you astray. I didnt realize that the libraries didnt work for Firebeetle esp8266. Ill add it to our list as an enhancement request. There are plenty of other esp8266 board that they work with, for example the node MCU version. I woud suggest an esp32 or an arduino board, such as the nano 33 iot or even the partile Argon. That said, I just ordered two firebeetle esp32 boards, I hope they work with the library. Ill let you know when they arrive. You can generally ignore the multiple library errors, but just in case, you can go in your library manager and make sure the ThingSpeak library is up to the latest version. Do you get the same warning if you try to compile with a blank sketch?
If we truly cant get the ThingSpeak library to work, this examle in the documentation shows you how to make HTTP requests without the ThingSpeak library. (and without the barely any fun AT command list)
John Anand
on 9 Jan 2022
Communities
More Answers in the ThingSpeak Community
Categories
Find more on MATLAB Support Package for Arduino Hardware in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!