Locale Icon
English
  • Forums

    Popular Forums

    • LTspice
    • Video
    • Power Management
    • RF & Microwave
    • Precision ADCs
    • FPGA Reference Designs

    Product Forums

    • Amplifiers
    • Clocks & Timers
    • Data Converters
    • Direct Digital Synthesis (DDS)
    • Energy
    • Interface and Isolation
    • MEMS Inertial Sensors
    • Power Management
    • Processors & DSP
    • Processors & Microcontrollers
    • Switches & Multiplexers
    • Sensors
    • Voltage References
    View All

    Application Forums

    • A2B Audio Bus
    • Audio
    • Automated Test Equipment (ATE)
    • Condition-Based Monitoring
    • Depth, Perception & Ranging Technologies
    • Embedded Vision Sensing Library
    • Motor Control Hardware Platforms
    • Precision Technology Signal Chains Library
    • Video
    • Wireless Sensor Networks Reference Library

    Design Center Forums

    • ACE Evaluation Software
    • ADEF System Platforms
    • Design Tools & Calculators
    • FPGA Reference Designs
    • Linux Software Drivers
    • Microcontroller no-OS Drivers
    • Precision Studio
    • Power Studio Designer
    • Power Studio Planner
    • Reference Designs
    • Robot Operating System (ROS) SDK
    • Signal Chain Designer
    • Software Interface Tools
  • Learn

    Highlighted Webinar

    Revolutionizing Flow Cytometry: 20-Bit Precision Signal Chain

    In this webinar, we will reassess the design of electronics for Flow Cytometry applications. In the past, 20-bit, 40 MSPS analog-to-digital converters...

    Places

    • ADI Academy
    • ADI Webinars
    • EZ Blogs
    • Video Annex
    • Virtual Classroom

    Libraries

    • 3D ToF Depth Sensing Library
    • Continuous-Wave CMOS Time of Flight (TOF) Library
    • Embedded Vision Sensing Library
    • Gigabit Multimedia Serial Link (GMSL) Library
    • Optical Sensing Library
    • Other Products Library
    • Precision Technology Signal Chains Library
    • Software Modules and SDKs Library
    • Supervisory Circuits Library
    • Wireless Sensor Networks Library

    Upcoming Learning & Events

    • COTS SoMs & Phased Array Solutions for Rapid RF Subsystem Integration
    • LEO Satcom: Application of RF, Mixed-Signal, & Beamforming ICs
    • 3 Real World Methods to Make Your Power Supply More Intelligent
    View All Webinars
  • Community Hub

    Challenge Yourself!

      KCC's Quiz AQQ300 about Divisibility by 6

      1. Quote of the month: " Friendship is like money - easier made than kept " - Samuel Butler 2. New quiz AQQ300 about a divisibility by 6 puzzle ...

    View All

    What's Brewing

      Read a Blog, Take this Quiz for Another Chance to Win a Gift Card!

      Important: Read the blog first . The quiz questions are all based on the content of the blog: Taming the AI Power Storm: Part 2 of 3 Test your...

    View All

    Places

    • Community Help
    • Analog Dialogue Quiz
    • Logic Lounge
    • Super User Program

    Resources

    • EZ Code of Conduct
    • EZ How To Help Articles
    • Getting Started Guide
    • ADI: Words Matter
    • Community Help Videos
    View All
  • ContentZone

    Visit ContentZone

    Search content by industry or technology.
    • Blogs
    • Technical Articles
    • Tutorials
    • Videos
    • Webinars
    Your ADI content all in one place.
    View ContentZone

    The Latest Read

    Clock Tree Design and Why “PLL Locked” Is Not Enough

    In high-performance RF systems, clocking architecture is a foundational element that directly governs signal integrity, synchronization, and overall system...

    New Release

    Signal Chain Designer: DC Error Simulation
    Signal Chain Designer: DC Error Simulation

    This video covers the DC error calculation capabilities of Signal Chain Designer. DC error is unique in that often requires calibration and has so many...

    Recent Technical Insights

    Latest Technical Article from Analog.com
    Improving Industrial Functional Safety Compliance with High Performance Supervisory CircuitsPart 5: Sequencers Eliminate Systematic Failures

    This article shifts focus from managing the quantitative metrics of functional safety toward mastering the qualitative yet equally critical challenge:...

EngineerZone
EngineerZone
MEMS Inertial Sensors
  • Log In
  • User
  • Site
  • Search
OR
Ask a Question
MEMS Inertial Sensors
MEMS Inertial Sensors
Documents Interface ADIS16364 with Arduino
  • Q&A
  • Files
  • FAQs/ Docs
  • Members
  • Tags
  • Cancel
  • +Documents
  • +3-D Model/STEP: FAQ
  • +AD22282-A-R2: FAQ
  • +ADIS16000: FAQ
  • +ADIS16003 MTBF: FAQ
  • +ADIS16006: FAQ
  • +ADIS16201: FAQ
  • +ADIS16203: FAQ
  • +ADIS16204: FAQ
  • +ADIS16209: FAQ
  • +ADIS16210: FAQ
  • +ADIS16223: FAQ
  • +ADIS16227: FAQ
  • +ADIS16228: FAQ
  • +ADIS16229: FAQ
  • +ADIS16240: FAQ
  • +ADIS16255: FAQ
  • +ADIS16355: FAQ
  • -ADIS16364: FAQ
    • ADIS16364 not working on EVAL-ADIS
    • Interface ADIS16364 with Arduino
    • The noise of ADIS16364
    • ADIS16364 EVB
    • ADIS16364: The purpose of temperature Sensor
  • +ADIS16365: FAQ
  • +ADIS16375: FAQ
  • +ADIS16385: FAQ
  • +ADIS16400: FAQ
  • +ADIS16405: FAQ
  • +ADIS16407: FAQ
  • +ADIS16445: FAQ
  • +ADIS16448: FAQ
  • +ADIS16460: FAQ
  • +ADIS16475: FAQ
  • +ADIS16477: FAQ
  • +ADIS1647x: FAQ
  • +ADIS16480: FAQ
  • +ADISUSB: FAQ
  • +ADXL001: FAQ
  • +ADXL203: FAQ
  • +ADIS16300: FAQ
  • +ADIS16485: FAQ
  • +ADIS16488: FAQ
  • +ADIS16488A: FAQ
  • +ADIS16490: FAQ
  • +ADIS16495: FAQ
  • +ADIS16497: FAQ
  • +ADXL103: FAQ
  • +ADXL150: FAQ
  • +ADxL193: FAQ
  • +ADXL202: FAQ
  • +ADXL206: FAQ
  • +ADXL210: FAQ
  • +ADXL210E: FAQ
  • +ADXL213: FAQ
  • +ADxL230: FAQ
  • +ADXL278: FAQ
  • +ADXL312: FAQ
  • +ADXL313: FAQ
  • +ADXL320: FAQ
  • +ADXL321: FAQ
  • +ADXL322: FAQ
  • +ADXL327: FAQ
  • +ADXL335: FAQ
  • +ADXL337: FAQ
  • +ADXL345: FAQ
  • +AD22290: FAQ
  • +ADIS16003: FAQ
  • +ADIS16133: FAQ
  • +ADIS16135: FAQ
  • +ADIS16265: FAQ
  • +ADIS16305: FAQ
  • +ADXL326: FAQ
  • +ADXL350: FAQ
  • +ADXL362: FAQ
  • +ADXL375: FAQ
  • +ADXL377: FAQ
  • +ADXL78: FAQ
  • +ADXRS150: FAQ
  • +ADXRS290: FAQ
  • +ADXRS300: FAQ
  • +ADXRS401: FAQ
  • +ADXRS453: FAQ
  • +ADXRS610: FAQ
  • +ADxRS614: FAQ
  • +ADXRS623: FAQ
  • +ADXRS646: FAQ
  • +ADXRS652: FAQ
  • +ADXRS800: FAQ
  • +ADIS16136: FAQ
  • +ADIS16137: FAQ
  • +ADIS16266: FAQ
  • +ADIS16334: FAQ
  • +ADIS16362 Evaluation Tool: FAQ
  • +ADIS16364 Evaluation Tool: FAQ
  • +ADIS16367: FAQ
  • +ADIS163xx: FAQ
  • +ADIS16489: FAQ
  • +ADIS1648x: FAQ
  • +ADXL346: FAQ
  • +ADXL363: FAQ
  • +EVAL-ADIS: FAQ
  • +EVAL-ADIS2: FAQ
  • +Filtering Functions: FAQ
  • +General: FAQ
  • +Gyroscope: FAQ
  • +Hard & Soft Iron Correction: FAQ
  • +ISEB USB: FAQ
  • +IMU: FAQ
  • +MEMS: FAQ
  • +Slip Ring Interface: FAQ
  • +SPI Troubleshooting: FAQ
  • +TEMP_OUT Variation: FAQ
  • +Test Procedures: FAQ
  • +AD590: FAQ
  • +AD5940: FAQ
  • +AD5941: FAQ
  • +AD595: FAQ
  • +AD8495: FAQ
  • +AD8497: FAQ
  • +ADIS16IMU2 FAQ:
  • +ADUCM355: FAQ
  • +ADXL343: FAQ
  • +ADXL357: FAQ
  • +ADXL367: FAQ
  • +Breakout Board FAQ:
  • +CN0429: FAQ
  • DS1922E: FAQ
  • +DS1922L: FAQ
  • +DS1922T: FAQ
  • +DS1923: FAQ
  • +EVAL-ADXL312-SDP: FAQ
  • +IMU/Gryoscope Alignment FAQ:
  • +iSensor FAQ:
  • +MAX30001: FAQ
  • +MAX30003: FAQ
  • +MAX30003CTI+: FAQ
  • +MAX30003WING: FAQ
  • +MAX30009EVKIT: FAQ
  • +MAX30134EVSYS: FAQ
  • +MAX9621: FAQ
  • +TMP01: FAQ
  • +Wireless Vibration Sensors FAQ:

Interface ADIS16364 with Arduino

Q:

How do I connect the ADIS16364 to my Arduino processor system?

---------------------------------------------------------------------------------------------

A:

This software package is an example of how to interface an ADIS16364 iSensor with an Arduino, and plot the data with a simple python program. This project can be used as a whole package, or you can use it to pick and choose code for things such as SPI communication, two's complement conversion, memory map for ADIS16364, python plotting, python serial communication, and much more.

The code project can be found on git hub:

https://github.com/agleason6/ADIS16364_example.git

From there you can download a .zip file, or clone the repository, or you can download the stable version from this FAQ page. Note that if you download the .zip file from github, you will have to change the name of the directory to just "ADIS16364_example"; github adds extra text to the directory name.

What you'll need

 

  • Arduino Uno or Arduino Mega 2560
  • ADIS16364 with breakout board
  • Jumper wires
  • Arduino IDE
  • Python with modules below, I tested this on Python 2.7
    • pySerial python module, see http://pyserial.sourceforge.net/
    • NumPy python module, see http://numpy.scipy.org/
    • SciPy python module, see http://www.scipy.org/
    • matplotlib python module, see http://matplotlib.sourceforge.net/

Connections

Using jumper wires, make connections from the ADIS16364 breakout board to the Arduino

as shown below:

Arduino Uno Connections:

CS   (J1-3)  - to digital pin 10 (SS)

SCLK (J1-2)  - to digital pin 13 (SCK)

DOUT (J1-4)  - to digital pin 12 (MISO)

DIN  (J1-6)  - to digital pin 11 (MOSI)

VCC  (J1-12) - to 5V

GND  (J1-9)  - to GND

Arduino Mega 2560 Connections:

CS   (J1-3)  - to digital pin 53 (SS)

SCLK (J1-2)  - to digital pin 52 (SCK)

DOUT (J1-4)  - to digital pin 50 (MISO)

DIN  (J1-6)  - to digital pin 51 (MOSI)

VCC  (J1-12) - to 5V

GND  (J1-9)  - to GND

See ADIS16364 datasheet Rev D, Figure 18, pg 17 for illustration of J1 and J2 connectors

https://www.analog.com/static/imported-files/data_sheets/ADIS16364.pdf

How to use

Once you've installed everything above, and made all the proper connections, it's time to

program the Arduino. First open up the ADIS164364.ino file with the Arduino IDE.

Press verify, and upload (after which you have properly setup the IDE with serial port, and device).

Now close the IDE, because you may have issues with the python plotting if you have both

programs trying to access the same serial port.

Plotting data with Python

usage: plot_data.py [-h] -p PORT -r RATE [-b] [-n NUM] [-s]

optional arguments:

  -h, --help            show this help message and exit

  -p PORT, --port PORT  Serial port, ie /dev/ttyACMX on Linux, or COMX on Windows

  -r RATE, --rate RATE  Baud rate

  -b, --bar             Show Bargraphs Instead of line plots

  -n NUM, --num NUM     Window width, default is 100 points

  -s, --smooth          Make lines look smoother

To run on Windows (COMX being the COM port that your Arduino is connected to):

python plot_data.py -p COMX -r 9600

To run on Linux:

python plot_data.py -p /dev/ttyACMX -r 9600

if you don't have udev setup for your Arduino, and you get permission issues, try running it as root:

sudo python plot_data.py -p /dev/ttyACMX -r 9600

Note: plot_data.py samples data as fast as python can plot, so it will run significantly slower than what the part is capable of. Please do not use this script to gauge the performance of the part. If you want to analyze performance, please checkout ADISUSB.

 

https://www.analog.com/en/mems-sensors/mems-inertial-sensors/adis16364/products/ADISUSB/eb.html

Enjoy,

agleason

Attachments:
ez.analog.com/.../ADIS16364_5F00_example.zip
Tags: code_examples software spi sensors firmware accelerometer Inertial Measurement Units (IMU) gyroscope imu adis16364 gyro Show More
  • Share
  • History
  • More
  • Cancel
analog-devices logo

About Analog Devices

  • Who We Are
  • Careers
  • Newsroom
  • What We Do (Signals+)
  • Investor RelationsExternalLink
  • Quality & Reliability
  • Sales and Distribution
  • What's New on Analog.com
  • Contact Us

Find Help

  • Support
  • Resources
  • WikiExternalLink
  • Analog Dialogue
  • ADI Developer PortalExternalLink

myAnalog

Interested in the latest news and articles about ADI products, design tools, training, and events?

Go to myAnalog
  • Instagram page
  • Twitter page
  • Linkedin page
  • Youtube page
  • Facebook
  • Legal and Risk
  • Accessibility
  • Privacy Policy
  • Privacy Settings
  • Cookie Settings

©2026 Analog Devices, Inc. All Rights Reserved

analog-devices

About Analog Devices

Down Up
  • Who We Are
  • Careers
  • Newsroom
  • What We Do (Signals+)
  • Investor RelationsExternalLink
  • Quality & Reliability
  • Sales and Distribution
  • What's New on Analog.com
  • Contact Us

Find Help

Down Up
  • Support
  • Resources
  • WikiExternalLink
  • Analog Dialogue
  • ADI Developer PortalExternalLink

myAnalog

Interested in the latest news and articles about ADI products, design tools, training, and events?

Go to myAnalog
Instagram page Facebook Twitter page Linkedin page Youtube page
  • Legal and Risk
  • Accessibility
  • Privacy Policy
  • Privacy Settings
  • Cookie Settings

©2026 Analog Devices, Inc. All Rights Reserved