Hi all,<br> <div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">When I was doing some libusb work, I found that I needed to unbind the<br>
interface from the driver before I could claim it with libusb. The<br>
interface will remain unclaimed until the device is connected again. I<br>
currently run the following commands to unbind the interface whenever<br>
I need to use the device and libusb can't claim the interface.<br>
<br>
# cd /sys/bus/usb/drivers/usbhid<br>
# echo -n interface > unbind<br>
"interface" is the name of the interface in the<br>
/sys/bus/usb/drivers/usbhid folder. For my device, it was something<br>
like "6-2:1.0". It will look similar for your device. From your lsusb<br>
output, I'd guess that your interface would have the identifier<br>
"4-2:1.0". The first part of that identifier varies based on which bus<br>
and port number your device is plugged into and the second part varies<br>
with the configuration number (usually always 1) and the interface<br>
number.<br>
</blockquote><div><br>I tried that, and the device doesn't appear in /sys/bus/usb/drivers/usbhid. Nor does it appear under any /sys/bus/usb/drivers directory:<br><br>root@puigmal:/sys/bus/usb# ls -R<br>.:<br>devices drivers drivers_autoprobe drivers_probe uevent<br>
<br>./devices:<br>1-0:1.0 3-1 3-1:1.2 4-1 4-2:1.0 usb1 usb4<br>2-0:1.0 3-1:1.0 3-1:1.3 4-1:1.0 5-0:1.0 usb2 usb5<br>3-0:1.0 3-1:1.1 4-0:1.0 4-2 6-0:1.0 usb3 usb6<br><br>./drivers:<br>btusb hiddev hub usb usbfs usbhid<br>
<br>./drivers/btusb:<br>3-1:1.0 3-1:1.1 bind module new_id uevent unbind<br><br>./drivers/hiddev:<br>bind module new_id uevent unbind<br><br>./drivers/hub:<br>1-0:1.0 3-0:1.0 5-0:1.0 bind new_id unbind<br>
2-0:1.0 4-0:1.0 6-0:1.0 module uevent<br><br>./drivers/usb:<br>3-1 4-1 4-2 bind uevent unbind usb1 usb2 usb3 usb4 usb5 usb6<br><br>./drivers/usbfs:<br>bind module new_id uevent unbind<br><br>./drivers/usbhid:<br>
4-1:1.0 4-2:1.0 bind module new_id uevent unbind<br><br>root@puigmal:/sys/bus/usb# lsusb<br>Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub<br>Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub<br>
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub<br>Bus 004 Device 004: ID 047d:1062 Kensington PocketMouse Max<br>Bus 004 Device 003: ID 0fde:ca01 <br>Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub<br>
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub<br>Bus 003 Device 002: ID 03f0:171d Hewlett-Packard Wireless (Bluetooth + WLAN) Interface [Integrated Module]<br>Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub<br>
<br><br>This was done just after starting the computer and plugging in the weather station, before running any C program. <br><br> Might there be any other program claiming the interface? How could I check that?<br> <br>Thanks,<br>
Jordi<br></div></div><br>