Results for
I would like to know the maximum amount of storage space in the Data Logger.
I have a data.

And, I want to substract the data using for.
But, I want to ignore the nan values and substract others.
For example, [1, 2, 3, NaN, 6, 9, 12, 14] ---- substract---> [1, 1, 3, 3, 2]
How can I do this?
Hi guys,
I'm very new to matlab, so this might a rookie mistake. However, it seems that I have messed up some important part with the plot function. The program does not give my any kind of error messages, but still does not plot anything. What can I have done wrong and how do I fix this?
Best regards
My code:
close all
for t = -2:0.1:3
if (t<0 || t>1)
xvalue = 0;
end
if (t<= 1 && t>= 0)
xvalue = exp(2*t+1);
end
yvalue = -1*(xvalue) + exp(1);
hold on
figure(1);
plot(t, yvalue);
hold off
end
grid on;
Help us please, we need to send email after measurement from sonde (GSM report) is under limit for three days.
"React" on the limit, is non for three days under limit., and time control is days or weeks runner.
I propose trigger on time control but what is the code?
????
% Read the recent data.
moistureData = thingSpeakRead(channelID,'NumDays',3,'Fields',1); {is that right, that I read last three days measurement (3000x)?}
% Check to make sure the data was read correctly from the channel.
if isempty(moistureData)
alertBody = ' No data read from plant. ';
else
%{need if
% moistureData is for three days under limit from sonde then send
% email}
span = max(moistureData) - min(moistureData);
dryValue = span;
% Get the most recent point in the array of moisture data.
lastValue = moistureData(end);
% Set the outgoing message
if (lastValue<=dryValue)
alertBody = ' I need water! ';
elseif (lastValue>dryValue)
alertBody = ' No water needed. ';
end
really thanks so much
is there any problem today? thanks
Hi
Sent data was 4.94
{"created_at":"2022-08-28T23:38:23-04:00","entry_id":1269,"field4":"4.94"}]}
Read data was 4.00
Code:
long PHTS = ThingSpeak.readLongField(counterChannelNumber, FieldNumber4, myCounterReadAPIKey);
int statusCode = ThingSpeak.getLastReadStatus();
if (statusCode == 200)
{
Serial.print("ThingSpeak pH: ");
Serial.println(PHTS);
}
How to display 4.94 (actual data) when reading the data.
Thanks
I want to allow private channels to be viewed only by my organisation. How do I do that?
Hello Academia,
I've been trying to get information regarding these configuraitons in a 3 phase transformer. The first is a dual secondary consisting of a wye output and delta output. Both feed separate 3 phase bridges, which outputs are connected in parallel.
The second is a Wye output, which each leg feeds 3 more series windings, which are located on the adjacent core (phase shifted) on the same transformer, with only one 3 phase bridge for the output
I see there is a zigzag simulink but can't seem to get that loaded...
My question is, are these essentially identical in operation, or is the dual secondary what I should be using? (due to better harmonic rejection)
Thanks,
Bryan
Hi,
I am using some dragino sensors and for the testing period I have used TTN and Thingspeak. The TTN to thingspeak integration was straigthforward as there are plenty of guides out there. However, the sensor will be running in an environment where I can not install a gateway and I will have to rely on a private LoRaWAN network. I would still like to use thigspeak as my endpoint for the data, and the company has requested documentation to configure endpoint URL and authorization header. They have no other inputs they can configure.
I am a newbie in all of this and I was wondering if you can point me in rigth direction. Is there any documentation available on how to configure a lowrawan server to send the data to my thingspeak channels? For each of these channels I have a write channel feed link, which I am guessing would be the authorisation header? What should I use for the enpoint URL?
Many thanks.
What is going on in ThingSpeak recently? All my ESP's which use the ThingSpeak library have either stopped working or only are only posting data very sporadically. The error code is :"Problem updating channel. HTTP error code -301". I've gone back to the basic example in the ThingSpeak library (unsecured) and it doesn't work either - same error code -301. What has changed?
Greetings ThingSpeak team,
Regarding the ThingSpeak Free plan - Is it elligible for usage as a part of academic course free of cost?
I was considering using your platform to demonstrate a few IoT functionalities while teaching an IoT PostGrad course to about 20 students, who would create free accounts during the course. Usability would be restricted within the free plan limitations during class activities.
However, I am unsure if this is allowed under the ToS. Do I require a Matlab license in this case?
Thanks!
dear sir, We are using IOT builder system and trying to make project on thingspeak we are unable to find graph after run the program in Python after completing whole system and connection properly please resolve issue and aware about problem.
Hi everyone,
I want to know how much time my data takes from uploading it to a thingspeak channel until the channel receives the data. Therefore I am sending a unix timestamp as data to my thingspeak channel. When ThingSpeak receives the datapoint, it creates a timestamp itself called "created_at". But this "created_at" timestamp measures only seconds, while the unix timestamp, that is sent as data, measures milliseconds. Because of this, it can happen, that the unix timestamp in the data is bigger than the "created_at" timestamp from thingspeak, which makes no sense.
Does anybody know if there is a way that the "created_at" timestamp also measure milliseconds? Or if there is a better way to measure the latency between my system and ThingSpeak?
I have an ESP32 that has 5 values (solarW, batteryV, pumpW, pumpRPM and pumpLPM) that I'm writing to 5 fields on a Thingspeak channel.
if ((millis() - fifteenTstart) > 15000){
Serial.println("Updating Thingspeak....");
ThingSpeak.setField(1, solarW);
ThingSpeak.setField(2, batteryV);
ThingSpeak.setField(3, pumpW);
ThingSpeak.setField(4, pumpRPM);
ThingSpeak.setField(5, pumpLPM);
int x = ThingSpeak.writeFields(myChannelNumber, myWriteAPIKey);
if(x == 200){
Serial.println("Channel update successful.");
}
else{
Serial.println("Problem updating channel. HTTP error code " + String(x));
}
}
It works fine when there's a good connection to the internet and Thingspeak, but there's a 10 second or so delay when Thingspeak is unavailable (WiFi, internet or website non-connectivity).
I would like the code to recognise that there's no ThingSpeak connection musch faster (1 second or less woud be good, but I'll take two!).
Or, if it's possible to just send the data out without the code waiting for a confirmation back (I only need the data to go OUT from the ESP32 to Thingspeak, nothing needs to come back).
The reason for doing this is there's other code on the ESP32 that I need to get back to, having a 10 second delay in the middle of the code ain't good for the pump safety reaction code.
please help to to solve this problem..

Hi, I just buy a Pico W board that can be easy programming in Thonny IDE using Micropython library. But I find difficult to use thingspeak without compatible library and some examples. Please take this Raspberry board in consideration, it is cheap and it is more reliable. Thank you!
Hello,
I am designing a battery model and its control to undergo cyclic charge and discharge.
The battery model is created by using a simscape electrical battery block (Table-based).
The control is modeled using Stateflow. The statflow chart takes SOC values as inputs and provide current values as outputs. By default, the battery will be at rest and no current is drawn at that state (I=0A). And then based on the SOC % of the battery, it goes to charge (3A current) or discharge (-3A current) state. I have defined the controls as follows.
- If the battery has SOC >= 50%, it has to discharge. If the battery has SOC < 50%, it has to charge.
- While discharging, if the battery reaches 0% SOC, it goes to rest.
- While charging, if the battery reaches 100% SOC, it goes to rest.
I have defined initial SOC as 50%.
When I run the simulation, the battery started to discharge as per the condition provided in the stateflow chart.
I = -3
But the battery has not come to rest state after reaching 0% S0C.
I am getting a warning that,
At time 1944.017100, one or more assertions are triggered. State of charge must be greater than or equal to zero. The assertion comes from: Block path: Example_cell_model/Battery (Table-Based)1Assert location: o (location information is protected)
I don't understand why the battery has not came back to rest state.
Do anyone has any idea for the cause of this problem and how to resolve it?




Thanks in advance.
Hi everyone. Any possibility in using MQTT with Talkback. I would like to subscribe to the Talkback with MQTT on the ESP8266 and then send data based on the Talkback. Subscribing to MQTT would make it easier as to poll it via REST Http.Thanks
The ThingSpeak certificate was updated recently. If you are using secure communication for your devices, you may need to update the certificate or certificate fingerprint on your devices.
Hi everyone,
This is the second time in few years ThingHTTP changes the way it returns data; any way to roll that back or control it? Back in 2020 it statted padding the GET request with CRs and LFs (last time I forgot what changed but it was similar - just padding the GET return with characters).
Now it's adding "0" zero after the GET payload and then 2 CRs and LFs at the end after that zero;
Is there any way to control how ThingHTTP returns the payload back? It's messing up my parsing firmware :)
