#i2c #i2c-dev #smbus

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

#1278 in Hardware support

Download history 393/week @ 2023-11-20 366/week @ 2023-11-27 407/week @ 2023-12-04 438/week @ 2023-12-11 352/week @ 2023-12-18 172/week @ 2023-12-25 361/week @ 2024-01-01 532/week @ 2024-01-08 321/week @ 2024-01-15 490/week @ 2024-01-22 442/week @ 2024-01-29 415/week @ 2024-02-05 522/week @ 2024-02-12 588/week @ 2024-02-19 316/week @ 2024-02-26 292/week @ 2024-03-04

1,755 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

~175–300KB