How do I write to a ThingSpeak channel from a Raspberry pi via code deployed using the Matlab Coder?

3 visualizaciones (últimos 30 días)
I am making use of the Matlab Coder to deploy Matlab functionality to a Raspberry pi. I would like to be able to deploy the ability to write to a ThingSpeak channel from the pi. I realise that this is possible using Simulink (via the ThingSpeak block) but was wondering if there is a simple way to do this via code deployed using the Matlab Coder. I have tried the obvious and found that the Matlab Coder does not recognise the ThingSpeakWrite command. However, it also doesn’t appear to be very straightforward to deploy http methods to enable updating the channel via the POST method. Any advice welcome.
  1 comentario
John Anderson
John Anderson el 21 de Jun. de 2019
Using curl via the system command deploys via the coder without any problems. Not sure if it the most sensible way but does enable updating of a thingSpeak channel and is very easy to implement. Example code below adds random number to field 1 of channel.
% raspberry pi object
r = raspi();
% log file
fid = fopen( 'logFile.log', 'w' );
% write random number to thingSpeak channel
v = rand;
commandStr = [ 'sudo curl -s "https://api.thingspeak.com/update.json?api_key=<your api key here>&field1=' sprintf( '%f', v ) '"' ];
result = system( r, commandStr );
% log command
fprintf( fid, '%s \n', commandStr );
% log result
fprintf( fid, '%s \n', result );
% close log
fclose( fid );

Iniciar sesión para comentar.

Respuestas (1)

Vinod
Vinod el 10 de Sept. de 2019
Editada: Vinod el 10 de Sept. de 2019
As you said, there is a block in the Raspberry Pi Support Package that you can use.
Curious why you don't want to use the built-in blocks.
  5 comentarios
Raphael Mukaro
Raphael Mukaro el 24 de Nov. de 2020
John, thanks man for your brilliance! I can now update my thingspeak channel using the pi via code deployed using MATLAB coder. I have been struggling for months. Appreciated!!!

Iniciar sesión para comentar.

Comunidades de usuarios

Más respuestas en  ThingSpeak Community

Community Treasure Hunt

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

Start Hunting!

Translated by