#i2c #i2c-dev #sm-bus

i2c-linux

Linux I2C device interface

4 releases

Uses old Rust 2015

0.1.2 Nov 18, 2018
0.1.1 Mar 29, 2018
0.1.0 Mar 25, 2018
0.0.1 Mar 17, 2018

#1575 in Hardware support

Download history 592/week @ 2024-09-22 615/week @ 2024-09-29 544/week @ 2024-10-06 589/week @ 2024-10-13 750/week @ 2024-10-20 643/week @ 2024-10-27 617/week @ 2024-11-03 764/week @ 2024-11-10 463/week @ 2024-11-17 506/week @ 2024-11-24 354/week @ 2024-12-01 519/week @ 2024-12-08 626/week @ 2024-12-15 174/week @ 2024-12-22 147/week @ 2024-12-29 426/week @ 2025-01-05

1,412 downloads per month
Used in 11 crates (4 directly)

MIT license

28KB
478 lines

i2c-linux

travis-badge release-badge docs-badge license-badge

i2c-linux provides safe bindings over the Linux I2C subsystem, and is an alternative to the i2cdev crate.

Documentation

See the documentation for up to date information.


lib.rs:

A safe interface to the Linux I2C and SMBus userspace subsystem.

Example

extern crate i2c_linux;
use i2c_linux::I2c;

let mut i2c = I2c::from_path("/dev/i2c-0")?;
i2c.smbus_set_slave_address(0x50, false)?;
let data = i2c.smbus_read_byte()?;
println!("Read I2C data: {}", data);

Cargo Features

  • i2c will impl i2c traits for I2c.
  • udev must be enabled to use Enumerator.

Dependencies

~200–325KB