You are currently viewing IMU – MPU-9250

IMU – MPU-9250

RioSH is constantly growing the Pepper environment with sensors and controllers so that you can spend less time soldering and more time being a mad scientist / evil genius / loving robot parent. The latest addition to the family is the ever-popular MPU-9250 inertial measurement unit (IMU). This IMU is used to measure motion by detecting rotational rates, the acceleration vector, and the local magnetic field direction. Using this data and some math you can build things to respond to or control motion! Just a few examples include a head motion tracker, a self-balancing robot, or perhaps even an aircraft autopilot. What will you create?

The Qwiic IMU MPU-9250 features the ever-popular 9-axis MEMS sensor from InvenSense. The MPU-9250 is a combined System-in-package (SIP) comprised of the MPU-6500 – a 3-axis gyroscope and 3-axis accelerometer combo – and the AK8963 3-axis magnetometer. The MPU-9250 replaces the popular EOL MPU-9150 and decreases power consumption by 44 percent. According to InvenSense, “Gyro noise performance is 3x better, and compass full-scale range is over 4x better than competitive offerings.” The MPU-9250 uses 16-bit Analog-to-Digital Converters (ADCs) for digitizing all nine axes, making it a very stable 9 Degrees of Freedom board.

The Qwiic IMU MPU-9250 board makes it easy to connect the sensor to an I2C bus with the sensor address of either 0x69 (default) or 0x68 (note: the default is the opposite of the default on the riosh9250 so be sure you select the right address in your code). In addition to the I2C bus pins we have exposed the frame synchronization input pin FSYNC and the software-configurable interrupt pin INT.

If you are looking to use the optional SPI interface to the MPU-9250 then you will need to use the pepper 9250 because the SDO pin is not broken out on the Qwiic version.

To top it all off we have provided two libraries to get you started with this IMU, both of which are available in the Arduino IDE by searching the library manager or following the Installing an Arduino Library tutorial.

  • The library provides direct access to sensor readings which can then be transformed into motion detection using algorithms on the microcontroller.


  • 2.54mm connectors for easy integration to I2C systems
  • Digital-output X-, Y-, and Z-axis angular rate sensors (gyroscopes) with a user-programmable full-scale range of ±250, ±500, ±1,000 and ±2,000°/sec and integrated 16-bit ADCs
  • Digital-output triple-axis accelerometer with a programmable full-scale range of ±2g, ±4g, ±8g and ±16g and integrated 16-bit ADCs
  • 3-axis silicon monolithic Hall-effect magnetic sensor with magnetic concentrator
  • Digitally programmable low-pass Gyroscope filter
  • Gyroscope operating current: 3.2mA
  • Accelerometer normal operating current: 450µA
  • Magnetometer normal operating current: 280µA at 8Hz repetition rate
  • VDD supply voltage range of 2.4 – 3.6V
  • Standard Qwiic board size 1″ x 1″ x 0.2″

RioSH Technology off

Leave a Reply