[opensuse-programming] libusb and LIBUSB_TRANSFER_CANCELLED
I am experiencing a frustrating problem with a USB device. The device has linux support and uses libusb in asynchronous mode via libusb_fill_interrupt_transfer(). The device is a multi-button device (http://xkeys.com/xkeys/xk24.php). The problem is that, after a random amount of time, the callback registered with libusb_fill_interrupt_transfer() is called with the status LIBUSB_TRANSFER_CANCELLED. There is no need for there to be any user interaction with the device when this happens. It just appears. After this happens, libusb no longer provides any events. In a search, I see some info about this when packets larger than 16k are involved. In the case of this device, the packets are more on the order of 80 bytes. The solution was a newer kernel and libusb. But that was only for devices sending >16k packets. Unfortunately this is on openSUSE 11.2. I cannot update these systems at this time. So I need to see what is happening to see if there is anything I can do. Has anyone come across this kind of behavior on openSUSE? I am using libusb 1.0.2, which seems to be the one that goes with kernel 2.6.31. I have of course asked the supplier. But I get a feeling that may not lead anywhere. The officially support Ubuntu. Support requests seem to disappear. Yours sincerely, Roger Oberholtzer OPQ Systems / Ramböll RST Office: Int +46 10-615 60 20 Mobile: Int +46 70-815 1696 roger.oberholtzer@ramboll.se ________________________________________ Ramböll Sverige AB Krukmakargatan 21 P.O. Box 17009 SE-104 62 Stockholm, Sweden www.rambollrst.se -- To unsubscribe, e-mail: opensuse-programming+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-programming+owner@opensuse.org
participants (1)
-
Roger Oberholtzer