I want to send data to ThingSpeak using Arduino

10 ビュー (過去 30 日間)
seiya moro
seiya moro 2022 年 3 月 29 日
コメント済み: seiya moro 2022 年 4 月 18 日
Currently, GPS data is acquired using Arduino on Simulink.
I want to send this data to ThingSpeak.
How should I set the microcomputer board?
Thank you very much!
  6 件のコメント
Nakul Khadilkar
Nakul Khadilkar 2022 年 4 月 13 日
Hi Seiya,
What WiFi shield are you using with the Mega?
seiya moro
seiya moro 2022 年 4 月 14 日
編集済み: seiya moro 2022 年 4 月 14 日
Hi,
Now, I am using SHIELD-ESP-WIFI REV 2.0. with the Mega.
Also, is there a Wifi shield that I should buy?
Thank you very much.

サインインしてコメントする。

回答 (2 件)

Vinod
Vinod 2022 年 4 月 14 日
編集済み: Vinod 2022 年 4 月 14 日
The question title says "I want to send data to ThingSpeak using Arduino", which is answered by the answer here.
If you are interested in sending data to ThingSpeak using Simulink and Arduino, I would recommend watching this video as a starting point.
or this one:
  1 件のコメント
seiya moro
seiya moro 2022 年 4 月 18 日
Hi Vinod,
Sorry for the late reply.
I think it will be very helpful.
I will try this method.
Thank you very much!

サインインしてコメントする。


Jan Maly
Jan Maly 2022 年 4 月 13 日
Hello,
try bellow code, works for me.
#include <WiFiClientSecure.h> // you need this library, cos Thingspeak use SSL protocoal, so standard WIFIClient is not able to connect there
const char* ssid = "SSID name";
const char* password = "your password";
WiFiClientSecure client;
void connectToWIFI() {
Serial.print("Attempting to connect to SSID: ");
Serial.println(ssid);
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(WiFi.status());
delay(1000);
}
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
}
void setup() {
Serial.begin(115200);
connectToWIFI();
}
void loop() {
httpRequestData = "api_key=YOURAPIKEY&field1=22.32&field22=12.89; //up to field 8
responseTime = millis();
Serial.println(" Starting connection to server thingspeak");
Serial.println(httpRequestData);
client.setInsecure(); //skip SSL verification
if (!client.connect("api.thingspeak.com", 443, 10000)) {
Serial.println("Connection failed! Reconnect!");
connectToWIFI();
} else {
Serial.print(" Connected to server!");
client.println("GET https://api.thingspeak.com/update?" + httpRequestData + " HTTP/1.0");
client.println("Host: api.thingspeak.com");
client.println("Connection: close");
client.println();
while (client.connected()) {
String line = client.readStringUntil('\n');
if (line == "\r") {
Serial.print(" Headers received "); // or display lito to get return code
break;
}
}
Serial.println(millis() - responseTime); //response time in miliseconds
client.stop();
}
}
be carefully, today i found, that only one request per 15 seconds can be send
  3 件のコメント
Jan Maly
Jan Maly 2022 年 4 月 14 日
Sorry, no idea. This is pure wire language. I use Arduino IDE software, to connect to device via USB and upload code above.
seiya moro
seiya moro 2022 年 4 月 15 日
I understand.
Thank you very much!

サインインしてコメントする。

コミュニティ

その他の回答  ThingSpeak コミュニティ

カテゴリ

Help Center および File ExchangeRun on Target Hardware についてさらに検索

製品


リリース

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by