ICM20948 9DoF Motion Sensor Breakout

by Pimoroni

This ICM-20948 motion sensor is the bee's knees! Detect movement in nine different ranges of motion: 3-axis acceleration, 3-axis gyroscopic motion, and 3-axis compass heading.

Use this sensor in your DIY robot or drone builds to measure three different types of motion in three different axes accurately with 16-bit resolution. It's really low-power too, so it's ideal for embedding in battery-powered projects, and it's Raspberry Pi and Arduino-compatible.

This I2C breakout is compatible with our modular Breakout Garden system, which is designed to make working with breakouts straightforward - just pop it into a Breakout Garden slot and start to grow your project, create, and code. It's also Qw/ST compatible, which means it can be connected up to any microcontroller or add-on with a Qwiic or STEMMA QT connector using a Qw/ST cable - no soldering required!

Features

  • ICM-20948 9DoF motion sensor (datasheet)
    • ±2/±4/±8/±16 g 3-axis accelerometer
    • ±250/±500/±1000/±2000 DPS (degrees per second) 3-axis gyroscope
    • 3-axis compass with wide range up to ±4900 μT
    • 16-bit data output
  • I2C interface (address 0x68/0x69 (cut trace))
  • 3.3V or 5V compatible
  • Raspberry Pi-compatible pinout (pins 1, 3, 5, 7, 9)
  • Breakout Garden connector (with reverse polarity protection)
  • Qwiic/STEMMA QT connector (*on breakouts manufactured after October 2022)
  • Compatible with Raspberry Pi computers (Python library)
  • Compatible with Arduino

Kit includes

  • ICM-20948 9DoF breakout
  • 1x5 pin header
  • 1x5 socket right-angle header

We've designed this breakout board so that you can solder on the piece of right angle socket header and pop it straight onto the bottom left 5 pins on your Raspberry Pi's GPIO header (pins 1, 3, 5, 7, 9).

Software

We've put together a Python library that you can use to read data from your ICM-20948 9DoF Breakout and a couple of examples of reading data from it.

Resources