Jump to content

Getting Sensor values into vector from callback function MATLAB


Recommended Posts



I am using Ambient Light Bricklet(V2) with MatLab. I would like to know how to get the vector data of sensor values from callback  function. Because, I want to plot this data with other sensors(Temperature and Pressure).



function matlab_example_callback()    
import com.tinkerforge.IPConnection; 
import com.tinkerforge.BrickletAmbientLightV2; 
HOST = 'localhost'; PORT = 4223; UID = 'XYZ'; 
ipcon = IPConnection(); 
al = handle(BrickletAmbientLightV2(UID, ipcon), 'CallbackProperties');  ipcon.connect(HOST, PORT); 
set(al, 'IlluminanceCallback', @(h, e) cb_illuminance(e)); al.setIlluminanceCallbackPeriod(1000); 
input('Press key to exit\n', 's'); 
function cb_illuminance(e) 
fprintf('Illuminance: %g Lux\n', e.illuminance/100.0); 

Link to comment
Share on other sites

  • 1 year later...

Is this topic solved or documented? I'm struggling with exactly this.


How do I get the data from the callback function back to the main function in MATLAB? I like to write all accelerations into an array while the callback function is active. After the sensors stopped sending data, I like to run some statistics on the entire data stream.


% Register 16-bit continuous acceleration callback to function cb_continuous_acceleration
    set(a, 'ContinuousAcceleration16BitCallback', @(h, e) cb_continuous_acceleration(e));


Within the callback, I can get access to the sensor data using the "e" object. However, how do I get the data back to the main function?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...