Hi.
I have some problems with the return codes of hid_interrupt_read. If libhid has
a problem sending the packet to the device, it returns the same error code as
if it hit the timeout.
My main loop is this:
while( 1)
{
ret = hid_interrupt_read( theHid, theEndPoint, thePacket, thePacketLen, 20);
printf( "ret=%d\n", ret);
if( ret == HID_RET_SUCCESS )
{
... Process packet
}
else
{
... Do idle stuff
}
}
The output is:
ret=21
ret=21
ret=21
When I unplug the device:
USB error: error submitting URB: No such device
ret=21
USB error: error submitting URB: No such device
ret=21
Error 21 is HID_RET_FAIL_INT_READ, which is acceptable, bug a timeout is
strictly not a read failure.
Do I make any mistake using hid_interrupt_read, or is this a bug in libhid that
the URB submission error is reported on stderr, but not in the error code?
Any help appreciated.
PS: I use libhid to convert USB keyboard events to X11 events in order to make
radical keymap changes. See usbhotkey.sf.net for details.
--
Lars Krueger
http://LarsKrueger.homestead.com/files
mailto:[EMAIL PROTECTED]
Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer
_______________________________________________
libhid-discuss mailing list
[email protected]
http://lists.alioth.debian.org/mailman/listinfo/libhid-discuss