From: Johannes E. <joh...@er...> - 2002-05-04 19:27:45
|
On Sat, May 04, 2002, Marc Britten <yu...@mo...> wrote: > On Sat, 2002-05-04 at 13:46, Johannes Erdfelt wrote: > > On Sat, May 04, 2002, Marc Britten <yu...@mo...> wrote: > > > -- from the capture > > > [112527 ms] >>> URB 4 going down >>> > > > -- URB_FUNCTION_VENDOR_INTERFACE: > > > TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, > > > USBD_SHORT_TRANSFER_OK) USBD_TRANSFER_DIRECTION_IN. Usually these things are relative to the host. This case it would mean we're requesting data from the device. > > > TransferBufferLength = 00000004 > > > TransferBuffer = 8153a190 > > > TransferBufferMDL = 00000000 > > > UrbLink = 00000000 > > > RequestTypeReservedBits = 00000000 > > > Request = 00000001 > > > Value = 00000000 > > > Index = 00000000 > > > [112541 ms] UsbSnoop - MyInternalIOCTLCompletion(f5bf9da0) : > > > fido=814d8540, Irp=814ef5a8, Context=814445a8, IRQL=2 > > > [112542 ms] <<< URB 4 coming back <<< > > > -- URB_FUNCTION_CONTROL_TRANSFER: > > > PipeHandle = 814483d4 > > > TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, > > > USBD_SHORT_TRANSFER_OK) > > > TransferBufferLength = 00000004 > > > TransferBuffer = 8153a190 > > > TransferBufferMDL = 814db768 > > > 00000000: 00 00 00 00 > > > UrbLink = 00000000 > > > SetupPacket = > > > 00000000: c1 01 00 00 00 00 04 00 > > > > It looks like you have the direction wrong. Have you tried using an > > endpoint of 0x80 and then checking the contents of startup_buffer? > > sorry to be a pain, but what do you mean by the direction wrong? the > above capture is from the supported windows software(and works). how do > I specify an endpoint to try setting it to 0x80. Bitwise OR the requesttype with USB_ENDPOINT_IN (0x80). You can take a look at libusb/descriptors.c to see it being used. > Know of anyway to capture the URB's sent from the linux software? Not really. You can turn on debugging, but it won't be the same amount of information that usb snoopy does. JE |