Crate hidapi[][src]

Expand description

This crate provides a rust abstraction over the features of the C library hidapi by signal11.


This crate is on and can be used by adding hidapi to the dependencies in your project’s Cargo.toml.


extern crate hidapi;

use hidapi::HidApi;

fn main() {
    println!("Printing all available hid devices:");

    match HidApi::new() {
        Ok(api) => {
            for device in api.device_list() {
                println!("{:04x}:{:04x}", device.vendor_id(), device.product_id());
        Err(e) => {
            eprintln!("Error: {}", e);


Device information. Use accessors to extract information about Hid devices.

Object for handling hidapi context and implementing RAII for it. Only one instance can exist at a time.

Object for accessing HID device


Storage for device related information


Type Definitions