Fail to Retrieve channel description
조회 수: 2 (최근 30일)
이전 댓글 표시
Serial.println("AT");
delay(1000);
Serial.print("AT+CIPSTART=3,\"TCP\",\"api.thingspeak.com\",80\r\n");
delay(3000);
Serial.print("AT+CIPSEND=3,");
Serial.print(68);
Serial.print("\r\n");
delay(2000);
Serial.print("GET /channels/");
Serial.print(channel_id);
Serial.print("/feeds.json?api_key=");
Serial.print(mystringchar);
Serial.print("&results=0 HTTP/1.1\r\n");
Serial.print("Host:");
Serial.print(DST_IP);
Serial.println(); //web link
delay(300);
unsigned long lastRead = millis();
while (millis() - lastRead < 5000) {
while (Serial.available())
{
if (Serial.find("description\":\""))
{
String message = Serial.readStringUntil('$');
Serial.flush();
Serial.println(message);
}
}
This code was working fine for our production since 3 years but presently we are unable to retrive description .please do suggest us .
we are using sim-800c and esp8266-12f
댓글 수: 0
답변 (2개)
Vinod
2020년 9월 28일
Have you checked your GSM module to see that it still has data capacity? Nothing has changed on ThingSpeak early August that can be linked to what you are seeing.
Are you able to connect to any other site using the SIM-800C?
댓글 수: 4
Vinod
2020년 10월 8일
Since the response is correct from POSTMAN and cURL, I suspect the issue is on your device code. I have pasted the Arduino sketch in my answer below that you can modify and try on your device.
Vinod
2020년 10월 5일
편집: Vinod
2020년 10월 5일
Here's a working Arduino Sketch I have tried on an ESP32. It can be modified as needed for your device.
#include <WiFi.h>
const char* ssid = "YourSSIDHere";
const char* password = "YourWifiPasswordHere";
WiFiClient client;
const char* host = "api.thingspeak.com";
void setup() {
Serial.begin(115200);
delay(100);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
}
void loop() {
delay(5000);
if (!client.connect(host, 80)) {
Serial.println("connection failed");
return;
}
String url = "/channels/366768/feeds.json?api_key=DoesNotMatter&results=0&headers=false";
Serial.print("Requesting URL: ");
Serial.println(url);
client.print(String("GET ") + url + " HTTP/1.1\r\n" +
"Host: " + host + "\r\n" +
"Connection: close\r\n\r\n");
delay(500);
while(client.available()){
String line = client.readStringUntil('{');
line = client.readStringUntil('}');
Serial.print(line);
while(client.available()){client.readStringUntil('\r');}
Serial.print("\r\n");
}
delay(10000);
}
댓글 수: 2
Vinod
2020년 10월 15일
편집: Vinod
2020년 10월 15일
If existing devices are working fine but new production devices are not, I would suggest looking at what might be different on the new devices. It could be that one of the libraries you use has changed, or something about the hardware (available memory, memory partitions, etc.?) has changed causing you to see different results.
커뮤니티
더 많은 답변 보기: ThingSpeak 커뮤니티
참고 항목
카테고리
Help Center 및 File Exchange에서 Write Data to Channel에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!