mpu9250

no_std driver for the MPU9250 & onboard AK8963 (accelerometer + gyroscope + magnetometer IMU).

Build Status

What works

Imu mode also works with mpu6500 (see #1 for details).

Basic usage

Include library as a dependency in your Cargo.toml crates.io:

[dependencies.mpu9250] version = "<version>"

Use embedded-hal implementation to get SPI, NCS, and delay, then create mpu handle:

```rust extern crate mpu9250; // or just use mpu9250; if 2018 edition is used.

// to create sensor with mag support and default configuration: let mut imu = Mpu9250::margdefault(spi, ncs, &mut delay)?; // to create sensor without mag support and default configuration: let mut marg = Mpu9250::imu_default(spi, ncs, &mut delay)?; // to get all supported measurements: let all = marg.all()?; println!("{:?}", all); ```

More examples

Number of examples can be found in proving-ground repo. Examples include: reading temperature, calibrating magnetrometer, reading all sensors.

Documentation

API Docs available on docs.rs.

License

Licensed under either of

at your option.

Testimonials

Started off as a fork of japaric's mpu9250 repo.