Unable to write data to ThingSpeak , HTTP error 400
显示 更早的评论
Hello,
I am trying to transfer data by using program "Typical Write Example" running on ESP8266 NodeMCU. I didn't change he program , only added my Network name, network password, channel number and APIWriteKey. The Program is running on ESP8266 or ESP32. In both cases the response is always "400".
Don't have more detailed information.
Any idea on the cause ? Router problem , Arduino IDE 1.8.10 or ?
Any comment is appreciated.
Kind regards
回答(3 个)
Vinod
2020-1-6
0 个投票
Hello Otto,
Can you start from one of the examples in the library here: https://github.com/mathworks/thingspeak-arduino
Are you getting 400 status codes for those examples?
-Vinod
Christopher Stapels
2020-1-6
0 个投票
Can you try to update your channel from a web browser? Use the format
https://api.thingspeak.com/update?api_key=xxxxxxxxxxxxxxxx&field1=1230 but change the api key to match.
Does that work?
9 个评论
Otto Meier
2020-1-6
Christopher Stapels
2020-1-6
Was there a response in the browser when you entered the command?
Otto Meier
2020-1-6
Otto Meier
2020-1-6
Christopher Stapels
2020-1-6
That might mean you have the incorrect API key. Can you check to be sure you are using the Write API key from the channel view and not your user API key, or could you have possibly made a typo?
Otto Meier
2020-1-6
Otto Meier
2020-1-6
Otto Meier
2020-1-6
Christopher Stapels
2020-1-8
Glad you got it! Thanks for letting us know.
Nazmi Rosly
2021-8-16
编辑:Christopher Stapels
2021-8-17
0 个投票
Hi. Im trying to send data from matlab which is the data from serial monitor from arduino. It is fine until 9th of data and then it stopped and says :
Error using Untitled (line 27)
'Values' must have a maximum of 9 elements, including the timestamp.
My coding is:
clear all
s = serial('com4');
fopen(s);
i = 1;
while(1)
data(i)= str2double(fscanf(s));
plot(data);
title('Temperature Monitoring')
xlabel('Time')
ylabel('Temperature')
pause(30);
i=i+1;
%thingSpeakWrite(1463959,data,'WriteKey','xxxxxxxxxxxxxxxx')
% Generate timestamps for the data
%tStamps = datetime('now')-minutes(9):minutes(1):datetime('now');
channelID = 1463959; % Change to your Channel ID
writeKey = 'xxxxxxxxxxxxxxxx'; % Change to your Write API Key
% Write 10 values to each field of your channel along with timestamps
tStamp = datetime('now')
thingSpeakWrite(1463959,data,'WriteKey','xxxxxxxxxxxxxxxx','TimeStamp',tStamp)
end
社区
更多回答在 ThingSpeak Community
类别
在 帮助中心 和 File Exchange 中查找有关 Read Data from Channel 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!