# IMU (am-5638)

![](https://content.gitbook.com/content/cQgnvayQud3Xf5sZi0wz/blobs/QULYNdYanxh4byILrMGg/image)

### Overview

The AndyMark **Inertial Measurement Unit (IMU)** is a compact, 3.3 V I2C device based on the BNO085 sensor. It provides accurate orientation, motion, and acceleration data for robotics applications. This sensor integrates a 3-axis accelerometer, gyroscope, and magnetometer, enabling precise tracking of heading, pitch, roll, and linear movement.

This page covers what the IMU is best suited for and how to get started. For detailed specifications, pinout, and mounting details, see **Specifications**. For sample code in Java and Blocks, along with setup instructions, see **Examples**.

### When to use this sensor

* **Orientation tracking** for field-oriented control or navigation.
* **Heading stabilization** for drive systems, arms, or turrets.
* Measuring **linear acceleration** for movement profiling or detecting sudden impacts.
* Providing **quaternion data** for advanced motion calculations in autonomous programming.

### What this sensor is not

* It’s not a GPS; it cannot determine absolute position on the field without additional systems.
* It’s not an optical device and cannot detect visual markers—pair with vision systems if needed.

### Highlights (at a glance)

* **9-axis IMU** combining accelerometer, gyroscope, and magnetometer.
* Outputs **quaternion**, **yaw/pitch/roll**, and **linear acceleration** data.
* **Standard I2C interface** (see **Specifications** for address and bus speed).
* Works with 3.3 V controllers and microcontrollers.
* **Keyed 4-pin** connector for straightforward wiring (see **Specifications → Wiring**).
* Ready-to-use example code in OnBot Java and Blocks (see **Examples**).

### Typical integrations

* Enable **field-centric driving** in holonomic drive robots.
* Keep manipulators or arms at a fixed angle during movement.
* Detect tipping or impacts for safety shutdowns.
* Smooth out autonomous navigation with real-time orientation correction.

### Best-practice tips

* **Calibrate before use:** Allow the IMU to stabilize and run its built-in calibration routines.
* **Mount rigidly:** Avoid flexing or vibration that could introduce noise into measurements.
* **Magnetic interference matters:** Keep away from large motors, steel structures, or high-current wiring when possible.
* **Use sensor fusion:** Quaternions generally give smoother and more reliable results than raw yaw/pitch/roll readings alone.
