File Exchange

image thumbnail

LSM303 Add-On Library for Arduino

version 2.5 (100 KB) by MathWorks MATLAB Hardware Team
Communicate with LSM303 devices connected to Arduino hardware in MATLAB.


Updated 16 Oct 2019

View License

This add-on is for use in R2019a or higher releases.

This add-on library extends MATLAB Support Package for Arduino Hardware to read from LSM303 accelerometers and compasses. With the add-on, you can read measured acceleration in meter per second squared and magnetic field strength in microtesla. Supported boards are LSM303D, LSM303DLHC, LSM303DLM, and LSM303DLH.
Sample usage:
% Create arduino object with the add-on library
a = arduino('COM38', 'Uno', 'Libraries', 'Pololu/LSM303');
% Create LSM303 object
compass = addon(a, 'Pololu/LSM303');
% Obtain acceleration
acc = readAcceleration(compass);
% Obtain acceleration
mag = readMagneticField(compass);
It includes documentation and an example that demonstrates the use with an LSM303 to get acceleration and magnetic field strength.
Important: Before using this add-on library in MATLAB, you need to install the LSM303 Arduino library. Here are the instructions:
1. Download the zip file from
2. Unpackage the zip into local directory.
3. Move the ‘LSM303’ folder inside unzipped folder into the "libraries" folder inside your Arduino sketchbook folder. You may need to create the folder if it does not already exist:

For R2019a:
• On Windows®, the default path is "Documents\Arduino\libraries\"
• On Mac®, the default path is "~/Documents/Arduino/libraries/"
• On Linux®, the default path is "/home/<username>/Arduino/libraries"
For R2019b and later:
• On Windows®, the default path is "Arduino IDE Path\portable\sketchbook\libraries\"
• On Mac®, the default path is "~/Documents/Arduino/libraries/"
• On Linux®, the default path is "Arduino IDE Path/portable/sketchbook/libraries/"

Arduino IDE Path is returned by the command arduinoio.IDERoot in the MATLAB Command Window

Troubleshooting tips:
1. After installing this add-on library and the required Arduino library, type "listArduinoLibraries" in MATLAB to see if the add-on is properly installed.
2. Wire up the Arduino board and the add-on device properly before creating the object to avoid a connection error in MATLAB.
3. Refer to the documentation for details on usage and syntax. It can be found under Supplemental Software in the product documentation.
Feel free to contact the MATLAB Hardware Team if you have questions about this add-on library:

Cite As

MathWorks MATLAB Hardware Team (2020). LSM303 Add-On Library for Arduino (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (0)



Updated description.


Updated description text.


Updated filename and description.


Updated for compatibility with 19b.

MATLAB Release Compatibility
Created with R2019b
Compatible with R2019a to any release
Platform Compatibility
Windows macOS Linux