I have all the details of the protocol for the device. However, what's coming back is a total mismatch -- not at all part of their defined protocol.
At this stage, I'm not trying to talk to the device at all -- all I was trying to do was submit a receive buffer, in advance of sending a message per the vendor protocol. A lot of things are working ok, in the sense that I am able to read the interface, pipe info, etc. thus the USB interface on the device is communicating. One point: the "device" target is a USB-RS232 converter in front of the physical device I'm trying to hit; do I need to wrap my messaging in some kind of rs232 header+checksum ? thanks. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dan Streetman Sent: November 12, 2007 8:21 PM To: Todd White Cc: javax-usb-devel@lists.sourceforge.net Subject: Re: [javax-usb-devel] bulk transfer device problem There is nothing intrinsically wrong with the device sending back 2 bytes for each submitted buffer, but it most likely indicates you are not correctly talking to the device. Do you know the protocol for this device? Also there is nothing wrong with non-zero data beyond the transferred length. On Nov 12, 2007 9:28 PM, Todd White <[EMAIL PROTECTED]> wrote: > 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 > javax-usb-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/javax-usb-devel > ------------------------------------------------------------------------- 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 javax-usb-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/javax-usb-devel