#imu #accelerometer #spi-interface #gyroscope #driver #dof #6-axis

lsm6ds3tr

LSM6DS3TR 6-axis (DOF) IMU accelerometer & gyroscope rust driver library

3 unstable releases

0.1.1 Jun 22, 2023
0.1.0 Mar 24, 2023
0.0.0 Jan 26, 2023

#890 in Hardware support

MIT license

3.5MB
1.5K SLoC

LSM6DS3TR-C Rust

Crates.io Docs

LSM6DS3TR-C 6-axis (DOF) IMU accelerometer & gyroscope rust driver library.

Inspired by LSM9DS1 rust driver.

Examples

use lsm6ds3tr::{interface::SpiInterface, AccelScale, LsmSettings, LSM6DS3TR};

//...

let spi_interface = SpiInterface::new(spi, spi_cs);
let mut imu = LSM6DS3TR::new(spi_interface).with_settings(LsmSettings::basic());
imu.init().expect("LSM6DS3TR-C initialization failure!");
if let (Ok(xyz_a), Ok(xyz_g)) = (imu.read_accel(), imu.read_gyro()) {
    dbg!(xyz_a, xyz_g);
}

See my LightCube project for application usages.

Dependencies