#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

#1354 in Hardware support

Download history 346/week @ 2024-03-14 418/week @ 2024-03-21 364/week @ 2024-03-28 350/week @ 2024-04-04 332/week @ 2024-04-11 294/week @ 2024-04-18 485/week @ 2024-04-25 368/week @ 2024-05-02 468/week @ 2024-05-09 473/week @ 2024-05-16 388/week @ 2024-05-23 441/week @ 2024-05-30 269/week @ 2024-06-06 393/week @ 2024-06-13 465/week @ 2024-06-20 517/week @ 2024-06-27

1,713 downloads per month
Used in 10 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–320KB