This is a C++ library meant for communication using I2C with the IMU sensor ICM20948, like the one found in the popular Sparkfun 9DoF IMU Breakout. Suitable for use with Raspberry Pi and similar projects.
All the necessary registers and values have been taken from the sensor's manual.
The library contains YAML parsing functionality to configure the sensor. Options include:
- Accelerometer settings
- Measurement range
- Inner sample rate (the frequency the inner microprocessor samples new values and stores them into its registers)
- Digital Low-Pass Filter settings
- Gyroscope settings
- Measurement range
- Inner sample rate (the frequency the inner microprocessor samples new values and stores them into its registers)
- Digital Low-Pass Filter settings
- Magnetometer settings
- Inner sample rate (the frequency the inner microprocessor samples new values and stores them into its registers)
- For parsing YAML files package uses yaml-cpp. It can be installed either following the steps on the repo link, or by running:
sudo apt-get install libyaml-cpp-dev
- Dependency for I2C communication is mraa. Installation instruction can be found on the repo link.
Example files and usage can be found under examples folder. Just run make
command inside it and executables will be generated.