I've combed thru the archives of this mailing list for an answer to this, no
luck - I hope that someone here may have an idea.

I'm trying to communicate with a bulk transfer device, which exposes 1
interface with 2 pipes (1 x in, 1 x out).

Prior to sending any outbound data, I am submitting a byte[64] buffer to the
IN pipe, wMaxPacketSize = 64.  I have tried both (1) asyncSubmit (with a
UsbPipeListener) and (2) syncSubmit on a dedicated thread.  In all cases the
request returns immediately AND the buffer always contains the same data: 

[urb](2) JavaxUsb.h.debug_urb[273] complete_pipe_request : URB endpoint = 81
status = 0 signal = 0
[urb](2) JavaxUsb.h.debug_urb[274] complete_pipe_request : URB buffer length
= 64 actual length = 2
[urb](3) JavaxUsb.h.debug_urb[288] complete_pipe_request : URB data = 01 64
81 c0 63 6c 61 73 73 5c 78 32 66 75 73 62 5f 65 6e 64 70 6f 69 6e 74 5c 78
32 66 75 73 62 64 65 76 32 2e 32 5f 65 70 30 32 00 00 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 00 00 00 00

Note that the "actual length" is reported as 2 bytes but there is a lot of
other data there.  Significant?

I have set up loops where a new (empty) buffers are repeatedly submitted;
the data coming back is always the same.

I'm wondering why it's returning right away...my understanding was that the
input buffer would be populated only when the device sent some data, which I
would expect in response to an outbound message.

System info:
Linux Kernel 2.6.22
Ubuntu 7.10
Device vendor = 0x403
Device product = 0x6001

Thanks for your time guys.



-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
javax-usb-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/javax-usb-devel

Reply via email to