Crate hidapi[−][src]
This crate provides a rust abstraction over the features of the C library hidapi by signal11.
Usage
This crate is on crates.io and can be
used by adding hidapi
to the dependencies in your project's Cargo.toml
.
[dependencies]
hidapi = "0.3"
Example
extern crate hidapi; let api = hidapi::HidApi::new().unwrap(); // Print out information about all connected devices for device in &api.devices() { println!("{:#?}", device); } // Connect to device using its VID and PID let (VID, PID) = (0x0123, 0x3456); let device = api.open(VID, PID).unwrap(); // Read data from device let mut buf = [0u8; 8]; let res = device.read(&mut buf[..]).unwrap(); println!("Read: {:?}", &buf[..res]); // Write data to device let buf = [0u8, 1, 2, 3, 4]; let res = device.write(&buf).unwrap(); println!("Wrote: {:?} byte(s)", res);
Structs
HidApi |
Object for handling hidapi context and implementing RAII for it. Only one instance can exist at a time. |
HidDevice |
Object for accessing HID device |
HidDeviceInfo |
Storage for device related information |
Type Definitions
HidError | |
HidResult |