Motion Tracking Device ICM20948

The ICM20948 is a motion tracking device with a 3-axis

  • accelerometer
  • gyroscope
  • compass

The functionality is similar to the MPU9250 device however with a different programming interface.

To gain some insight how the ICM20948 could be used with the Raspberry Pi I did some basic tests described in this document:

https://github.com/michaelbiester/icm-20948/blob/master/icm_20948_getting_started.pdf

The document describes

  • how to connect the ICM20948 via I2C to the Raspberry Pi
  • how to do basic test / reading data from the chip with I2C tools of operating system on the Raspberry Pi
  • how to access the device with Python

A mini-project is available on GitHub. A Python program retrieves data of accelerometer, gyroscope and compass. A Jupyter notebook does some postprocessing on these data to show some properties of the accelerometer and the gyroscope. The Jupyter notebook and (for better readability) a PDF document are available:

https://github.com/michaelbiester/icm-20948/blob/master/jupyter_nb/ICM20948/trace_plot.ipynb

https://github.com/michaelbiester/icm-20948/blob/master/jupyter_nb/ICM20948/trace_plot.pdf