From: Xiaofan C. <xia...@gm...> - 2013-06-13 09:06:31
|
On Thu, Jun 13, 2013 at 3:41 PM, toannt <toa...@gm...> wrote: > Hi all, > I'm writing a sample application to simulate USB Transfers to USB Mini > Pocket Airpen. > I'm using the URBs capturing by USBLyzer application and libusb 1.0.9. You should try out libusbx instead if you work under Windows. libusb-1.0.9 release is broken under Windows. http://sourceforge.net/projects/libusbx/files/releases/1.0.15/binaries/ > My problem is that: All URBs are simulated successfully except for 1 Control > Transfer URB as below: > The result of USBLyzer on Windows: > > /Sent package: > USBPDO-1 - usbehci: > Request: get descriptor from endpoint. (code 0x24 on Windows). > Request Details: report. > I/O: in. > URB details: > Reserved 1: 0000h. > Index: 00h. > Descriptor type: 22h. > LanguageId: 0001h. > Reserved 2: 0000h. > Length: 64h. > > Respond package: > Usbehci - USBPDO-1: > URB details: > Setup package: > bmRequestType: 82h > bRequest: 06h. > wValue: 2200h. > wIndex: 0001h. > wLength: 0064h. > return actual length: 24h./ Just guessing here, could it be that bmRequestType is not really 0x82h but rather 0x81h, then it is a standard HID class request to get the report descriptor. Ref: http://people.redhat.com/zaitcev/notes/usb_stern_cheat.txt http://www.usb.org/developers/devclass_docs/HID1_11.pdf -- Xiaofan |