This is an implementation of the UsbBus trait of usb-device, simulating a USB device as a USBIP server.
This crate is not intended to be used in production ever.
It's purpose is to ease development of new UsbClass implementation or to emulate USB devices for easier embedded application development.
The usbip client can be stared in the following way:
sudo apt-get install linux-tools-genericThen, start the application.
cargo run --example serial_echoand then start the USBIP client.
// Start the vhci driver
sudo modprobe vhci-hcd
// List available devices
usbip list -r "localhost"
// Attach USB device
usbip attach -r "localhost" -b "1-1"
// List connected devices
usbip port
// Detach device
usbip detach -p "port"Depending on you machine setup, you might need do sudo.
This is a very alpha software, which still has a lot of quirks to be worked out.
- When using HID, the connection always fails the first time and usually works the second time. It is not entirely clear, why.
Apache-2.0 or MIT.