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
    • Power Studio Designer
    • Power Studio Planner
    • Reference Designs
    • Robot Operating System (ROS) SDK
    • Signal Chain Power (SCP)
    • Software Interface Tools
    • System Demonstration Platform (SDP) Support
  • Learn

    Highlighted Webinar

    Power Management Fundamentals II Session 4: Isolated Converters Explained

    What does isolation mean for power topologies? Let's review what galvanic isolation means and go through the terminology and standards. We'll explore isolation...

    Places

    • ADI Academy
    • ADI Webinars
    • 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
    • Precision Technology Signal Chains Library
    • Software Modules and SDKs Library
    • Supervisory Circuits Library
    • Wireless Sensor Networks Library

    Latest Webinars

    • Power Management Fundamentals II Session 6: Key Layout Considerations for Power
    • A 16T/16R X-Band Direct Sampling Phased Array Subsystem using Apollo MxFE
    • Power Management Fundamentals II Session 5: Deeper Look into Power Protection
    • Power Management Fundamentals II Session 4: Isolated Converters Explained
    • Maximize Your Power Regulator: Key Considerations for Thermal Performance
    View All Webinars
  • Community Hub

    Challenge Yourself!

      KCC's Quizzes AQQ296 about repairing an equation in a digital display

      1. Quote of this month: " When I die, I want to die like my grandfather who died peacefully in his sleep. Not screaming like all the passengers in his...

    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 from the blog: Too Much Chatter and Not Enough Talk - Learn the Benefits...

    View All

    Places

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

    Resources

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

    Highlighted Blogs

    The Power Problem Inside Every AI Breakthrough: Part 1 of 3

    Artificial intelligence isn’t just changing how we interact with the world; it’s transforming the very hardware that makes it all possible. As AI invades...

     

    Simplifying Stability with EVAL-KW4503Z: Part 1 of 3

    Sensors are all around us. They help our gadgets, appliances, and electronic equipment "notice" what's happening in our environment. Essentially, they...

    Latest Blogs

    • Energy Transfer Considerations in Isolated SMPS: Part 2 of 4
    • Automating LTspice .NOISE Measurements with .STEP and .MEAS Directives: Part 2 of 3
    • ​​Channel Specification: The Key to GMSL Compliance​
    • Understanding Voltage Domain Isolation in Field-Bus Systems
    • Ethernet-APL’s Impact on Functional, Intrinsic, and Cyber Safety
    Read All Blogs

    ADI Blogs

    • EZ Spotlight
    • The Engineering Mind
  • ContentZone

    Visit ContentZone

    ContentZone

    Technical articles. Blogs. Videos. Your ADI content, all in one place.

    View ContentZone

    Featured Content

    Featured Content Title

    Blurb About Content

    View Content By Industry

    • Aerospace and Defense Systems
    • Automotive Solutions
    • Consumer Technology Solutions
    • Data Center Solutions
    • Energy Solutions
    • Healthcare Solutions
    • Industrial Automation Technology Solutions
    • Instrumentation and Measurement Solutions
    • Intelligent Building Solutions
    • Wireless Communication Solutions

    View Content By Technology

    • A2B Audio Bus
    • ADI OtoSense Predictive Maintenance Solutions
    • Dynamic Speaker Management
    • Gallium Nitride (GaN) Technology
    • Gigabit Multimedia Serial Link (GMSL)
    • Industrial Vision
    • Power Solutions
    • Precision Technology
    • RF
    • Sensor Interfaces
    • SmartMesh
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
  • Forums
  • 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
  • +AD8495: FAQ
  • +AD8497: FAQ
  • +ADUCM355: FAQ
  • +ADXL343: FAQ
  • +ADXL357: FAQ
  • +ADXL367: FAQ
  • +CN0429: FAQ
  • DS1922E: FAQ
  • +DS1922L: FAQ
  • +DS1922T: FAQ
  • +DS1923: FAQ
  • +EVAL-ADXL312-SDP: FAQ
  • +MAX30001: FAQ
  • +MAX30003: FAQ
  • +MAX30003CTI+: FAQ
  • +MAX30003WING: FAQ
  • +MAX30009EVKIT: FAQ
  • +MAX30134EVSYS: FAQ
  • +MAX9621: FAQ
  • +TMP01: 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