Changes after my own PR review

This commit is contained in:
jochen@g14
2024-03-30 23:23:37 +01:00
parent fde2f3ba15
commit 0674e7f61c
11 changed files with 268 additions and 592 deletions

View File

@@ -11,11 +11,9 @@ impl USBRaw {
pub fn new(id_product: u16) -> Result<Self> {
for device in rusb::devices()?.iter() {
let device_desc = device.device_descriptor()?;
if device_desc.vendor_id() == 0x0b05 {
if device_desc.product_id() == id_product {
let handle = Self::get_dev_handle(&device)?;
return Ok(Self(handle));
}
if device_desc.vendor_id() == 0x0b05 && device_desc.product_id() == id_product {
let handle = Self::get_dev_handle(&device)?;
return Ok(Self(handle));
}
}
@@ -28,17 +26,11 @@ impl USBRaw {
fn get_dev_handle(
device: &Device<rusb::GlobalContext>,
) -> Result<DeviceHandle<rusb::GlobalContext>> {
// We don't expect this ID to ever change
let device_open = device.open();
if let Err(err) = device_open {
panic!("Could not open device, try running as root: {}", err);
} else {
let mut device = device_open.unwrap();
device.reset()?;
device.set_auto_detach_kernel_driver(true)?;
device.claim_interface(0)?;
Ok(device)
}
let mut device = device.open()?;
device.reset()?;
device.set_auto_detach_kernel_driver(true)?;
device.claim_interface(0)?;
Ok(device)
}
pub fn write_bytes(&self, message: &[u8]) -> Result<usize> {