#embedded-hal-driver #accelerometer #compass #mems

no-std lsm303c

A platform agnostic driver to interface with the LSM303C (accelerometer + compass)

7 releases

Uses old Rust 2015

0.2.0 Aug 28, 2019
0.1.5 Oct 24, 2018

#724 in Embedded development

23 downloads per month


827 lines


no_std driver for the lsm303c (accelerometer + magnetometer/compass).

Build Status

What works

  • To be tested

Supported chips

  • LSM303C;

Basic usage

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

version = "<version>"

Use embedded-hal implementation to get I2C handle and delay then create lsm303c handle:

extern crate lsm303c; // or just use lsm303c; if 2018 edition is used.

// to create sensor with default configuration:
let mut lsm = LSM303::default(l2c, &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.


API Docs available on docs.rs.


Licensed under either of

at your option.


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