ThingspeakRead returns cell array

2 views (last 30 days)
Dimitris Lymperis
Dimitris Lymperis on 17 Dec 2020
I am using the following commands in a script to retrieve the records from the last 5 minutes of two diffirent temperature sensors.
Temp_1 = thingSpeakRead(readChannelID_1,'Fields',Temperature_1_FieldID,'NumMinutes',5,'ReadKey',readAPIKey_1,'OutputFormat','timetable')
Temp_2 = thingSpeakRead(readChannelID_2,'Fields',Temperature_2_FieldID,'NumMinutes',5,'ReadKey',readAPIKey_2,'OutputFormat','timetable')
Some times i get a good one timetable with double values (rarely) for temperature and some other time i get a cell array with the following format.
TimestampsTemperature_2
_________________________________
17-Dec-2020 23:16:00 {'nan'}
17-Dec-2020 23:16:16 {'16.10000'}
17-Dec-2020 23:16:31 {'16.10000'}
17-Dec-2020 23:18:52 {'16.10000'}
17-Dec-2020 23:19:09 {'nan'}
17-Dec-2020 23:19:25 {'16.10000'}
17-Dec-2020 23:19:41 {'16.10000'}
17-Dec-2020 23:20:28 {'16.10000'}
17-Dec-2020 23:20:44 {'16.10000'}
why does it happen and how can i get only the double values?
1 Comment
Christopher Stapels
Christopher Stapels on 21 Dec 2020
thingSpeakRead is returning a cell array when there is text in the fields. When you are reading the 'nan' values, ThingSpeak is giving you a cell array. Try reading a section where there are no 'nan' values.
Are you writing to the same channel with two different devices? If so, that would explain the empty entries. We reccomend one channel per device.
By the way, you can read both fields at once if you use 'fields', [ Temperature_1_FieldID Temperature_2_FieldID].

Sign in to comment.

Answers (0)

Communities

More Answers in theThingSpeak Community

s manbetx 845

Community Treasure Hunt

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

Start Hunting!