View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Interacting with an Arduino Using the Matlab Serial Commands

4.8 | 6 ratings Rate this file 42 Downloads (last 30 days) File Size: 3.65 KB File ID: #26711 Version: 1.0
image thumbnail

Interacting with an Arduino Using the Matlab Serial Commands


Lowell Toms (view profile)


Two sets of files demonstrate serial communications between Matlab and the Arduino.

| Watch this File

File Information

Using information from Matlab central, Robot Grrl, and the Arduino forums, four files (two .m and two sketches) demonstrate two way communications between Matlab and the Arduino. The first set of files, serialTest1, demonstrates arduino input with Matlab tic/toc timing information added, and the second set of files, serialTest2, uses clock information from the arduino. I think you'll find the results interesting when the two approaches are compared.

Load the sketch on your arduino. LED13 will light, indicating that the arduino is waiting for a response from Matlab to start. Load the m file, and change the com port to the port where the arduino USB is mapped on your PC (I use Linux, thus the /dev/ttyUSB1, it will be something like 'COM3' in windows). Run the .m file, and LED13 will turn off as Matlab signls the arduino, data is read, and a plot is created of time info versus counter data (simulating sensor data). Remember to reset the arduino before each m file run (LED13 must be on)! Used an arduino mega, but should work fine on most arduinos. Thanks to Tom Igoe and Robot Grrl (see sketch references to http addresses). Robot Grrl plots as she goes, and you can do that also, although it will slow things down slightly. But, note the key to these files, is the use of the proper TERMINATOR. The matlab set terminator statement using LF and the use of serial.println in arduino is the secret ingredient to success. If you don't use these, then you are relying on inserted timing delays, yuck.


Arduino Meets Matlab inspired this file.

MATLAB release MATLAB 7.8 (R2009a)
Other requirements Arduino and the Arduino toolbox 018.
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (8)
02 Jan 2017 zhaoqing li

01 Apr 2013 Yingzhu Zhao

In the first file in matlab, 'me' is not defined. What is 'me'?

30 May 2012 Asiya

Asiya (view profile)

Very useful files. I used them since you uploaded them and I did extend them a lot to do many useful functions. I'll try to submit some works here.


13 Sep 2011 Adam Erskine

Looks like just what I'm after but - trange one - when I download I all four files have the same content (all serialTest1.m). Any ideas?

Comment only
09 Jul 2011 akram

akram (view profile)

I am try to use an Arduino Mega 1280, with simulink but it doesn't work.
please help me.

Comment only
21 Apr 2011 Petteri T

24 Aug 2010 Tanyer Alan

Tanyer Alan (view profile)

06 Jun 2010 Jeff Tuhtan

Awesome submission! Was fooling around forever with the serial Arduino/Matlab connection, and could never get it to work. Can finally graph data from my Arduino in realtime. Thanks a million!

Contact us