Hello, in a ThingSpeak channel, I am reading every one second the information of two current signals (I have the licensed application). I currently have a MATLAB Analysis routine that adds those two signals and writes, on the same channel, the result of that sum. In the routine I can check that effectively if the sum of the two channels is being done. I do that now with a good result but my problem is that the channel is not updated except when I run MATLAB Analysis. How can I make the channel automatically update every second? ------------------------------------------------------------------------------- This is my routine: readChannelID = 123; readAPIKey = 'XXX'; writeChannelID = 123; writeAPIKey = 'YYY'; %%%%%%%%%%%%%%%%%%%%%% CALCULO DE CORRIENTE %%%%%%%%%%%%%%%%%%%%%% [Cte1, timeStamp] = thingSpeakRead(readChannelID,'Fields',1,'numPoints', 2, 'ReadKey', readAPIKey); anyMissingValues = sum(isnan(Cte1)); if sum(anyMissingValues) > 0 missingValueIndex = find(~sum(isnan(Cte1),2)); cleanCte1 = Cte1(missingValueIndex, :); cleanTimeStamps = timeStamp(missingValueIndex); else cleanCte1 = Cte1; cleanTimeStamps = timeStamp; end [Cte2, timeStamp] = thingSpeakRead(readChannelID,'Fields',4,'numPoints', 2, 'ReadKey', readAPIKey); anyMissingValues = sum(isnan(Cte2)); if sum(anyMissingValues) > 0 missingValueIndex = find(~sum(isnan(Cte2),2)); cleanCte2 = Cte2(missingValueIndex, :); cleanTimeStamps = timeStamp(missingValueIndex); else cleanCte2 = Cte2; cleanTimeStamps = timeStamp; end Corriente = round([cleanCte1 + cleanCte2],1); display (Corriente, 'Corriente') %%%%%%%%%%%%%%%%%%%%%% VOLTAJE %%%%%%%%%%%%%%%%%%%%%% [Voltaje, timeStamp] = thingSpeakRead(readChannelID,'Fields',2,'numPoints', 2, 'ReadKey', readAPIKey); anyMissingValues = sum(isnan(Voltaje)); if sum(anyMissingValues) > 0 missingValueIndex = find(~sum(isnan(Voltaje),2)); cleanVoltaje = Voltaje(missingValueIndex, :); cleanTimeStamps = timeStamp(missingValueIndex); else cleanVoltaje = Voltaje; cleanTimeStamps = timeStamp; end display (cleanVoltaje, 'Voltaje') %%%%%%%%%%%%%%%%%%%%%% CALCULO DE POTENCIA %%%%%%%%%%%%%%%%%%%%%% Potencia = round([Corriente * cleanVoltaje],0) %%%%%%%%%%%%%%%%%%%%%% CALCULO DE ENERGIA %%%%%%%%%%%%%%%%%%%%%% [Energia1, timeStamp] = thingSpeakRead(readChannelID,'Fields',3,'numPoints', 2, 'ReadKey', readAPIKey); anyMissingValues = sum(isnan(Energia1)); if sum(anyMissingValues) > 0 missingValueIndex = find(~sum(isnan(Energia1),2)); cleanEnergia1 = Energia1(missingValueIndex, :); cleanTimeStamps = timeStamp(missingValueIndex); else cleanEnergia1 = Energia1; cleanTimeStamps = timeStamp; end [Energia2, timeStamp] = thingSpeakRead(readChannelID,'Fields',5,'numPoints', 2, 'ReadKey', readAPIKey); anyMissingValues = sum(isnan(Energia2)); if sum(anyMissingValues) > 0 missingValueIndex = find(~sum(isnan(Energia2),2)); cleanEnergia2 = Energia2(missingValueIndex, :); cleanTimeStamps = timeStamp(missingValueIndex); else cleanEnergia2 = Energia2; cleanTimeStamps = timeStamp; end Energia = [cleanEnergia1 + cleanEnergia2]; display (Energia, 'Energia') %%%%%%%%%%%%%%%%% Write the results in fields 6, 7 and 8 of the same channel %%%%%%%%%%%%%%%%%%%% thingSpeakWrite(writeChannelID, 'Fields', [6,7,8], 'Values',... [Corriente, Potencia, Energia],'WriteKey',writeAPIKey); OUTPUT: Corriente = 3.4000 Voltaje = 116 Potencia = 394 Energia = 0.0040