You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(5) |
Nov
(27) |
Dec
(9) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(2) |
Feb
(19) |
Mar
(13) |
Apr
(15) |
May
(11) |
Jun
(17) |
Jul
(31) |
Aug
(45) |
Sep
(10) |
Oct
(40) |
Nov
(39) |
Dec
(45) |
| 2005 |
Jan
(113) |
Feb
(45) |
Mar
(38) |
Apr
(53) |
May
(11) |
Jun
(42) |
Jul
(56) |
Aug
(50) |
Sep
(32) |
Oct
(32) |
Nov
(47) |
Dec
(22) |
| 2006 |
Jan
(19) |
Feb
(32) |
Mar
(40) |
Apr
(40) |
May
(41) |
Jun
(44) |
Jul
(37) |
Aug
(51) |
Sep
(30) |
Oct
(30) |
Nov
(51) |
Dec
(20) |
| 2007 |
Jan
(7) |
Feb
(20) |
Mar
(17) |
Apr
(67) |
May
(13) |
Jun
(73) |
Jul
(16) |
Aug
(58) |
Sep
(29) |
Oct
(5) |
Nov
(74) |
Dec
(9) |
| 2008 |
Jan
(17) |
Feb
(12) |
Mar
(65) |
Apr
(22) |
May
(40) |
Jun
(32) |
Jul
(11) |
Aug
(8) |
Sep
(3) |
Oct
(41) |
Nov
(34) |
Dec
(12) |
| 2009 |
Jan
(44) |
Feb
(33) |
Mar
(16) |
Apr
(109) |
May
(11) |
Jun
(22) |
Jul
(21) |
Aug
(37) |
Sep
(5) |
Oct
(23) |
Nov
(7) |
Dec
(7) |
| 2010 |
Jan
(36) |
Feb
(40) |
Mar
(35) |
Apr
(45) |
May
(42) |
Jun
(104) |
Jul
(135) |
Aug
(50) |
Sep
(65) |
Oct
(110) |
Nov
(129) |
Dec
(75) |
| 2011 |
Jan
(105) |
Feb
(48) |
Mar
(93) |
Apr
(166) |
May
(169) |
Jun
(188) |
Jul
(106) |
Aug
(33) |
Sep
(85) |
Oct
(46) |
Nov
(102) |
Dec
(105) |
| 2012 |
Jan
(81) |
Feb
(115) |
Mar
(56) |
Apr
(93) |
May
(56) |
Jun
(77) |
Jul
(88) |
Aug
(52) |
Sep
(72) |
Oct
(16) |
Nov
(70) |
Dec
(70) |
| 2013 |
Jan
(23) |
Feb
(85) |
Mar
(38) |
Apr
(48) |
May
(40) |
Jun
(49) |
Jul
(33) |
Aug
(28) |
Sep
(66) |
Oct
(28) |
Nov
(28) |
Dec
(16) |
| 2014 |
Jan
(33) |
Feb
(58) |
Mar
(17) |
Apr
(50) |
May
(16) |
Jun
(24) |
Jul
(19) |
Aug
(32) |
Sep
(10) |
Oct
(10) |
Nov
(4) |
Dec
(10) |
| 2015 |
Jan
(11) |
Feb
(2) |
Mar
(4) |
Apr
(14) |
May
(1) |
Jun
(6) |
Jul
(16) |
Aug
(29) |
Sep
(6) |
Oct
(26) |
Nov
(10) |
Dec
|
| 2016 |
Jan
|
Feb
(20) |
Mar
(6) |
Apr
|
May
(3) |
Jun
(3) |
Jul
|
Aug
(16) |
Sep
(6) |
Oct
|
Nov
(15) |
Dec
|
| 2017 |
Jan
(1) |
Feb
(2) |
Mar
(4) |
Apr
|
May
(1) |
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
(1) |
| 2018 |
Jan
|
Feb
(8) |
Mar
(10) |
Apr
(16) |
May
|
Jun
(15) |
Jul
|
Aug
(3) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| 2019 |
Jan
|
Feb
|
Mar
(1) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(3) |
Oct
|
Nov
|
Dec
|
| 2020 |
Jan
|
Feb
|
Mar
|
Apr
(5) |
May
|
Jun
|
Jul
(7) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2021 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(5) |
Jul
(3) |
Aug
|
Sep
(6) |
Oct
(2) |
Nov
(4) |
Dec
|
| 2022 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
(1) |
May
|
Jun
(5) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2023 |
Jan
(5) |
Feb
(1) |
Mar
|
Apr
(3) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2024 |
Jan
|
Feb
(3) |
Mar
(1) |
Apr
(1) |
May
(11) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(3) |
Nov
(3) |
Dec
|
|
From: Carl K. <car...@gm...> - 2007-08-15 05:40:30
|
I'm using the latest version you can download.
I reckon I'm going to try this:
Open the device
try reading the feature report
if that fails then
call usb_setconfiguration
try reading the feature report again
end if
every frame try reading the input report using usb control messages
close the device
But on this vista computer, reading the feature report without setting
the configuration always fails. Hopefully with the filter driver,
reading the feature report will work the first time, so it will never
call usb_setconfiguration and thus never lock up the computer forcing
them to reboot. But I haven't tested that yet.
On 15/08/07, Xiaofan Chen <xia...@gm...> wrote:
> On 8/15/07, Carl Kenner <car...@gm...> wrote:
> > OK, I tried it without setting the configuration or claiming the
> > interface, and it didn't work on my Vista computer with the Device
> > Driver. I then tried it without claiming the interface, but still
> > setting the configuration and it worked.
>
> Kind of strange. Which version of libusb are you using?
> Still I have no Vista...
>
> > The problem is that setting the configuration is the call that crashed
> > it on the filter driver on XP.
> >
> > So is there some way of knowing beforehand whether a call to
> > SetConfiguration is going to freeze my program and force the user to
> > reboot, or not?
>
> I am not so sure here. But the HID driver can be the issue. That
> is why I asked Stephan to add the native Windows HID backend
> to libusb-win32.
>
> When I first started with libusb-win32 with PICkit 2, the same BSOD
> happened. It turned out that I could not use the libusb-win32 filter
> driver since it is an HID device but has a second configuration.
>
> Xiaofan
>
> -------------------------------------------------------------------------
> 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/
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>
|
|
From: Xiaofan C. <xia...@gm...> - 2007-08-14 23:59:57
|
On 8/15/07, Carl Kenner <car...@gm...> wrote: > OK, I tried it without setting the configuration or claiming the > interface, and it didn't work on my Vista computer with the Device > Driver. I then tried it without claiming the interface, but still > setting the configuration and it worked. Kind of strange. Which version of libusb are you using? Still I have no Vista... > The problem is that setting the configuration is the call that crashed > it on the filter driver on XP. > > So is there some way of knowing beforehand whether a call to > SetConfiguration is going to freeze my program and force the user to > reboot, or not? I am not so sure here. But the HID driver can be the issue. That is why I asked Stephan to add the native Windows HID backend to libusb-win32. When I first started with libusb-win32 with PICkit 2, the same BSOD happened. It turned out that I could not use the libusb-win32 filter driver since it is an HID device but has a second configuration. Xiaofan |
|
From: Xiaofan C. <xia...@gm...> - 2007-08-14 23:11:39
|
On 8/14/07, Krakora, Robert V <rob...@de...> wrote: > I ported libhid to Windows as it uses libusb on which libusb-win32 is > based. It takes care of claiming the interface for interrupt endpoints > and has an API call to retrieve data from interrupt endpoints. I added > an extra parameter to one of the API functions so that the configuration > as well as the interface could be selected. Previously, I was using the > Windows HID API which was quite confusing to use. Here is the link to > libhid: > Thanks for the info. Where can I get this Windows port of libhid? I am monitoring the libhid list and have not heard this. Regards, Xiaofan |
|
From: Andrew V. <and...@gm...> - 2007-08-14 20:48:43
|
Hello, I'm new to libusb-win32, libusb and usb but I hope that I'm not asking stupid or already answered questions. Anyway, please excuse me if so. Here is my problem: If I execute next call sequence hControl = usb_open(DeviceName); hData = usb_open(DeviceName); usb_set_configuration(hControl, 1); usb_claim_interface(hControl, 6); usb_set_altinterface(hControl, 0); usb_set_configuration(hData, 1); usb_claim_interface(hData, 7); usb_set_altinterface(hData, 1); usb_bulk_write(hData, 0x8, pBuffer, dwLength, dwTimeout); // write 26 bytes usb_bulk_read(hData, 0x88, pBuffer, dwLength, dwTimeout); // read 3 bytes (for device description please look below) I'm getting random failures - usb_set_configuration(), usb_claim_interface(), usb_set_altinterface() or usb_bulk_read() might fail. My best result was stable failure at usb_bulk_read() - usb_strerror() was saying that attached device is not functioning. Now, after reinstalling couple of things, I've failure at usb_set_altinterface () saying "usb_set_altinterface: could not set alt interface 6/0: win error: Not enough storage is available to process this command." I'm running WinXP SP2. I tried lubusb-win32 as filter and as driver (driver worked more stable). Basically my code is simplified and reworked replica of http://dev.zuckschwerdt.org/openobex/browser/trunk/lib/usbobex.c (I'm prototyping OBEX application). I tried building openobex with libusb-win32 and got exactly the same result as with my code. So, I guess problem is somewhere in libusb-win32. Could anyone help me to make bulk read/write working? DLL version: 0.1.12.1 Driver version: 0.1.12.1 bus-0/\\.\libusb0-0001--0x0421-0x04f0 0421/04F0 - Manufacturer : Nokia - Product : Nokia N95 wTotalLength: 466 bNumInterfaces: 16 bConfigurationValue: 1 iConfiguration: 4 bmAttributes: c0h MaxPower: 50 bInterfaceNumber: 0 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 2 bInterfaceSubClass: 8 bInterfaceProtocol: 0 iInterface: 0 bInterfaceNumber: 1 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 2 bInterfaceSubClass: 8 bInterfaceProtocol: 1 iInterface: 0 bInterfaceNumber: 2 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 2 bInterfaceSubClass: 254 bInterfaceProtocol: 0 iInterface: 0 bInterfaceNumber: 3 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bInterfaceNumber: 3 bAlternateSetting: 1 bNumEndpoints: 2 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bEndpointAddress: 03h bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bEndpointAddress: 82h bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bInterfaceNumber: 4 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 2 bInterfaceSubClass: 11 bInterfaceProtocol: 0 iInterface: 6 bInterfaceNumber: 5 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bInterfaceNumber: 5 bAlternateSetting: 1 bNumEndpoints: 2 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bEndpointAddress: 87h bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bEndpointAddress: 06h bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bInterfaceNumber: 6 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 2 bInterfaceSubClass: 11 bInterfaceProtocol: 0 iInterface: 7 bInterfaceNumber: 7 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bInterfaceNumber: 7 bAlternateSetting: 1 bNumEndpoints: 2 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bEndpointAddress: 88h bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bEndpointAddress: 08h bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bInterfaceNumber: 8 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 2 bInterfaceSubClass: 11 bInterfaceProtocol: 0 iInterface: 8 bInterfaceNumber: 9 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bInterfaceNumber: 9 bAlternateSetting: 1 bNumEndpoints: 2 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bEndpointAddress: 89h bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bEndpointAddress: 09h bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bInterfaceNumber: 10 bAlternateSetting: 0 bNumEndpoints: 1 bInterfaceClass: 2 bInterfaceSubClass: 2 bInterfaceProtocol: 1 iInterface: 9 bEndpointAddress: 84h bmAttributes: 03h wMaxPacketSize: 64 bInterval: 128 bRefresh: 0 bSynchAddress: 0 bInterfaceNumber: 11 bAlternateSetting: 0 bNumEndpoints: 2 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 10 bEndpointAddress: 8bh bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bEndpointAddress: 0ch bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bInterfaceNumber: 12 bAlternateSetting: 0 bNumEndpoints: 1 bInterfaceClass: 2 bInterfaceSubClass: 2 bInterfaceProtocol: 255 iInterface: 11 bEndpointAddress: 85h bmAttributes: 03h wMaxPacketSize: 64 bInterval: 128 bRefresh: 0 bSynchAddress: 0 bInterfaceNumber: 13 bAlternateSetting: 0 bNumEndpoints: 2 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 12 bEndpointAddress: 8ch bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bEndpointAddress: 0dh bmAttributes: 02h wMaxPacketSize: 64 bInterval: 0 bRefresh: 0 bSynchAddress: 0 bInterfaceNumber: 14 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 2 bInterfaceSubClass: 253 bInterfaceProtocol: 0 iInterface: 13 bInterfaceNumber: 15 bAlternateSetting: 0 bNumEndpoints: 0 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bInterfaceNumber: 15 bAlternateSetting: 1 bNumEndpoints: 2 bInterfaceClass: 10 bInterfaceSubClass: 0 bInterfaceProtocol: 0 iInterface: 0 bEndpointAddress: 86h bmAttributes: 03h wMaxPacketSize: 64 bInterval: 32 bRefresh: 0 bSynchAddress: 0 bEndpointAddress: 0fh bmAttributes: 02h wMaxPacketSize: 64 bInterval: 32 bRefresh: 0 bSynchAddress: 0 Best regards, Andrew Voznytsa |
|
From: Carl K. <car...@gm...> - 2007-08-14 18:05:30
|
OK, I tried it without setting the configuration or claiming the interface, and it didn't work on my Vista computer with the Device Driver. I then tried it without claiming the interface, but still setting the configuration and it worked. The problem is that setting the configuration is the call that crashed it on the filter driver on XP. So is there some way of knowing beforehand whether a call to SetConfiguration is going to freeze my program and force the user to reboot, or not? On 14/08/07, Xiaofan Chen <xia...@gm...> wrote: > On 8/14/07, Carl Kenner <car...@gm...> wrote: > > I can't use HID as a backend, because the windows HID isn't working. > > Presumably because the SIXAXIS uses a malformed HID descriptor, and it > > won't let me read this feature report. I'm reasonably confident the > > device isn't a keyboard or mouse, it seems to just be a HID joystick > > or gamepad. Reading the same feature report with libusb is easy. Once > > I have read this feature report, the device will start sending input > > reports to the computer, but before that it won't. > > > > Now all the other sixaxis drivers for windows use the libusb filter > > driver to read this one feature report, while windows still sees it as > > a gamepad. So it must work on some computers. But it doesn't work on > > the computers I tested it on. > > I see. So it is a gamepad. > > Now I understand why your interrupt transfer will not work. > You do need to claim the interface (use the device driver, set the > configuration, claim the interface) in order for the interrupt transfer > to work. You can try this. > > You do not need to claim the interface to get control transfer to work. > Therefore you can use the filter driver. If I am not wrong, you do not > need to (and probably you can not) set configuration since the > HID driver has already done that and claim the interface. I am not > 100% sure here though. You can try this. > > Google found this and maybe you can give it a try. > http://www.bricklife.com/library/sixaxis-init.c > > > Regards, > Xiaofan > > > > > Regards, > Xiaofan > > ------------------------------------------------------------------------- > 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/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > |
|
From: Carl K. <car...@gm...> - 2007-08-14 15:56:39
|
I assume bluez is built on top of libusb. Has anyone had a go at porting it to windows? |
|
From: Carl K. <car...@gm...> - 2007-08-14 14:51:44
|
By the way, that Japanese windows program crashes (but doesn't freeze) on my computer, and apparently on many other computers (but not all). They don't include their source code, so I don't know why. Don't get me wrong, my program is currently working perfectly with the SIXAXIS, it just doesn't support the filter driver, but if I stop claiming the device then perhaps it will work on the filter driver (which only works on XP) too. So that should solve my problems (except for the no HID access on Vista, but for my program that is a small problem, since my program emulates a joystick anyway). Nevertheless, here is a buglist which libusb-win32 writers may wish to have a go at fixing: usb_setconfiguration on the filter driver may freeze the program forcing you to reboot the computer, instead of simply failing with an error code. interrupt reads may fail on Vista (with the device driver) The filter driver won't install on Vista The device driver detects an empty bus if you plug your device into a port that you had previously plugged it into before you installed the device driver. As the installation wizard requires you to plug your device in before it installs the device driver, you can't use it in that port again. There is zero documentation. This is the most serious, and most easily fixed bug. By the way, I've converted the most of the libusb-win32 headers to Delphi, if that is any use to anyone. On 14/08/07, Xiaofan Chen <xia...@gm...> wrote: > On 8/14/07, Xiaofan Chen <xia...@gm...> wrote: > > On 8/14/07, Carl Kenner <car...@gm...> wrote: > > > I can't use HID as a backend, because the windows HID isn't working. > > > Presumably because the SIXAXIS uses a malformed HID descriptor, and it > > > won't let me read this feature report. I'm reasonably confident the > > > device isn't a keyboard or mouse, it seems to just be a HID joystick > > > or gamepad. Reading the same feature report with libusb is easy. Once > > > I have read this feature report, the device will start sending input > > > reports to the computer, but before that it won't. > > > > > > Now all the other sixaxis drivers for windows use the libusb filter > > > driver to read this one feature report, while windows still sees it as > > > a gamepad. So it must work on some computers. But it doesn't work on > > > the computers I tested it on. > > > > I see. So it is a gamepad. > > > > Now I understand why your interrupt transfer will not work. > > You do need to claim the interface (use the device driver, set the > > configuration, claim the interface) in order for the interrupt transfer > > to work. You can try this. > > > > You do not need to claim the interface to get control transfer to work. > > Therefore you can use the filter driver. If I am not wrong, you do not > > need to (and probably you can not) set configuration since the > > HID driver has already done that and claim the interface. I am not > > 100% sure here though. You can try this. > > > > Google found this and maybe you can give it a try. > > http://www.bricklife.com/library/sixaxis-init.c > > > > > > This page is in Japanese but you might be able to try to > use a auto-translator. > > For Windows: > http://www.padc.cs.tsukuba.ac.jp/~k1/ > > For Mac OS X: > http://www.bricklife.com/weblog/000705.html > > Hope this helps. > > Xiaofan > http://mcuee.blogspot.com/ > http://groups.google.com/group/pickit-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/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > |
|
From: Krakora, R. V <rob...@de...> - 2007-08-14 14:51:18
|
Carl: I ported libhid to Windows as it uses libusb on which libusb-win32 is based. It takes care of claiming the interface for interrupt endpoints and has an API call to retrieve data from interrupt endpoints. I added an extra parameter to one of the API functions so that the configuration as well as the interface could be selected. Previously, I was using the Windows HID API which was quite confusing to use. Here is the link to libhid: http://libhid.alioth.debian.org/=20 Best Regards, Rob Krakora Software Engineer Delphi Electronics & Safety e-mail: rob...@de... phone: 765-451-8574 -----Original Message----- From: lib...@li... [mailto:lib...@li...] On Behalf Of lib...@li... Sent: Tuesday, August 14, 2007 10:08 AM To: lib...@li... Subject: Libusb-win32-devel Digest, Vol 15, Issue 7 Send Libusb-win32-devel mailing list submissions to lib...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel or, via email, send a message with subject or body 'help' to lib...@li... You can reach the person managing the list at lib...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of Libusb-win32-devel digest..." Today's Topics: 1. Re: lots of bugs (Carl Kenner) (Krakora, Robert V) 2. Re: lots of bugs (Carl Kenner) (Carl Kenner) 3. Re: lots of bugs (Carl Kenner) (Xiaofan Chen) 4. Re: lots of bugs (Carl Kenner) (Xiaofan Chen) 5. Re: lots of bugs (Carl Kenner) (Carl Kenner) 6. Re: lots of bugs (Carl Kenner) (Xiaofan Chen) ---------------------------------------------------------------------- Message: 1 Date: Mon, 13 Aug 2007 16:37:41 -0400 From: "Krakora, Robert V" <rob...@de...> Subject: Re: [Libusb-win32-devel] lots of bugs (Carl Kenner) To: <lib...@li...> Message-ID: =09 <3C7...@US... Auto.net> =09 Content-Type: text/plain; charset=3D"us-ascii" Carl: I too had the same problem with the filter driver installed on Windows XP SP2 when calling usb_setconfiguration(). I installed it as "the" driver (not a filter) for the device for which I was trying to set the configuration and the problem went away. Best Regards, Rob Krakora Software Engineer Delphi Electronics & Safety e-mail: rob...@de... phone: 765-451-8574 -----Original Message----- From: lib...@li... [mailto:lib...@li...] On Behalf Of lib...@li... Sent: Monday, August 13, 2007 3:04 PM To: lib...@li... Subject: Libusb-win32-devel Digest, Vol 15, Issue 6 Send Libusb-win32-devel mailing list submissions to lib...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel or, via email, send a message with subject or body 'help' to lib...@li... You can reach the person managing the list at lib...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of Libusb-win32-devel digest..." Today's Topics: 1. Re: Composite device - HID + custom (Kitsok) 2. lots of bugs (Carl Kenner) ---------------------------------------------------------------------- Message: 1 Date: Mon, 13 Aug 2007 02:59:10 -0700 (PDT) From: Kitsok <ko...@ki...> Subject: Re: [Libusb-win32-devel] Composite device - HID + custom To: lib...@li... Message-ID: <121...@ta...> Content-Type: text/plain; charset=3Dus-ascii Hello Stephan! Stephan Meyer wrote: >=20 > Yes that's possible. See > http://msdn2.microsoft.com/en-us/library/ms791091.aspx=20 > for details. >=20 Well, as far as I understood I need an inf-file for the part of the composite device.=20 Firstly I've installed libUSB as filter and had unknown device + HID device.=20 After that I've modified an inf file made by the wizard from binary driver distribution.=20 I've removed .cat parts and added "&MI_01" to "devices" part: [Devices] -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 [Devices.NT] -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 [Devices.NTAMD64] -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 After that my device was recognized as "PTJoy Custom Device". The test application successfully seen my devices, but the bulk example failed on=20 if(usb_set_configuration(dev, 1) < 0) If I do usb_set_configuration(dev,0) then I fail on usb_claim_interface(dev, 0) After that I've de-installed libusb filter and tried to install libusb as pure driver for my custom part.=20 In this case the test application doesn't see libusb buses at all... Could you please point me where to dig? Thanks! Best regards, Konstantin Klubnichkin --=20 View this message in context: http://www.nabble.com/Composite-device---HID-%2B-custom-tf4229374.html#a 12123666 Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com. ------------------------------ Message: 2 Date: Mon, 13 Aug 2007 20:48:54 +0930 From: "Carl Kenner" <car...@gm...> Subject: [Libusb-win32-devel] lots of bugs To: lib...@li... Message-ID: <fab...@ma...> Content-Type: text/plain; charset=3DISO-8859-1 Firstly, I tried installing the filter driver on Vista. It fails, and the test program shows driver version -1,-1,-1,-1. Secondly, I tried installing the device driver on Vista. It installs, and the test program shows the correct driver version, but finds a single bus with no devices. It won't actually find the device until you plug it into a port that it hasn't been in before. Presumably the original windows driver is still installed on whatever port you plugged it into first. Anyway it works, provided you plug it into a new port. Third, I tried installing the filter driver on XP. It installs, and all the USB devices and busses are enumerated correctly. But when I call usb_setconfiguration it freezes and there is no way to end my program's process with Ctrl+Alt+Delete or any other program, only restarting the computer will end it. Another libusb program I have, which I don't have the source code for. crashes but doesn't freeze. I don't know why. I haven't tried the device driver on XP yet. Are there any plans to fix, or at least DOCUMENT, these bugs??? ------------------------------ ------------------------------------------------------------------------ - 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/ ------------------------------ _______________________________________________ Libusb-win32-devel mailing list Lib...@li... https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel End of Libusb-win32-devel Digest, Vol 15, Issue 6 ************************************************* ************************************************************************ **************** Note: If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you.=20 ************************************************************************ **************** ------------------------------ Message: 2 Date: Tue, 14 Aug 2007 13:50:46 +0930 From: "Carl Kenner" <car...@gm...> Subject: Re: [Libusb-win32-devel] lots of bugs (Carl Kenner) To: lib...@li... Message-ID: <fab...@ma...> Content-Type: text/plain; charset=3DISO-8859-1 The problem is that "the" driver for the device would then remove all the HID functionality that Windows provides, which means I need to use a PPJoy virtual joystick to simulate it as a joystick again. All I want to do is read one feature report that Windows won't let me read, and then it will work as a normal HID joystick. By the way, when I am using the Device Driver, there is another problem I am having. Interrupt reads are always failing. So I end up using the GetInputReport via usb control messages as workaround. On 14/08/07, Krakora, Robert V <rob...@de...> wrote: > > Carl: > > I too had the same problem with the filter driver installed on Windows > XP SP2 when calling usb_setconfiguration(). I installed it as "the" > driver (not a filter) for the device for which I was trying to set the > configuration and the problem went away. > > Best Regards, > > Rob Krakora > Software Engineer > Delphi Electronics & Safety > e-mail: rob...@de... > phone: 765-451-8574 > -----Original Message----- > From: lib...@li... > [mailto:lib...@li...] On Behalf Of > lib...@li... > Sent: Monday, August 13, 2007 3:04 PM > To: lib...@li... > Subject: Libusb-win32-devel Digest, Vol 15, Issue 6 > > Send Libusb-win32-devel mailing list submissions to > lib...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > or, via email, send a message with subject or body 'help' to > lib...@li... > > You can reach the person managing the list at > lib...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Libusb-win32-devel digest..." > > > Today's Topics: > > 1. Re: Composite device - HID + custom (Kitsok) > 2. lots of bugs (Carl Kenner) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Mon, 13 Aug 2007 02:59:10 -0700 (PDT) > From: Kitsok <ko...@ki...> > Subject: Re: [Libusb-win32-devel] Composite device - HID + custom > To: lib...@li... > Message-ID: <121...@ta...> > Content-Type: text/plain; charset=3Dus-ascii > > > Hello Stephan! > > > Stephan Meyer wrote: > > > > Yes that's possible. See > > http://msdn2.microsoft.com/en-us/library/ms791091.aspx > > for details. > > > > Well, as far as I understood I need an inf-file for the part of the > composite device. > > Firstly I've installed libUSB as filter and had unknown device + HID > device. > After that I've modified an inf file made by the wizard from binary > driver > distribution. > I've removed .cat parts and added "&MI_01" to "devices" part: > [Devices] > -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 > +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 > > [Devices.NT] > -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 > +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 > > [Devices.NTAMD64] > -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 > +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 > > After that my device was recognized as "PTJoy Custom Device". > The test application successfully seen my devices, but the bulk example > failed on > if(usb_set_configuration(dev, 1) < 0) > > If I do usb_set_configuration(dev,0) then I fail on > usb_claim_interface(dev, > 0) > > After that I've de-installed libusb filter and tried to install libusb > as > pure driver for my custom part. > In this case the test application doesn't see libusb buses at all... > > Could you please point me where to dig? > > Thanks! > > Best regards, > Konstantin Klubnichkin > -- > View this message in context: > http://www.nabble.com/Composite-device---HID-%2B-custom-tf4229374.html#a > 12123666 > Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com. > > > > > ------------------------------ > > Message: 2 > Date: Mon, 13 Aug 2007 20:48:54 +0930 > From: "Carl Kenner" <car...@gm...> > Subject: [Libusb-win32-devel] lots of bugs > To: lib...@li... > Message-ID: > <fab...@ma...> > Content-Type: text/plain; charset=3DISO-8859-1 > > Firstly, I tried installing the filter driver on Vista. It fails, and > the test program shows driver version -1,-1,-1,-1. > > Secondly, I tried installing the device driver on Vista. It installs, > and the test program shows the correct driver version, but finds a > single bus with no devices. It won't actually find the device until > you plug it into a port that it hasn't been in before. Presumably the > original windows driver is still installed on whatever port you > plugged it into first. Anyway it works, provided you plug it into a > new port. > > Third, I tried installing the filter driver on XP. It installs, and > all the USB devices and busses are enumerated correctly. But when I > call usb_setconfiguration it freezes and there is no way to end my > program's process with Ctrl+Alt+Delete or any other program, only > restarting the computer will end it. Another libusb program I have, > which I don't have the source code for. crashes but doesn't freeze. I > don't know why. > > I haven't tried the device driver on XP yet. > > Are there any plans to fix, or at least DOCUMENT, these bugs??? > > > > ------------------------------ > > ------------------------------------------------------------------------ > - > 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/ > > ------------------------------ > > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > > > End of Libusb-win32-devel Digest, Vol 15, Issue 6 > ************************************************* > > ************************************************************************ **************** > > Note: If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you. > > ************************************************************************ **************** > > ------------------------------------------------------------------------ - > 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/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > ------------------------------ Message: 3 Date: Tue, 14 Aug 2007 13:52:34 +0800 From: "Xiaofan Chen" <xia...@gm...> Subject: Re: [Libusb-win32-devel] lots of bugs (Carl Kenner) To: lib...@li... Message-ID: <a27...@ma...> Content-Type: text/plain; charset=3DISO-8859-1 On 8/14/07, Carl Kenner <car...@gm...> wrote: > The problem is that "the" driver for the device would then remove all > the HID functionality that Windows provides, which means I need to use > a PPJoy virtual joystick to simulate it as a joystick again. > > All I want to do is read one feature report that Windows won't let me > read, and then it will work as a normal HID joystick. > > By the way, when I am using the Device Driver, there is another > problem I am having. Interrupt reads are always failing. So I end up > using the GetInputReport via usb control messages as workaround. > With the current version of libusb 0.1x, I believe you won't be able to achieve what you want to do. since you can not really use the filter driver with HID device. Somewhere I read that the filter driver will not be actively supported but I can not find the reference now. You can do this in Windows without using libusb (using Raw Input). http://www.lvr.com/hidfaq.htm The new development version (1.x) will support HID as a backend. I can find the HID device with the new HID backend. However, read and write are not working yet. Regards, Xiaofan ------------------------------ Message: 4 Date: Tue, 14 Aug 2007 14:00:41 +0800 From: "Xiaofan Chen" <xia...@gm...> Subject: Re: [Libusb-win32-devel] lots of bugs (Carl Kenner) To: lib...@li... Message-ID: <a27...@ma...> Content-Type: text/plain; charset=3DISO-8859-1 On 8/14/07, Carl Kenner <car...@gm...> wrote: > By the way, when I am using the Device Driver, there is another > problem I am having. Interrupt reads are always failing. So I end up > using the GetInputReport via usb control messages as workaround. > Maybe you forget the direction bit for the IN endpoint (0x81 instead of 0x01) for your interrupt read. This is one difference compare to Linux libusb. For reading feature request for the HID joystick, HID faq page mentions the following workarond. [quote] "Why do I receive "Access denied" when attempting to access my HID? Windows 2000 and Windows XP have exclusive read/write access to HIDs that are configured as a system keyboards or mice. An application can obtain a handle to a system keyboard or mouse by not requesting READ or WRITE access with CreateFile. Communications can then use HidD_SetFeature and HidD_GetFeature (assuming the device supports Feature reports)." [/quote] Regards, Xiaofan ------------------------------ Message: 5 Date: Tue, 14 Aug 2007 23:05:44 +0930 From: "Carl Kenner" <car...@gm...> Subject: Re: [Libusb-win32-devel] lots of bugs (Carl Kenner) To: lib...@li... Message-ID: <fab...@ma...> Content-Type: text/plain; charset=3DISO-8859-1 I can't use HID as a backend, because the windows HID isn't working. Presumably because the SIXAXIS uses a malformed HID descriptor, and it won't let me read this feature report. I'm reasonably confident the device isn't a keyboard or mouse, it seems to just be a HID joystick or gamepad. Reading the same feature report with libusb is easy. Once I have read this feature report, the device will start sending input reports to the computer, but before that it won't. Now all the other sixaxis drivers for windows use the libusb filter driver to read this one feature report, while windows still sees it as a gamepad. So it must work on some computers. But it doesn't work on the computers I tested it on. On 14/08/07, Xiaofan Chen <xia...@gm...> wrote: > On 8/14/07, Carl Kenner <car...@gm...> wrote: > > By the way, when I am using the Device Driver, there is another > > problem I am having. Interrupt reads are always failing. So I end up > > using the GetInputReport via usb control messages as workaround. > > > Maybe you forget the direction bit for the IN endpoint (0x81 instead of > 0x01) for your interrupt read. This is one difference compare to > Linux libusb. > > For reading feature request for the HID joystick, HID faq page > mentions the following workarond. > > [quote] > "Why do I receive "Access denied" when attempting to access my HID? > > Windows 2000 and Windows XP have exclusive read/write access to > HIDs that are configured as a system keyboards or mice. An application > can obtain a handle to a system keyboard or mouse by not requesting > READ or WRITE access with CreateFile. Communications can then > use HidD_SetFeature and HidD_GetFeature (assuming the device > supports Feature reports)." > [/quote] > > Regards, > Xiaofan > > ------------------------------------------------------------------------ - > 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/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > ------------------------------ Message: 6 Date: Tue, 14 Aug 2007 22:08:06 +0800 From: "Xiaofan Chen" <xia...@gm...> Subject: Re: [Libusb-win32-devel] lots of bugs (Carl Kenner) To: lib...@li... Message-ID: <a27...@ma...> Content-Type: text/plain; charset=3DISO-8859-1 On 8/14/07, Carl Kenner <car...@gm...> wrote: > I can't use HID as a backend, because the windows HID isn't working. > Presumably because the SIXAXIS uses a malformed HID descriptor, and it > won't let me read this feature report. I'm reasonably confident the > device isn't a keyboard or mouse, it seems to just be a HID joystick > or gamepad. Reading the same feature report with libusb is easy. Once > I have read this feature report, the device will start sending input > reports to the computer, but before that it won't. > > Now all the other sixaxis drivers for windows use the libusb filter > driver to read this one feature report, while windows still sees it as > a gamepad. So it must work on some computers. But it doesn't work on > the computers I tested it on. I see. So it is a gamepad. Now I understand why your interrupt transfer will not work. You do need to claim the interface (use the device driver, set the configuration, claim the interface) in order for the interrupt transfer to work. You can try this. You do not need to claim the interface to get control transfer to work. Therefore you can use the filter driver. If I am not wrong, you do not need to (and probably you can not) set configuration since the HID driver has already done that and claim the interface. I am not 100% sure here though. You can try this. Google found this and maybe you can give it a try. http://www.bricklife.com/library/sixaxis-init.c Regards, Xiaofan Regards, Xiaofan ------------------------------ ------------------------------------------------------------------------ - 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/ ------------------------------ _______________________________________________ Libusb-win32-devel mailing list Lib...@li... https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel End of Libusb-win32-devel Digest, Vol 15, Issue 7 ************************************************* ***************************************************************************= ************* Note: If the reader of this message is not the intended recipient, or an= employee or agent responsible for delivering this message to the intended= recipient, you are hereby notified that any dissemination, distribution or= copying of this communication is strictly prohibited. If you have received= this communication in error, please notify us immediately by replying to= the message and deleting it from your computer. Thank you.=20 ***************************************************************************= ************* |
|
From: Xiaofan C. <xia...@gm...> - 2007-08-14 14:24:11
|
On 8/14/07, Carl Kenner <car...@gm...> wrote: > Ah! That is great news... > But it doesn't explain why interrupt transfers are not working, since > I did claim the interface (using the Device Driver on Vista), and I > did use 0x81 as the endpoint (I even checked the list of endpoints to > make sure it was right). > I am not so sure about libusb under Vista. I do not have a Vista PC. I am pretty sure you can do this under Windows XP with the device driver. Of course you will not have the HID functionality. Regards, Xiaofan |
|
From: Carl K. <car...@gm...> - 2007-08-14 14:17:27
|
Ah! That is great news... But it doesn't explain why interrupt transfers are not working, since I did claim the interface (using the Device Driver on Vista), and I did use 0x81 as the endpoint (I even checked the list of endpoints to make sure it was right). Anyway, since I don't really need interrupt transfers, and I'm quite happy to poll the device (it reports its state, not transitions, so polling works fine), I'll try it without claiming the interface. I see the code you sent doesn't claim the interface. By the way, is it possible to send USB control messages without using libusb-win32? On 14/08/07, Xiaofan Chen <xia...@gm...> wrote: > On 8/14/07, Carl Kenner <car...@gm...> wrote: > > I can't use HID as a backend, because the windows HID isn't working. > > Presumably because the SIXAXIS uses a malformed HID descriptor, and it > > won't let me read this feature report. I'm reasonably confident the > > device isn't a keyboard or mouse, it seems to just be a HID joystick > > or gamepad. Reading the same feature report with libusb is easy. Once > > I have read this feature report, the device will start sending input > > reports to the computer, but before that it won't. > > > > Now all the other sixaxis drivers for windows use the libusb filter > > driver to read this one feature report, while windows still sees it as > > a gamepad. So it must work on some computers. But it doesn't work on > > the computers I tested it on. > > I see. So it is a gamepad. > > Now I understand why your interrupt transfer will not work. > You do need to claim the interface (use the device driver, set the > configuration, claim the interface) in order for the interrupt transfer > to work. You can try this. > > You do not need to claim the interface to get control transfer to work. > Therefore you can use the filter driver. If I am not wrong, you do not > need to (and probably you can not) set configuration since the > HID driver has already done that and claim the interface. I am not > 100% sure here though. You can try this. > > Google found this and maybe you can give it a try. > http://www.bricklife.com/library/sixaxis-init.c > > > Regards, > Xiaofan > > > > > Regards, > Xiaofan > > ------------------------------------------------------------------------- > 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/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > |
|
From: Xiaofan C. <xia...@gm...> - 2007-08-14 14:14:51
|
On 8/14/07, Xiaofan Chen <xia...@gm...> wrote: > On 8/14/07, Carl Kenner <car...@gm...> wrote: > > I can't use HID as a backend, because the windows HID isn't working. > > Presumably because the SIXAXIS uses a malformed HID descriptor, and it > > won't let me read this feature report. I'm reasonably confident the > > device isn't a keyboard or mouse, it seems to just be a HID joystick > > or gamepad. Reading the same feature report with libusb is easy. Once > > I have read this feature report, the device will start sending input > > reports to the computer, but before that it won't. > > > > Now all the other sixaxis drivers for windows use the libusb filter > > driver to read this one feature report, while windows still sees it as > > a gamepad. So it must work on some computers. But it doesn't work on > > the computers I tested it on. > > I see. So it is a gamepad. > > Now I understand why your interrupt transfer will not work. > You do need to claim the interface (use the device driver, set the > configuration, claim the interface) in order for the interrupt transfer > to work. You can try this. > > You do not need to claim the interface to get control transfer to work. > Therefore you can use the filter driver. If I am not wrong, you do not > need to (and probably you can not) set configuration since the > HID driver has already done that and claim the interface. I am not > 100% sure here though. You can try this. > > Google found this and maybe you can give it a try. > http://www.bricklife.com/library/sixaxis-init.c > > This page is in Japanese but you might be able to try to use a auto-translator. For Windows: http://www.padc.cs.tsukuba.ac.jp/~k1/ For Mac OS X: http://www.bricklife.com/weblog/000705.html Hope this helps. Xiaofan http://mcuee.blogspot.com/ http://groups.google.com/group/pickit-devel |
|
From: Xiaofan C. <xia...@gm...> - 2007-08-14 14:08:12
|
On 8/14/07, Carl Kenner <car...@gm...> wrote: > I can't use HID as a backend, because the windows HID isn't working. > Presumably because the SIXAXIS uses a malformed HID descriptor, and it > won't let me read this feature report. I'm reasonably confident the > device isn't a keyboard or mouse, it seems to just be a HID joystick > or gamepad. Reading the same feature report with libusb is easy. Once > I have read this feature report, the device will start sending input > reports to the computer, but before that it won't. > > Now all the other sixaxis drivers for windows use the libusb filter > driver to read this one feature report, while windows still sees it as > a gamepad. So it must work on some computers. But it doesn't work on > the computers I tested it on. I see. So it is a gamepad. Now I understand why your interrupt transfer will not work. You do need to claim the interface (use the device driver, set the configuration, claim the interface) in order for the interrupt transfer to work. You can try this. You do not need to claim the interface to get control transfer to work. Therefore you can use the filter driver. If I am not wrong, you do not need to (and probably you can not) set configuration since the HID driver has already done that and claim the interface. I am not 100% sure here though. You can try this. Google found this and maybe you can give it a try. http://www.bricklife.com/library/sixaxis-init.c Regards, Xiaofan Regards, Xiaofan |
|
From: Carl K. <car...@gm...> - 2007-08-14 13:35:46
|
I can't use HID as a backend, because the windows HID isn't working. Presumably because the SIXAXIS uses a malformed HID descriptor, and it won't let me read this feature report. I'm reasonably confident the device isn't a keyboard or mouse, it seems to just be a HID joystick or gamepad. Reading the same feature report with libusb is easy. Once I have read this feature report, the device will start sending input reports to the computer, but before that it won't. Now all the other sixaxis drivers for windows use the libusb filter driver to read this one feature report, while windows still sees it as a gamepad. So it must work on some computers. But it doesn't work on the computers I tested it on. On 14/08/07, Xiaofan Chen <xia...@gm...> wrote: > On 8/14/07, Carl Kenner <car...@gm...> wrote: > > By the way, when I am using the Device Driver, there is another > > problem I am having. Interrupt reads are always failing. So I end up > > using the GetInputReport via usb control messages as workaround. > > > Maybe you forget the direction bit for the IN endpoint (0x81 instead of > 0x01) for your interrupt read. This is one difference compare to > Linux libusb. > > For reading feature request for the HID joystick, HID faq page > mentions the following workarond. > > [quote] > "Why do I receive "Access denied" when attempting to access my HID? > > Windows 2000 and Windows XP have exclusive read/write access to > HIDs that are configured as a system keyboards or mice. An application > can obtain a handle to a system keyboard or mouse by not requesting > READ or WRITE access with CreateFile. Communications can then > use HidD_SetFeature and HidD_GetFeature (assuming the device > supports Feature reports)." > [/quote] > > Regards, > Xiaofan > > ------------------------------------------------------------------------- > 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/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > |
|
From: Xiaofan C. <xia...@gm...> - 2007-08-14 06:00:43
|
On 8/14/07, Carl Kenner <car...@gm...> wrote: > By the way, when I am using the Device Driver, there is another > problem I am having. Interrupt reads are always failing. So I end up > using the GetInputReport via usb control messages as workaround. > Maybe you forget the direction bit for the IN endpoint (0x81 instead of 0x01) for your interrupt read. This is one difference compare to Linux libusb. For reading feature request for the HID joystick, HID faq page mentions the following workarond. [quote] "Why do I receive "Access denied" when attempting to access my HID? Windows 2000 and Windows XP have exclusive read/write access to HIDs that are configured as a system keyboards or mice. An application can obtain a handle to a system keyboard or mouse by not requesting READ or WRITE access with CreateFile. Communications can then use HidD_SetFeature and HidD_GetFeature (assuming the device supports Feature reports)." [/quote] Regards, Xiaofan |
|
From: Xiaofan C. <xia...@gm...> - 2007-08-14 05:52:38
|
On 8/14/07, Carl Kenner <car...@gm...> wrote: > The problem is that "the" driver for the device would then remove all > the HID functionality that Windows provides, which means I need to use > a PPJoy virtual joystick to simulate it as a joystick again. > > All I want to do is read one feature report that Windows won't let me > read, and then it will work as a normal HID joystick. > > By the way, when I am using the Device Driver, there is another > problem I am having. Interrupt reads are always failing. So I end up > using the GetInputReport via usb control messages as workaround. > With the current version of libusb 0.1x, I believe you won't be able to achieve what you want to do. since you can not really use the filter driver with HID device. Somewhere I read that the filter driver will not be actively supported but I can not find the reference now. You can do this in Windows without using libusb (using Raw Input). http://www.lvr.com/hidfaq.htm The new development version (1.x) will support HID as a backend. I can find the HID device with the new HID backend. However, read and write are not working yet. Regards, Xiaofan |
|
From: Carl K. <car...@gm...> - 2007-08-14 04:20:51
|
The problem is that "the" driver for the device would then remove all the HID functionality that Windows provides, which means I need to use a PPJoy virtual joystick to simulate it as a joystick again. All I want to do is read one feature report that Windows won't let me read, and then it will work as a normal HID joystick. By the way, when I am using the Device Driver, there is another problem I am having. Interrupt reads are always failing. So I end up using the GetInputReport via usb control messages as workaround. On 14/08/07, Krakora, Robert V <rob...@de...> wrote: > > Carl: > > I too had the same problem with the filter driver installed on Windows > XP SP2 when calling usb_setconfiguration(). I installed it as "the" > driver (not a filter) for the device for which I was trying to set the > configuration and the problem went away. > > Best Regards, > > Rob Krakora > Software Engineer > Delphi Electronics & Safety > e-mail: rob...@de... > phone: 765-451-8574 > -----Original Message----- > From: lib...@li... > [mailto:lib...@li...] On Behalf Of > lib...@li... > Sent: Monday, August 13, 2007 3:04 PM > To: lib...@li... > Subject: Libusb-win32-devel Digest, Vol 15, Issue 6 > > Send Libusb-win32-devel mailing list submissions to > lib...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > or, via email, send a message with subject or body 'help' to > lib...@li... > > You can reach the person managing the list at > lib...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Libusb-win32-devel digest..." > > > Today's Topics: > > 1. Re: Composite device - HID + custom (Kitsok) > 2. lots of bugs (Carl Kenner) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Mon, 13 Aug 2007 02:59:10 -0700 (PDT) > From: Kitsok <ko...@ki...> > Subject: Re: [Libusb-win32-devel] Composite device - HID + custom > To: lib...@li... > Message-ID: <121...@ta...> > Content-Type: text/plain; charset=us-ascii > > > Hello Stephan! > > > Stephan Meyer wrote: > > > > Yes that's possible. See > > http://msdn2.microsoft.com/en-us/library/ms791091.aspx > > for details. > > > > Well, as far as I understood I need an inf-file for the part of the > composite device. > > Firstly I've installed libUSB as filter and had unknown device + HID > device. > After that I've modified an inf file made by the wizard from binary > driver > distribution. > I've removed .cat parts and added "&MI_01" to "devices" part: > [Devices] > -"PTJoy Composite Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015 > +"PTJoy Custom Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 > > [Devices.NT] > -"PTJoy Composite Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015 > +"PTJoy Custom Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 > > [Devices.NTAMD64] > -"PTJoy Composite Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015 > +"PTJoy Custom Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 > > After that my device was recognized as "PTJoy Custom Device". > The test application successfully seen my devices, but the bulk example > failed on > if(usb_set_configuration(dev, 1) < 0) > > If I do usb_set_configuration(dev,0) then I fail on > usb_claim_interface(dev, > 0) > > After that I've de-installed libusb filter and tried to install libusb > as > pure driver for my custom part. > In this case the test application doesn't see libusb buses at all... > > Could you please point me where to dig? > > Thanks! > > Best regards, > Konstantin Klubnichkin > -- > View this message in context: > http://www.nabble.com/Composite-device---HID-%2B-custom-tf4229374.html#a > 12123666 > Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com. > > > > > ------------------------------ > > Message: 2 > Date: Mon, 13 Aug 2007 20:48:54 +0930 > From: "Carl Kenner" <car...@gm...> > Subject: [Libusb-win32-devel] lots of bugs > To: lib...@li... > Message-ID: > <fab...@ma...> > Content-Type: text/plain; charset=ISO-8859-1 > > Firstly, I tried installing the filter driver on Vista. It fails, and > the test program shows driver version -1,-1,-1,-1. > > Secondly, I tried installing the device driver on Vista. It installs, > and the test program shows the correct driver version, but finds a > single bus with no devices. It won't actually find the device until > you plug it into a port that it hasn't been in before. Presumably the > original windows driver is still installed on whatever port you > plugged it into first. Anyway it works, provided you plug it into a > new port. > > Third, I tried installing the filter driver on XP. It installs, and > all the USB devices and busses are enumerated correctly. But when I > call usb_setconfiguration it freezes and there is no way to end my > program's process with Ctrl+Alt+Delete or any other program, only > restarting the computer will end it. Another libusb program I have, > which I don't have the source code for. crashes but doesn't freeze. I > don't know why. > > I haven't tried the device driver on XP yet. > > Are there any plans to fix, or at least DOCUMENT, these bugs??? > > > > ------------------------------ > > ------------------------------------------------------------------------ > - > 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/ > > ------------------------------ > > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > > > End of Libusb-win32-devel Digest, Vol 15, Issue 6 > ************************************************* > > **************************************************************************************** > > Note: If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you. > > **************************************************************************************** > > ------------------------------------------------------------------------- > 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/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > |
|
From: Krakora, R. V <rob...@de...> - 2007-08-13 20:38:48
|
Carl: I too had the same problem with the filter driver installed on Windows XP SP2 when calling usb_setconfiguration(). I installed it as "the" driver (not a filter) for the device for which I was trying to set the configuration and the problem went away. Best Regards, Rob Krakora Software Engineer Delphi Electronics & Safety e-mail: rob...@de... phone: 765-451-8574 -----Original Message----- From: lib...@li... [mailto:lib...@li...] On Behalf Of lib...@li... Sent: Monday, August 13, 2007 3:04 PM To: lib...@li... Subject: Libusb-win32-devel Digest, Vol 15, Issue 6 Send Libusb-win32-devel mailing list submissions to lib...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel or, via email, send a message with subject or body 'help' to lib...@li... You can reach the person managing the list at lib...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of Libusb-win32-devel digest..." Today's Topics: 1. Re: Composite device - HID + custom (Kitsok) 2. lots of bugs (Carl Kenner) ---------------------------------------------------------------------- Message: 1 Date: Mon, 13 Aug 2007 02:59:10 -0700 (PDT) From: Kitsok <ko...@ki...> Subject: Re: [Libusb-win32-devel] Composite device - HID + custom To: lib...@li... Message-ID: <121...@ta...> Content-Type: text/plain; charset=3Dus-ascii Hello Stephan! Stephan Meyer wrote: >=20 > Yes that's possible. See > http://msdn2.microsoft.com/en-us/library/ms791091.aspx=20 > for details. >=20 Well, as far as I understood I need an inf-file for the part of the composite device.=20 Firstly I've installed libUSB as filter and had unknown device + HID device.=20 After that I've modified an inf file made by the wizard from binary driver distribution.=20 I've removed .cat parts and added "&MI_01" to "devices" part: [Devices] -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 [Devices.NT] -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 [Devices.NTAMD64] -"PTJoy Composite Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=3DLIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 After that my device was recognized as "PTJoy Custom Device". The test application successfully seen my devices, but the bulk example failed on=20 if(usb_set_configuration(dev, 1) < 0) If I do usb_set_configuration(dev,0) then I fail on usb_claim_interface(dev, 0) After that I've de-installed libusb filter and tried to install libusb as pure driver for my custom part.=20 In this case the test application doesn't see libusb buses at all... Could you please point me where to dig? Thanks! Best regards, Konstantin Klubnichkin --=20 View this message in context: http://www.nabble.com/Composite-device---HID-%2B-custom-tf4229374.html#a 12123666 Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com. ------------------------------ Message: 2 Date: Mon, 13 Aug 2007 20:48:54 +0930 From: "Carl Kenner" <car...@gm...> Subject: [Libusb-win32-devel] lots of bugs To: lib...@li... Message-ID: <fab...@ma...> Content-Type: text/plain; charset=3DISO-8859-1 Firstly, I tried installing the filter driver on Vista. It fails, and the test program shows driver version -1,-1,-1,-1. Secondly, I tried installing the device driver on Vista. It installs, and the test program shows the correct driver version, but finds a single bus with no devices. It won't actually find the device until you plug it into a port that it hasn't been in before. Presumably the original windows driver is still installed on whatever port you plugged it into first. Anyway it works, provided you plug it into a new port. Third, I tried installing the filter driver on XP. It installs, and all the USB devices and busses are enumerated correctly. But when I call usb_setconfiguration it freezes and there is no way to end my program's process with Ctrl+Alt+Delete or any other program, only restarting the computer will end it. Another libusb program I have, which I don't have the source code for. crashes but doesn't freeze. I don't know why. I haven't tried the device driver on XP yet. Are there any plans to fix, or at least DOCUMENT, these bugs??? ------------------------------ ------------------------------------------------------------------------ - 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/ ------------------------------ _______________________________________________ Libusb-win32-devel mailing list Lib...@li... https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel End of Libusb-win32-devel Digest, Vol 15, Issue 6 ************************************************* ***************************************************************************= ************* Note: If the reader of this message is not the intended recipient, or an= employee or agent responsible for delivering this message to the intended= recipient, you are hereby notified that any dissemination, distribution or= copying of this communication is strictly prohibited. If you have received= this communication in error, please notify us immediately by replying to= the message and deleting it from your computer. Thank you.=20 ***************************************************************************= ************* |
|
From: Carl K. <car...@gm...> - 2007-08-13 11:18:57
|
Firstly, I tried installing the filter driver on Vista. It fails, and the test program shows driver version -1,-1,-1,-1. Secondly, I tried installing the device driver on Vista. It installs, and the test program shows the correct driver version, but finds a single bus with no devices. It won't actually find the device until you plug it into a port that it hasn't been in before. Presumably the original windows driver is still installed on whatever port you plugged it into first. Anyway it works, provided you plug it into a new port. Third, I tried installing the filter driver on XP. It installs, and all the USB devices and busses are enumerated correctly. But when I call usb_setconfiguration it freezes and there is no way to end my program's process with Ctrl+Alt+Delete or any other program, only restarting the computer will end it. Another libusb program I have, which I don't have the source code for. crashes but doesn't freeze. I don't know why. I haven't tried the device driver on XP yet. Are there any plans to fix, or at least DOCUMENT, these bugs??? |
|
From: Kitsok <ko...@ki...> - 2007-08-13 09:59:13
|
Hello Stephan! Stephan Meyer wrote: > > Yes that's possible. See > http://msdn2.microsoft.com/en-us/library/ms791091.aspx > for details. > Well, as far as I understood I need an inf-file for the part of the composite device. Firstly I've installed libUSB as filter and had unknown device + HID device. After that I've modified an inf file made by the wizard from binary driver distribution. I've removed .cat parts and added "&MI_01" to "devices" part: [Devices] -"PTJoy Composite Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 [Devices.NT] -"PTJoy Composite Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 [Devices.NTAMD64] -"PTJoy Composite Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015 +"PTJoy Custom Device"=LIBUSB_DEV, USB\VID_ffff&PID_3015&MI_01 After that my device was recognized as "PTJoy Custom Device". The test application successfully seen my devices, but the bulk example failed on if(usb_set_configuration(dev, 1) < 0) If I do usb_set_configuration(dev,0) then I fail on usb_claim_interface(dev, 0) After that I've de-installed libusb filter and tried to install libusb as pure driver for my custom part. In this case the test application doesn't see libusb buses at all... Could you please point me where to dig? Thanks! Best regards, Konstantin Klubnichkin -- View this message in context: http://www.nabble.com/Composite-device---HID-%2B-custom-tf4229374.html#a12123666 Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com. |
|
From: Stephan M. <ste...@we...> - 2007-08-12 10:47:27
|
Patch applied, thanks!
>
>
> Stephan:
>
> Also, the following line needs to be changed from this...
>
> num_packets = (size + packet_size - 1) / packet_size;
>
> ...to this as well.
>
> num_packets = size / packet_size;
>
> See function below...
>
> static NTSTATUS create_urb(libusb_device_t *dev, URB **urb, int
> direction,
> int urb_function, int endpoint, int
> packet_size,
> MDL *buffer, int size)
> {
> USBD_PIPE_HANDLE pipe_handle = NULL;
> int num_packets = 0;
> int i, urb_size;
>
> *urb = NULL;
>
> if(!get_pipe_handle(dev, endpoint, &pipe_handle))
> {
> DEBUG_ERROR("create_urb(): getting endpoint pipe failed");
> return STATUS_INVALID_PARAMETER;
> }
>
> /* isochronous transfer */
> if(urb_function == URB_FUNCTION_ISOCH_TRANSFER)
> {
> if (packet_size <= 0)
> {
> DEBUG_ERROR("create_urb(): invalid packet size = %d",
> packet_size);
> return STATUS_INVALID_PARAMETER;
> }
>
> /* L I N E T O F I X F R O M A B O V E ! ! ! */
> /* num_packets = (size + packet_size - 1) / packet_size; */
> /* F I X E D F R O M A B O V E ! ! ! */
> num_packets = size / packet_size;
>
> if (num_packets <= 0)
> {
> DEBUG_ERROR("create_urb(): invalid number of packets = %d",
> num_packets);
> return STATUS_INVALID_PARAMETER;
> }
>
> if(num_packets > 255)
> {
> DEBUG_ERROR("create_urb(): transfer size too large");
> return STATUS_INVALID_PARAMETER;
> }
>
> urb_size = sizeof(struct _URB_ISOCH_TRANSFER)
> + sizeof(USBD_ISO_PACKET_DESCRIPTOR) * num_packets;
> }
> else /* bulk or interrupt transfer */
> {
> urb_size = sizeof(struct _URB_BULK_OR_INTERRUPT_TRANSFER);
> }
>
> *urb = ExAllocatePool(NonPagedPool, urb_size);
>
> if(!*urb)
> {
> DEBUG_ERROR("create_urb(): memory allocation error");
> return STATUS_NO_MEMORY;
> }
>
> memset(*urb, 0, urb_size);
>
> (*urb)->UrbHeader.Length = (USHORT)urb_size;
> (*urb)->UrbHeader.Function = (USHORT)urb_function;
>
> /* isochronous transfer */
> if(urb_function == URB_FUNCTION_ISOCH_TRANSFER)
> {
> (*urb)->UrbIsochronousTransfer.PipeHandle = pipe_handle;
> (*urb)->UrbIsochronousTransfer.TransferFlags
> = direction | USBD_SHORT_TRANSFER_OK |
> USBD_START_ISO_TRANSFER_ASAP;
> (*urb)->UrbIsochronousTransfer.TransferBufferLength = size;
> (*urb)->UrbIsochronousTransfer.TransferBufferMDL = buffer;
> (*urb)->UrbIsochronousTransfer.NumberOfPackets = num_packets;
>
> for(i = 0; i < num_packets; i++)
> {
> (*urb)->UrbIsochronousTransfer.IsoPacket[i].Offset = i *
> packet_size;
> (*urb)->UrbIsochronousTransfer.IsoPacket[i].Length =
> packet_size;
> }
> }
> /* bulk or interrupt transfer */
> else
> {
> (*urb)->UrbBulkOrInterruptTransfer.PipeHandle = pipe_handle;
> (*urb)->UrbBulkOrInterruptTransfer.TransferFlags
> = direction | USBD_SHORT_TRANSFER_OK;
> (*urb)->UrbBulkOrInterruptTransfer.TransferBufferLength = size;
> (*urb)->UrbBulkOrInterruptTransfer.TransferBufferMDL = buffer;
> }
> return STATUS_SUCCESS;
> }
>
> Best Regards,
>
> Rob Krakora
> Software Engineer
> Delphi Electronics & Safety
> e-mail: rob...@de...
> phone: 765-451-8574
>
> -----Original Message-----
> From: lib...@li...
> [mailto:lib...@li...] On Behalf Of
> lib...@li...
> Sent: Wednesday, August 08, 2007 3:11 PM
> To: lib...@li...
> Subject: Libusb-win32-devel Digest, Vol 15, Issue 2
>
> Send Libusb-win32-devel mailing list submissions to
> lib...@li...
>
> To subscribe or unsubscribe via the World Wide Web, visit
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> or, via email, send a message with subject or body 'help' to
> lib...@li...
>
> You can reach the person managing the list at
> lib...@li...
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Libusb-win32-devel digest..."
>
>
> Today's Topics:
>
> 1. Simple Question for Libusb developer (Islam Beltagy)
> 2. Re: Libusb and Javax.usb (Stephan Meyer)
> 3. Re: Composite device - HID + custom (Stephan Meyer)
> 4. Re: Simple Question for Libusb developer (Stephan Meyer)
> 5. Re: Divide-by-zero error in driver causes BSD on Windows XP
> SP2 (ste...@we...)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Wed, 8 Aug 2007 17:31:58 +0200
> From: "Islam Beltagy" <is...@gm...>
> Subject: [Libusb-win32-devel] Simple Question for Libusb developer
> To: Lib...@li...
> Message-ID:
> <a1a...@ma...>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Hello,
>
> I want to add asynchronous control submission to Libusb. does that can
> be
> simply done in the same way as in Bulk, Interrupt and Isochronous
> submission
> or there are hidden synchronization problems or any other problems that
> I
> did not notice???
>
> Thank you,
>
> Islam Beltagy
> -------------- next part --------------
> An HTML attachment was scrubbed...
>
> ------------------------------
>
> Message: 2
> Date: Wed, 08 Aug 2007 20:42:36 +0200
> From: Stephan Meyer <ste...@we...>
> Subject: Re: [Libusb-win32-devel] Libusb and Javax.usb
> To: lib...@li...
> Message-ID: <297...@we...>
> Content-Type: text/plain; charset=iso-8859-15
>
>
> transfer.c already has support for 'short packets'. The
> USBD_SHORT_TRANSFER_OK
> flag is explicitly set before submitting an URB.
>
> Stephan
>
>
> > Hello,
> >
> > I am working in Javax.Usb and trying to implement it for windows using
> Libusb but some features are
> > missing from Libusb, I am working in the things that I can do but some
> others I can not.
> >
> > I need help in supporting "Short Packets" submission. All the changes
> will be in the file transfer.c .
> > If anyone can do that or help me, I will really appreciate that.
> >
> > Thanks
> >
> > Bye
> >
> > -----------------------------------------------------------------
> >
> ------------------------------------------------------------------------
> -
> > 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/
> >
> > -----------------------------------------------------------------
> > _______________________________________________
> > Libusb-win32-devel mailing list
> > Lib...@li...
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> >
>
>
> _______________________________________________________________________
> Jetzt neu! Sch?tzen Sie Ihren PC mit McAfee und WEB.DE. 3 Monate
> kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc=022220
>
>
>
>
> ------------------------------
>
> Message: 3
> Date: Wed, 08 Aug 2007 20:52:21 +0200
> From: Stephan Meyer <ste...@we...>
> Subject: Re: [Libusb-win32-devel] Composite device - HID + custom
> To: lib...@li...
> Message-ID: <297...@we...>
> Content-Type: text/plain; charset=iso-8859-15
>
>
> >
> >
> > Hello All!
> >
> > I'm developing gaming device for flight simulation.
> > Part of the device is HID joystick, another part is custom
> input(encoders,
> > DACs, rotary switches, etc) and output (LED displays, PWM controlled
> gauges,
> > lamps, etc).
> >
> > Originally it was pure HID device with input and output reports
> defind, but
> > I've found that I need more data to be transferred in and out.
> >
> > So my goal is to use Windows driver for HID part and LibUSB for custom
> part.
> > In host application I'm going to use bulk read and writes.
> >
> > The first (and major) question is - it is possible to write the inf
> file in
> > a way where the HID part(&MI_00) is served by windows driver and the
> custom
> > part is served by LibUSB?
>
> Yes that's possible. See
> http://msdn2.microsoft.com/en-us/library/ms791091.aspx
> for details.
>
> >
> > The second question is actually regarding bulk transfer.
> > The device(AT91SAM7S256) has 4 endpoints, 2 of them (planned to be
> used by
> > custom part) has size of 64 bytes. Also the endpoints support
> ping-pong
> > transfer.
> >
> > I plan to bulk transfer 256-512 bytes in one usb_bulk_write/read call
> so I
> > suppose that there will be 4-8 consequentive data out/in transactions.
> The
> > question is - will it work as expected or I can send no more than
> maximum
> > EP size in a time?
>
> The amount of data you can send or receive at once is only limited
> by the OS and/or your system's RAM.
>
> >
> > Thanks!
> >
> > Best regards,
> > Konstantin Klubnichkin
> > --
> > View this message in context:
> http://www.nabble.com/Composite-device---HID-%2B-custom-tf4229374.html#a
> 12031879
> > Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com.
> >
> >
> >
> ------------------------------------------------------------------------
> -
> > 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/
> > _______________________________________________
> > Libusb-win32-devel mailing list
> > Lib...@li...
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> >
>
>
> ________________________________________________________________________
> ______
> Jetzt neu! Im riesigen WEB.DE Club SmartDrive Dateien freigeben und mit
> Freunden teilen!
> http://www.freemail.web.de/club/smartdrive_ttc.htm/?mc=021134
>
>
>
>
> ------------------------------
>
> Message: 4
> Date: Wed, 08 Aug 2007 21:02:48 +0200
> From: Stephan Meyer <ste...@we...>
> Subject: Re: [Libusb-win32-devel] Simple Question for Libusb developer
> To: lib...@li...
> Message-ID: <297...@we...>
> Content-Type: text/plain; charset=iso-8859-15
>
>
> Adding the feature should not be that difficult if you are
> familiar with Windows kernel driver programming.
>
> But I can't imagine any real world application that would
> benefit from such a feature. What are you planning to do?
>
> Stephan
>
>
> > Hello,
> >
> > I want to add asynchronous control submission to Libusb. does that can
> be simply done in the same
> > way as in Bulk, Interrupt and Isochronous submission or there are
> hidden synchronization problems
> > or any other problems that I did not notice???
> >
> >
> > Thank you,
> >
> > Islam Beltagy
> >
> > -----------------------------------------------------------------
> >
> ------------------------------------------------------------------------
> -
> > 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/
> >
> > -----------------------------------------------------------------
> > _______________________________________________
> > Libusb-win32-devel mailing list
> > Lib...@li...
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> >
>
>
> _____________________________________________________________________
> Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
> http://smartsurfer.web.de/?mc=100071&distributionid=000000000066
>
>
>
>
> ------------------------------
>
> Message: 5
> Date: Wed, 08 Aug 2007 21:10:38 +0200
> From: ste...@we...
> Subject: Re: [Libusb-win32-devel] Divide-by-zero error in driver
> causes BSD on Windows XP SP2
> To: lib...@li...
> Message-ID: <297...@we...>
> Content-Type: text/plain; charset=iso-8859-15
>
>
> Thanks for the patch, Rob! I'll add this soon.
>
> Stephan
>
> >
> > >
> > > I had to fix the code that comprises the function create_urb() in
> the
> > > file transfer.c for proper handling of the packet_size parameter for
> > > isochronous reads (see below). Also, I added proper handling for
> > > num_packets as well. I had previously neglected to fill in
> packet_size
> > > prior to this fix and zero was being passed in as packet_size
> resulting
> > > in a divide-by-zero error in the driver and the BSD.
> > >
> > >
> > > static NTSTATUS create_urb(libusb_device_t *dev, URB **urb, int
> > > direction,
> > > int urb_function, int endpoint, int
> > > packet_size,
> > > MDL *buffer, int size)
> > > {
> > > USBD_PIPE_HANDLE pipe_handle = NULL;
> > > int num_packets = 0;
> > > int i, urb_size;
> > >
> > > *urb = NULL;
> > >
> > > if(!get_pipe_handle(dev, endpoint, &pipe_handle))
> > > {
> > > DEBUG_ERROR("create_urb(): getting endpoint pipe failed");
> > > return STATUS_INVALID_PARAMETER;
> > > }
> > >
> > > /* isochronous transfer */
> > > if(urb_function == URB_FUNCTION_ISOCH_TRANSFER)
> > > {
> > > if (packet_size <= 0)
> > > {
> > > DEBUG_ERROR("create_urb(): invalid packet size = %d",
> > > packet_size);
> > > return STATUS_INVALID_PARAMETER;
> > > }
> > >
> > > num_packets = (size + packet_size - 1) / packet_size;
> > >
> > > if (num_packets <= 0)
> > > {
> > > DEBUG_ERROR("create_urb(): invalid number of packets =
> %d",
> > > num_packets);
> > > return STATUS_INVALID_PARAMETER;
> > > }
> > >
> > > if(num_packets > 255)
> > > {
> > > DEBUG_ERROR("create_urb(): transfer size too large");
> > > return STATUS_INVALID_PARAMETER;
> > > }
> > >
> > > urb_size = sizeof(struct _URB_ISOCH_TRANSFER)
> > > + sizeof(USBD_ISO_PACKET_DESCRIPTOR) * num_packets;
> > > }
> > > else /* bulk or interrupt transfer */
> > > {
> > > urb_size = sizeof(struct _URB_BULK_OR_INTERRUPT_TRANSFER);
> > > }
> > >
> > > *urb = ExAllocatePool(NonPagedPool, urb_size);
> > >
> > > if(!*urb)
> > > {
> > > DEBUG_ERROR("create_urb(): memory allocation error");
> > > return STATUS_NO_MEMORY;
> > > }
> > >
> > > memset(*urb, 0, urb_size);
> > >
> > > (*urb)->UrbHeader.Length = (USHORT)urb_size;
> > > (*urb)->UrbHeader.Function = (USHORT)urb_function;
> > >
> > > /* isochronous transfer */
> > > if(urb_function == URB_FUNCTION_ISOCH_TRANSFER)
> > > {
> > > (*urb)->UrbIsochronousTransfer.PipeHandle = pipe_handle;
> > > (*urb)->UrbIsochronousTransfer.TransferFlags
> > > = direction | USBD_SHORT_TRANSFER_OK |
> > > USBD_START_ISO_TRANSFER_ASAP;
> > > (*urb)->UrbIsochronousTransfer.TransferBufferLength = size;
> > > (*urb)->UrbIsochronousTransfer.TransferBufferMDL = buffer;
> > > (*urb)->UrbIsochronousTransfer.NumberOfPackets = num_packets;
> > >
> > > for(i = 0; i < num_packets; i++)
> > > {
> > > (*urb)->UrbIsochronousTransfer.IsoPacket[i].Offset = i *
> > > packet_size;
> > > (*urb)->UrbIsochronousTransfer.IsoPacket[i].Length =
> > > packet_size;
> > > }
> > > }
> > > /* bulk or interrupt transfer */
> > > else
> > > {
> > > (*urb)->UrbBulkOrInterruptTransfer.PipeHandle = pipe_handle;
> > > (*urb)->UrbBulkOrInterruptTransfer.TransferFlags
> > > = direction | USBD_SHORT_TRANSFER_OK;
> > > (*urb)->UrbBulkOrInterruptTransfer.TransferBufferLength =
> size;
> > > (*urb)->UrbBulkOrInterruptTransfer.TransferBufferMDL = buffer;
> > > }
> > >
> > > return STATUS_SUCCESS;
> > > }
> > >
> > > Rob Krakora
> > > Software Engineer
> > > Delphi Electronics & Safety
> > > e-mail: rob...@de...
> > > phone: 765-451-8574
> > >
> > > -----Original Message-----
> > > From: lib...@li...
> > > [mailto:lib...@li...] On Behalf
> Of
> > > lib...@li...
> > > Sent: Wednesday, July 25, 2007 3:04 PM
> > > To: lib...@li...
> > > Subject: Libusb-win32-devel Digest, Vol 14, Issue 10
> > >
> > > Send Libusb-win32-devel mailing list submissions to
> > > lib...@li...
> > >
> > > To subscribe or unsubscribe via the World Wide Web, visit
> > > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> > > or, via email, send a message with subject or body 'help' to
> > > lib...@li...
> > >
> > > You can reach the person managing the list at
> > > lib...@li...
> > >
> > > When replying, please edit your Subject line so it is more specific
> > > than "Re: Contents of Libusb-win32-devel digest..."
> > >
> > >
> > > Today's Topics:
> > >
> > > 1. Not working, vista32 (Carl Kenner)
> > >
> > >
> > >
> ----------------------------------------------------------------------
> > >
> > > Message: 1
> > > Date: Wed, 25 Jul 2007 22:08:39 +0930
> > > From: "Carl Kenner" <car...@gm...>
> > > Subject: [Libusb-win32-devel] Not working, vista32
> > > To: lib...@li...
> > > Message-ID:
> > > <fab...@ma...>
> > > Content-Type: text/plain; charset=ISO-8859-1; format=flowed
> > >
> > > Installing the latest filter driver (0.1.12.1) on my vista32 laptop
> > > gives no error, but causes HID devices in device manager to have
> error
> > > 39, and the test program gives version -1,-1,-1,-1 for the driver
> (but
> > > gives the correct version for the dll).
> > >
> > > Uninstalling the filter driver makes it go back to normal.
> > >
> > > On the other hand, installing the device driver version (for the
> Sony
> > > SIXAXIS) gives no error, everything looks right in device manager,
> and
> > > the test program gives the right version. But it finds a single bus,
> > > and no devices. Oh, and the inf file can't be installed by
> > > right-clicking and choosing "install", it can only be installed with
> > > Add New Hardware, All Devices, Have Disk.
> > >
> > > In case you are wondering, the SIXAXIS is a HID joystick device
> which
> > > doesn't describe itself correctly. It doesn't send any buttons or
> axis
> > > data until you read a specific feature report, but that feature
> report
> > > isn't listed as one it supports (although it does support/require
> it),
> > > so trying to read that feature report in windows with
> HidD_GetFeature
> > > always fails. Which is why I need libusb to work.
> > >
> > > So... WHY isn't libusb-win32 working for me? There is, literally,
> zero
> > > documentation, which doesn't help. I don't even know if it is
> supposed
> > > to work on Vista.
> > >
> > > And if you don't know how to fix the bugs in libusb-win32, do you
> know
> > > of any other way to read a feature report from a USB HID device
> > > without using HidD_GetFeature?
> > >
> > >
> > >
> > > ------------------------------
> > >
> > >
> ------------------------------------------------------------------------
> > > -
> > > 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/
> > >
> > > ------------------------------
> > >
> > > _______________________________________________
> > > Libusb-win32-devel mailing list
> > > Lib...@li...
> > > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> > >
> > >
> > > End of Libusb-win32-devel Digest, Vol 14, Issue 10
> > > **************************************************
> > >
> > >
> >
> ************************************************************************
> ****************
> > >
> > > Note: If the reader of this message is not the intended recipient,
> > > or an employee or agent responsible for delivering this message to
> > > the intended recipient, you are hereby notified that any
> > > dissemination, distribution or copying of this communication is
> > > strictly prohibited. If you have received this communication in
> > > error, please notify us immediately by replying to the message and
> > > deleting it from your computer. Thank you.
> > >
> > >
> >
> ************************************************************************
> ****************
> > >
> > >
> >
> ------------------------------------------------------------------------
> -
> > > 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/
> > > _______________________________________________
> > > Libusb-win32-devel mailing list
> > > Lib...@li...
> > > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> >
> >
>
>
> _______________________________________________________________________
> Jetzt neu! Sch?tzen Sie Ihren PC mit McAfee und WEB.DE. 3 Monate
> kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc=022220
>
>
>
>
> ------------------------------
>
> ------------------------------------------------------------------------
> -
> 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/
>
> ------------------------------
>
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>
>
> End of Libusb-win32-devel Digest, Vol 15, Issue 2
> *************************************************
>
> ****************************************************************************************
>
> Note: If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you.
>
> ****************************************************************************************
>
> -------------------------------------------------------------------------
> 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/
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>
______________________________________________________________________________
Jetzt neu! Im riesigen WEB.DE Club SmartDrive Dateien freigeben und mit
Freunden teilen! http://www.freemail.web.de/club/smartdrive_ttc.htm/?mc=021134
|
|
From: Xiaofan C. <xia...@gm...> - 2007-08-09 01:22:20
|
On 8/9/07, Eusebiu Marcu <mar...@gm...> wrote: > Hello... > I am using C#.NET 2.0 and #usblib(on WinXP SP2) and I want to read some > buffers from USB. It is said that #usblib does not work well. Maybe you can try this LibUsbDotNet instead. http://www.picmicrochip.com/ > return usb_bulk_read(dev, ep, bytes, bytes == null ? 0 : bytes.Length, > timeout); > > I get -116 error if I use 0x82 as endpoint and if I use 0 or 1, I get -22. > Can you help me with that? libusb-win32 need the direction bits. So you will need to use 0x82 for EP2 IN and 0x2 for EP2 OUT. Regards, Xiaofan |
|
From: Islam B. <is...@gm...> - 2007-08-08 19:51:53
|
ok, great. What I am planing to do it implement Javax.Usb for windows using Libusb as the kernel driver. One of the spec of Javax.Usb is that asynchronous control submission is allowed. That is why I am looking to add it to Libusb Thank you for your help Bye Islam Beltagy |
|
From: Eusebiu M. <mar...@gm...> - 2007-08-08 19:50:49
|
Hello...
I am using C#.NET 2.0 and #usblib(on WinXP SP2) and I want to read some
buffers from USB.
After I found the device and open it :
public Device OpenDevice()
{
return new Device(this);
}
//.....
internal Device(Descriptor descriptor)
{
this.descriptor = descriptor;
this.deviceHandle = NativeMethods.usb_open(descriptor.NativeDevice);
if (this.deviceHandle == IntPtr.Zero) {
throw new UsbException("Can't open device.");
}
int rc = NativeMethods.usb_set_configuration(deviceHandle, 1);
if (rc < 0) {
throw new MethodCallUsbException("usb_set_configuration", rc);
}
rc = NativeMethods.usb_claim_interface(deviceHandle, 0);
if (rc < 0) {
throw new MethodCallUsbException("usb_claim_interface", rc);
}
rc = NativeMethods.usb_set_altinterface(deviceHandle, 0);
if (rc < 0)
{
throw new MethodCallUsbException("usb_set_altinterface", rc);
}
}
I start to read from it :
byte read = new byte[1];
int noBytes = this.device.BulkRead(0x82, read);
where :
public int BulkRead(int endpoint, byte[] bytes)
{
// byte i = this.descriptor.NativeDevice.GetConfig(1).Interface.Altsetting.Endpoint.bEndpointAddress;
// when I use the line above, I get: Attempted to read or write protected
memory.
// This is often an indication that other memory is corrupt.
CheckDeviceOpen();
return NativeMethods.usb_bulk_read(deviceHandle, endpoint, bytes, timeout);
}
//in NativeMethods class
const CallingConvention CALLING_CONVENTION = CallingConvention.Cdecl;
const string LIBUSB_NATIVE_LIBRARY = "libusb0.dll";
[DllImport(LIBUSB_NATIVE_LIBRARY, CallingConvention = CALLING_CONVENTION,
ExactSpelling = true), SuppressUnmanagedCodeSecurity]
public static extern int usb_bulk_read(IntPtr dev, int ep, byte[] bytes, int
size, int timeout);
public static int usb_bulk_read(IntPtr dev, int ep, byte[] bytes, int
timeout)
{
return usb_bulk_read(dev, ep, bytes, bytes == null ? 0 : bytes.Length,
timeout);
}
I get -116 error if I use 0x82 as endpoint and if I use 0 or 1, I get -22.
Can you help me with that?
Thanks.
|
|
From: Krakora, R. V <rob...@de...> - 2007-08-08 19:46:34
|
Stephan:
Also, the following line needs to be changed from this...
num_packets =3D (size + packet_size - 1) / packet_size;
...to this as well.
num_packets =3D size / packet_size;
See function below...
static NTSTATUS create_urb(libusb_device_t *dev, URB **urb, int
direction,=20
int urb_function, int endpoint, int
packet_size,=20
MDL *buffer, int size)
{
USBD_PIPE_HANDLE pipe_handle =3D NULL;
int num_packets =3D 0;
int i, urb_size;
*urb =3D NULL;
if(!get_pipe_handle(dev, endpoint, &pipe_handle))
{
DEBUG_ERROR("create_urb(): getting endpoint pipe failed");
return STATUS_INVALID_PARAMETER;
}
/* isochronous transfer */
if(urb_function =3D=3D URB_FUNCTION_ISOCH_TRANSFER)
{
if (packet_size <=3D 0)
{
DEBUG_ERROR("create_urb(): invalid packet size =3D %d",
packet_size);
return STATUS_INVALID_PARAMETER;
}
/* L I N E T O F I X F R O M A B O V E ! ! ! */
/* num_packets =3D (size + packet_size - 1) / packet_size; */
/* F I X E D F R O M A B O V E ! ! ! */
num_packets =3D size / packet_size;
if (num_packets <=3D 0)
{
DEBUG_ERROR("create_urb(): invalid number of packets =3D %d",
num_packets);
return STATUS_INVALID_PARAMETER;
}
if(num_packets > 255)
{
DEBUG_ERROR("create_urb(): transfer size too large");
return STATUS_INVALID_PARAMETER;
}
urb_size =3D sizeof(struct _URB_ISOCH_TRANSFER)
+ sizeof(USBD_ISO_PACKET_DESCRIPTOR) * num_packets;
}
else /* bulk or interrupt transfer */
{
urb_size =3D sizeof(struct _URB_BULK_OR_INTERRUPT_TRANSFER);
}
*urb =3D ExAllocatePool(NonPagedPool, urb_size);
if(!*urb)
{
DEBUG_ERROR("create_urb(): memory allocation error");
return STATUS_NO_MEMORY;
}
memset(*urb, 0, urb_size);
(*urb)->UrbHeader.Length =3D (USHORT)urb_size;
(*urb)->UrbHeader.Function =3D (USHORT)urb_function;
/* isochronous transfer */
if(urb_function =3D=3D URB_FUNCTION_ISOCH_TRANSFER)
{
(*urb)->UrbIsochronousTransfer.PipeHandle =3D pipe_handle;
(*urb)->UrbIsochronousTransfer.TransferFlags=20
=3D direction | USBD_SHORT_TRANSFER_OK |
USBD_START_ISO_TRANSFER_ASAP;
(*urb)->UrbIsochronousTransfer.TransferBufferLength =3D size;
(*urb)->UrbIsochronousTransfer.TransferBufferMDL =3D buffer;
(*urb)->UrbIsochronousTransfer.NumberOfPackets =3D num_packets;
for(i =3D 0; i < num_packets; i++)
{
(*urb)->UrbIsochronousTransfer.IsoPacket[i].Offset =3D i *
packet_size;
(*urb)->UrbIsochronousTransfer.IsoPacket[i].Length =3D
packet_size;
}
}
/* bulk or interrupt transfer */
else
{
(*urb)->UrbBulkOrInterruptTransfer.PipeHandle =3D pipe_handle;
(*urb)->UrbBulkOrInterruptTransfer.TransferFlags=20
=3D direction | USBD_SHORT_TRANSFER_OK;
(*urb)->UrbBulkOrInterruptTransfer.TransferBufferLength =3D size;
(*urb)->UrbBulkOrInterruptTransfer.TransferBufferMDL =3D buffer;
}
return STATUS_SUCCESS;
}
Best Regards,
Rob Krakora
Software Engineer
Delphi Electronics & Safety
e-mail: rob...@de...
phone: 765-451-8574
-----Original Message-----
From: lib...@li...
[mailto:lib...@li...] On Behalf Of
lib...@li...
Sent: Wednesday, August 08, 2007 3:11 PM
To: lib...@li...
Subject: Libusb-win32-devel Digest, Vol 15, Issue 2
Send Libusb-win32-devel mailing list submissions to
lib...@li...
To subscribe or unsubscribe via the World Wide Web, visit
https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
or, via email, send a message with subject or body 'help' to
lib...@li...
You can reach the person managing the list at
lib...@li...
When replying, please edit your Subject line so it is more specific
than "Re: Contents of Libusb-win32-devel digest..."
Today's Topics:
1. Simple Question for Libusb developer (Islam Beltagy)
2. Re: Libusb and Javax.usb (Stephan Meyer)
3. Re: Composite device - HID + custom (Stephan Meyer)
4. Re: Simple Question for Libusb developer (Stephan Meyer)
5. Re: Divide-by-zero error in driver causes BSD on Windows XP
SP2 (ste...@we...)
----------------------------------------------------------------------
Message: 1
Date: Wed, 8 Aug 2007 17:31:58 +0200
From: "Islam Beltagy" <is...@gm...>
Subject: [Libusb-win32-devel] Simple Question for Libusb developer
To: Lib...@li...
Message-ID:
<a1a...@ma...>
Content-Type: text/plain; charset=3D"iso-8859-1"
Hello,
I want to add asynchronous control submission to Libusb. does that can
be
simply done in the same way as in Bulk, Interrupt and Isochronous
submission
or there are hidden synchronization problems or any other problems that
I
did not notice???
Thank you,
Islam Beltagy
-------------- next part --------------
An HTML attachment was scrubbed...
------------------------------
Message: 2
Date: Wed, 08 Aug 2007 20:42:36 +0200
From: Stephan Meyer <ste...@we...>
Subject: Re: [Libusb-win32-devel] Libusb and Javax.usb
To: lib...@li...
Message-ID: <297...@we...>
Content-Type: text/plain; charset=3Diso-8859-15
transfer.c already has support for 'short packets'. The
USBD_SHORT_TRANSFER_OK
flag is explicitly set before submitting an URB.
Stephan
> Hello,=20
>=20
> I am working in Javax.Usb and trying to implement it for windows using
Libusb but some features are=20
> missing from Libusb, I am working in the things that I can do but some
others I can not.
>=20
> I need help in supporting "Short Packets" submission. All the changes
will be in the file transfer.c .=20
> If anyone can do that or help me, I will really appreciate that.
>=20
> Thanks
>=20
> Bye
>=20
> -----------------------------------------------------------------
>
------------------------------------------------------------------------
-
> 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/
>=20
> -----------------------------------------------------------------
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>=20
_______________________________________________________________________
Jetzt neu! Sch?tzen Sie Ihren PC mit McAfee und WEB.DE. 3 Monate
kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc=3D022220
------------------------------
Message: 3
Date: Wed, 08 Aug 2007 20:52:21 +0200
From: Stephan Meyer <ste...@we...>
Subject: Re: [Libusb-win32-devel] Composite device - HID + custom
To: lib...@li...
Message-ID: <297...@we...>
Content-Type: text/plain; charset=3Diso-8859-15
>=20
>=20
> Hello All!
>=20
> I'm developing gaming device for flight simulation.
> Part of the device is HID joystick, another part is custom
input(encoders,
> DACs, rotary switches, etc) and output (LED displays, PWM controlled
gauges,
> lamps, etc).
>=20
> Originally it was pure HID device with input and output reports
defind, but
> I've found that I need more data to be transferred in and out.=20
>=20
> So my goal is to use Windows driver for HID part and LibUSB for custom
part.
> In host application I'm going to use bulk read and writes.=20
>=20
> The first (and major) question is - it is possible to write the inf
file in
> a way where the HID part(&MI_00) is served by windows driver and the
custom
> part is served by LibUSB?
Yes that's possible. See
http://msdn2.microsoft.com/en-us/library/ms791091.aspx=20
for details.
=20
>=20
> The second question is actually regarding bulk transfer.
> The device(AT91SAM7S256) has 4 endpoints, 2 of them (planned to be
used by
> custom part) has size of 64 bytes. Also the endpoints support
ping-pong
> transfer.=20
>=20
> I plan to bulk transfer 256-512 bytes in one usb_bulk_write/read call
so I
> suppose that there will be 4-8 consequentive data out/in transactions.
The
> question is - will it work as expected or I can send no more than
maximum
> EP size in a time?
The amount of data you can send or receive at once is only limited
by the OS and/or your system's RAM.
>=20
> Thanks!
>=20
> Best regards,
> Konstantin Klubnichkin
> --=20
> View this message in context:
http://www.nabble.com/Composite-device---HID-%2B-custom-tf4229374.html#a
12031879
> Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com.
>=20
>=20
>
------------------------------------------------------------------------
-
> 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/
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>=20
________________________________________________________________________
______
Jetzt neu! Im riesigen WEB.DE Club SmartDrive Dateien freigeben und mit=20
Freunden teilen!
http://www.freemail.web.de/club/smartdrive_ttc.htm/?mc=3D021134
------------------------------
Message: 4
Date: Wed, 08 Aug 2007 21:02:48 +0200
From: Stephan Meyer <ste...@we...>
Subject: Re: [Libusb-win32-devel] Simple Question for Libusb developer
To: lib...@li...
Message-ID: <297...@we...>
Content-Type: text/plain; charset=3Diso-8859-15
Adding the feature should not be that difficult if you are
familiar with Windows kernel driver programming.
But I can't imagine any real world application that would
benefit from such a feature. What are you planning to do?
Stephan
> Hello,=20
>=20
> I want to add asynchronous control submission to Libusb. does that can
be simply done in the same=20
> way as in Bulk, Interrupt and Isochronous submission or there are
hidden synchronization problems=20
> or any other problems that I did not notice???
>=20
>=20
> Thank you,
>=20
> Islam Beltagy
>=20
> -----------------------------------------------------------------
>
------------------------------------------------------------------------
-
> 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/
>=20
> -----------------------------------------------------------------
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>=20
_____________________________________________________________________
Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
http://smartsurfer.web.de/?mc=3D100071&distributionid=3D000000000066
------------------------------
Message: 5
Date: Wed, 08 Aug 2007 21:10:38 +0200
From: ste...@we...
Subject: Re: [Libusb-win32-devel] Divide-by-zero error in driver
causes BSD on Windows XP SP2
To: lib...@li...
Message-ID: <297...@we...>
Content-Type: text/plain; charset=3Diso-8859-15
Thanks for the patch, Rob! I'll add this soon.
Stephan
>=20
> >=20
> > I had to fix the code that comprises the function create_urb() in
the
> > file transfer.c for proper handling of the packet_size parameter for
> > isochronous reads (see below). Also, I added proper handling for
> > num_packets as well. I had previously neglected to fill in
packet_size
> > prior to this fix and zero was being passed in as packet_size
resulting
> > in a divide-by-zero error in the driver and the BSD.
> >=20
> >=20
> > static NTSTATUS create_urb(libusb_device_t *dev, URB **urb, int
> > direction,=20
> > int urb_function, int endpoint, int
> > packet_size,=20
> > MDL *buffer, int size)
> > {
> > USBD_PIPE_HANDLE pipe_handle =3D NULL;
> > int num_packets =3D 0;
> > int i, urb_size;
> >=20
> > *urb =3D NULL;
> >=20
> > if(!get_pipe_handle(dev, endpoint, &pipe_handle))
> > {
> > DEBUG_ERROR("create_urb(): getting endpoint pipe failed");
> > return STATUS_INVALID_PARAMETER;
> > }
> >=20
> > /* isochronous transfer */
> > if(urb_function =3D=3D URB_FUNCTION_ISOCH_TRANSFER)
> > {
> > if (packet_size <=3D 0)
> > {
> > DEBUG_ERROR("create_urb(): invalid packet size =3D %d",
> > packet_size);
> > return STATUS_INVALID_PARAMETER;
> > }
> >=20
> > num_packets =3D (size + packet_size - 1) / packet_size;
> >=20
> > if (num_packets <=3D 0)
> > {
> > DEBUG_ERROR("create_urb(): invalid number of packets =3D
%d",
> > num_packets);
> > return STATUS_INVALID_PARAMETER;
> > }
> >=20
> > if(num_packets > 255)
> > {
> > DEBUG_ERROR("create_urb(): transfer size too large");
> > return STATUS_INVALID_PARAMETER;
> > }
> >=20
> > urb_size =3D sizeof(struct _URB_ISOCH_TRANSFER)
> > + sizeof(USBD_ISO_PACKET_DESCRIPTOR) * num_packets;
> > }
> > else /* bulk or interrupt transfer */
> > {
> > urb_size =3D sizeof(struct _URB_BULK_OR_INTERRUPT_TRANSFER);
> > }
> >=20
> > *urb =3D ExAllocatePool(NonPagedPool, urb_size);
> >=20
> > if(!*urb)
> > {
> > DEBUG_ERROR("create_urb(): memory allocation error");
> > return STATUS_NO_MEMORY;
> > }
> >=20
> > memset(*urb, 0, urb_size);
> >=20
> > (*urb)->UrbHeader.Length =3D (USHORT)urb_size;
> > (*urb)->UrbHeader.Function =3D (USHORT)urb_function;
> >=20
> > /* isochronous transfer */
> > if(urb_function =3D=3D URB_FUNCTION_ISOCH_TRANSFER)
> > {
> > (*urb)->UrbIsochronousTransfer.PipeHandle =3D pipe_handle;
> > (*urb)->UrbIsochronousTransfer.TransferFlags=20
> > =3D direction | USBD_SHORT_TRANSFER_OK |
> > USBD_START_ISO_TRANSFER_ASAP;
> > (*urb)->UrbIsochronousTransfer.TransferBufferLength =3D size;
> > (*urb)->UrbIsochronousTransfer.TransferBufferMDL =3D buffer;
> > (*urb)->UrbIsochronousTransfer.NumberOfPackets =3D num_packets;
> >=20
> > for(i =3D 0; i < num_packets; i++)
> > {
> > (*urb)->UrbIsochronousTransfer.IsoPacket[i].Offset =3D i *
> > packet_size;
> > (*urb)->UrbIsochronousTransfer.IsoPacket[i].Length =3D
> > packet_size;
> > }
> > }
> > /* bulk or interrupt transfer */
> > else
> > {
> > (*urb)->UrbBulkOrInterruptTransfer.PipeHandle =3D pipe_handle;
> > (*urb)->UrbBulkOrInterruptTransfer.TransferFlags=20
> > =3D direction | USBD_SHORT_TRANSFER_OK;
> > (*urb)->UrbBulkOrInterruptTransfer.TransferBufferLength =3D
size;
> > (*urb)->UrbBulkOrInterruptTransfer.TransferBufferMDL =3D buffer;
> > }
> >=20
> > return STATUS_SUCCESS;
> > }
> >=20
> > Rob Krakora
> > Software Engineer
> > Delphi Electronics & Safety
> > e-mail: rob...@de...
> > phone: 765-451-8574
> >=20
> > -----Original Message-----
> > From: lib...@li...
> > [mailto:lib...@li...] On Behalf
Of
> > lib...@li...
> > Sent: Wednesday, July 25, 2007 3:04 PM
> > To: lib...@li...
> > Subject: Libusb-win32-devel Digest, Vol 14, Issue 10
> >=20
> > Send Libusb-win32-devel mailing list submissions to
> > lib...@li...
> >=20
> > To subscribe or unsubscribe via the World Wide Web, visit
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> > or, via email, send a message with subject or body 'help' to
> > lib...@li...
> >=20
> > You can reach the person managing the list at
> > lib...@li...
> >=20
> > When replying, please edit your Subject line so it is more specific
> > than "Re: Contents of Libusb-win32-devel digest..."
> >=20
> >=20
> > Today's Topics:
> >=20
> > 1. Not working, vista32 (Carl Kenner)
> >=20
> >=20
> >
----------------------------------------------------------------------
> >=20
> > Message: 1
> > Date: Wed, 25 Jul 2007 22:08:39 +0930
> > From: "Carl Kenner" <car...@gm...>
> > Subject: [Libusb-win32-devel] Not working, vista32
> > To: lib...@li...
> > Message-ID:
> > <fab...@ma...>
> > Content-Type: text/plain; charset=3DISO-8859-1; format=3Dflowed
> >=20
> > Installing the latest filter driver (0.1.12.1) on my vista32 laptop
> > gives no error, but causes HID devices in device manager to have
error
> > 39, and the test program gives version -1,-1,-1,-1 for the driver
(but
> > gives the correct version for the dll).
> >=20
> > Uninstalling the filter driver makes it go back to normal.
> >=20
> > On the other hand, installing the device driver version (for the
Sony
> > SIXAXIS) gives no error, everything looks right in device manager,
and
> > the test program gives the right version. But it finds a single bus,
> > and no devices. Oh, and the inf file can't be installed by
> > right-clicking and choosing "install", it can only be installed with
> > Add New Hardware, All Devices, Have Disk.
> >=20
> > In case you are wondering, the SIXAXIS is a HID joystick device
which
> > doesn't describe itself correctly. It doesn't send any buttons or
axis
> > data until you read a specific feature report, but that feature
report
> > isn't listed as one it supports (although it does support/require
it),
> > so trying to read that feature report in windows with
HidD_GetFeature
> > always fails. Which is why I need libusb to work.
> >=20
> > So... WHY isn't libusb-win32 working for me? There is, literally,
zero
> > documentation, which doesn't help. I don't even know if it is
supposed
> > to work on Vista.
> >=20
> > And if you don't know how to fix the bugs in libusb-win32, do you
know
> > of any other way to read a feature report from a USB HID device
> > without using HidD_GetFeature?
> >=20
> >=20
> >=20
> > ------------------------------
> >=20
> >
------------------------------------------------------------------------
> > -
> > 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/
> >=20
> > ------------------------------
> >=20
> > _______________________________________________
> > Libusb-win32-devel mailing list
> > Lib...@li...
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> >=20
> >=20
> > End of Libusb-win32-devel Digest, Vol 14, Issue 10
> > **************************************************
> >=20
> >=20
>
************************************************************************
****************
> >=20
> > Note: If the reader of this message is not the intended recipient,=20
> > or an employee or agent responsible for delivering this message to=20
> > the intended recipient, you are hereby notified that any=20
> > dissemination, distribution or copying of this communication is=20
> > strictly prohibited. If you have received this communication in=20
> > error, please notify us immediately by replying to the message and=20
> > deleting it from your computer. Thank you.=20
> >=20
> >=20
>
************************************************************************
****************
> >=20
> >=20
>
------------------------------------------------------------------------
-
> > 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/
> > _______________________________________________
> > Libusb-win32-devel mailing list
> > Lib...@li...
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>=20
>=20
_______________________________________________________________________
Jetzt neu! Sch?tzen Sie Ihren PC mit McAfee und WEB.DE. 3 Monate
kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc=3D022220
------------------------------
------------------------------------------------------------------------
-
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/
------------------------------
_______________________________________________
Libusb-win32-devel mailing list
Lib...@li...
https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
End of Libusb-win32-devel Digest, Vol 15, Issue 2
*************************************************
***************************************************************************=
*************
Note: If the reader of this message is not the intended recipient, or an=
employee or agent responsible for delivering this message to the intended=
recipient, you are hereby notified that any dissemination, distribution or=
copying of this communication is strictly prohibited. If you have received=
this communication in error, please notify us immediately by replying to=
the message and deleting it from your computer. Thank you.=20
***************************************************************************=
*************
|
|
From: <ste...@we...> - 2007-08-08 19:10:50
|
Thanks for the patch, Rob! I'll add this soon.
Stephan
>=20
> >=20
> > I had to fix the code that comprises the function create=5Furb() in the
> > file transfer.c for proper handling of the packet=5Fsize parameter for
> > isochronous reads (see below). Also, I added proper handling for
> > num=5Fpackets as well. I had previously neglected to fill in packet=5Fsiz=
e
> > prior to this fix and zero was being passed in as packet=5Fsize resultin=
g
> > in a divide-by-zero error in the driver and the BSD.
> >=20
> >=20
> > static NTSTATUS create=5Furb(libusb=5Fdevice=5Ft *dev, URB **urb, int
> > direction,=20
> > int urb=5Ffunction, int endpoint, int
> > packet=5Fsize,=20
> > MDL *buffer, int size)
> > {
> > USBD=5FPIPE=5FHANDLE pipe=5Fhandle =3D NULL;
> > int num=5Fpackets =3D 0;
> > int i, urb=5Fsize;
> >=20
> > *urb =3D NULL;
> >=20
> > if(!get=5Fpipe=5Fhandle(dev, endpoint, &pipe=5Fhandle))
> > {
> > DEBUG=5FERROR("create=5Furb(): getting endpoint pipe failed");
> > return STATUS=5FINVALID=5FPARAMETER;
> > }
> >=20
> > /* isochronous transfer */
> > if(urb=5Ffunction =3D=3D URB=5FFUNCTION=5FISOCH=5FTRANSFER)
> > {
> > if (packet=5Fsize <=3D 0)
> > {
> > DEBUG=5FERROR("create=5Furb(): invalid packet size =3D %d",
> > packet=5Fsize);
> > return STATUS=5FINVALID=5FPARAMETER;
> > }
> >=20
> > num=5Fpackets =3D (size + packet=5Fsize - 1) / packet=5Fsize;
> >=20
> > if (num=5Fpackets <=3D 0)
> > {
> > DEBUG=5FERROR("create=5Furb(): invalid number of packets =3D %d",
> > num=5Fpackets);
> > return STATUS=5FINVALID=5FPARAMETER;
> > }
> >=20
> > if(num=5Fpackets > 255)
> > {
> > DEBUG=5FERROR("create=5Furb(): transfer size too large");
> > return STATUS=5FINVALID=5FPARAMETER;
> > }
> >=20
> > urb=5Fsize =3D sizeof(struct =5FURB=5FISOCH=5FTRANSFER)
> > + sizeof(USBD=5FISO=5FPACKET=5FDESCRIPTOR) * num=5Fpackets;
> > }
> > else /* bulk or interrupt transfer */
> > {
> > urb=5Fsize =3D sizeof(struct =5FURB=5FBULK=5FOR=5FINTERRUPT=5FTRANSFER);
> > }
> >=20
> > *urb =3D ExAllocatePool(NonPagedPool, urb=5Fsize);
> >=20
> > if(!*urb)
> > {
> > DEBUG=5FERROR("create=5Furb(): memory allocation error");
> > return STATUS=5FNO=5FMEMORY;
> > }
> >=20
> > memset(*urb, 0, urb=5Fsize);
> >=20
> > (*urb)->UrbHeader.Length =3D (USHORT)urb=5Fsize;
> > (*urb)->UrbHeader.Function =3D (USHORT)urb=5Ffunction;
> >=20
> > /* isochronous transfer */
> > if(urb=5Ffunction =3D=3D URB=5FFUNCTION=5FISOCH=5FTRANSFER)
> > {
> > (*urb)->UrbIsochronousTransfer.PipeHandle =3D pipe=5Fhandle;
> > (*urb)->UrbIsochronousTransfer.TransferFlags=20
> > =3D direction | USBD=5FSHORT=5FTRANSFER=5FOK |
> > USBD=5FSTART=5FISO=5FTRANSFER=5FASAP;
> > (*urb)->UrbIsochronousTransfer.TransferBufferLength =3D size;
> > (*urb)->UrbIsochronousTransfer.TransferBufferMDL =3D buffer;
> > (*urb)->UrbIsochronousTransfer.NumberOfPackets =3D num=5Fpackets;
> >=20
> > for(i =3D 0; i < num=5Fpackets; i++)
> > {
> > (*urb)->UrbIsochronousTransfer.IsoPacket[i].Offset =3D i *
> > packet=5Fsize;
> > (*urb)->UrbIsochronousTransfer.IsoPacket[i].Length =3D
> > packet=5Fsize;
> > }
> > }
> > /* bulk or interrupt transfer */
> > else
> > {
> > (*urb)->UrbBulkOrInterruptTransfer.PipeHandle =3D pipe=5Fhandle;
> > (*urb)->UrbBulkOrInterruptTransfer.TransferFlags=20
> > =3D direction | USBD=5FSHORT=5FTRANSFER=5FOK;
> > (*urb)->UrbBulkOrInterruptTransfer.TransferBufferLength =3D size;
> > (*urb)->UrbBulkOrInterruptTransfer.TransferBufferMDL =3D buffer;
> > }
> >=20
> > return STATUS=5FSUCCESS;
> > }
> >=20
> > Rob Krakora
> > Software Engineer
> > Delphi Electronics & Safety
> > e-mail: rob...@de...
> > phone: 765-451-8574
> >=20
> > -----Original Message-----
> > From: lib...@li...
> > [mailto:lib...@li...] On Behalf Of=
> > lib...@li...
> > Sent: Wednesday, July 25, 2007 3:04 PM
> > To: lib...@li...
> > Subject: Libusb-win32-devel Digest, Vol 14, Issue 10
> >=20
> > Send Libusb-win32-devel mailing list submissions to
> > lib...@li...
> >=20
> > To subscribe or unsubscribe via the World Wide Web, visit
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> > or, via email, send a message with subject or body 'help' to
> > lib...@li...
> >=20
> > You can reach the person managing the list at
> > lib...@li...
> >=20
> > When replying, please edit your Subject line so it is more specific
> > than "Re: Contents of Libusb-win32-devel digest..."
> >=20
> >=20
> > Today's Topics:
> >=20
> > 1. Not working, vista32 (Carl Kenner)
> >=20
> >=20
> > ----------------------------------------------------------------------=
> >=20
> > Message: 1
> > Date: Wed, 25 Jul 2007 22:08:39 +0930
> > From: "Carl Kenner" <car...@gm...>
> > Subject: [Libusb-win32-devel] Not working, vista32
> > To: lib...@li...
> > Message-ID:
> > <fab...@ma...>
> > Content-Type: text/plain; charset=3DISO-8859-1; format=3Dflowed
> >=20
> > Installing the latest filter driver (0.1.12.1) on my vista32 laptop
> > gives no error, but causes HID devices in device manager to have error=
> > 39, and the test program gives version -1,-1,-1,-1 for the driver (but=
> > gives the correct version for the dll).
> >=20
> > Uninstalling the filter driver makes it go back to normal.
> >=20
> > On the other hand, installing the device driver version (for the Sony
> > SIXAXIS) gives no error, everything looks right in device manager, and=
> > the test program gives the right version. But it finds a single bus,
> > and no devices. Oh, and the inf file can't be installed by
> > right-clicking and choosing "install", it can only be installed with
> > Add New Hardware, All Devices, Have Disk.
> >=20
> > In case you are wondering, the SIXAXIS is a HID joystick device which
> > doesn't describe itself correctly. It doesn't send any buttons or axis=
> > data until you read a specific feature report, but that feature report=
> > isn't listed as one it supports (although it does support/require it),=
> > so trying to read that feature report in windows with HidD=5FGetFeature
> > always fails. Which is why I need libusb to work.
> >=20
> > So... WHY isn't libusb-win32 working for me=3F There is, literally, zero=
> > documentation, which doesn't help. I don't even know if it is supposed=
> > to work on Vista.
> >=20
> > And if you don't know how to fix the bugs in libusb-win32, do you know=
> > of any other way to read a feature report from a USB HID device
> > without using HidD=5FGetFeature=3F
> >=20
> >=20
> >=20
> > ------------------------------
> >=20
> > ----------------------------------------------------------------------=
--
> > -
> > This SF.net email is sponsored by: Splunk Inc.
> > Still grepping through log files to find problems=3F Stop.
> > Now Search log events and configuration files using AJAX and a browser=
.
> > Download your FREE copy of Splunk now >> http://get.splunk.com/
> >=20
> > ------------------------------
> >=20
> > =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F
> > Libusb-win32-devel mailing list
> > Lib...@li...
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
> >=20
> >=20
> > End of Libusb-win32-devel Digest, Vol 14, Issue 10
> > **************************************************
> >=20
> >=20
> ************************************************************************=
****************
> >=20
> > Note: If the reader of this message is not the intended recipient,=20
> > or an employee or agent responsible for delivering this message to=20
> > the intended recipient, you are hereby notified that any=20
> > dissemination, distribution or copying of this communication is=20
> > strictly prohibited. If you have received this communication in=20
> > error, please notify us immediately by replying to the message and=20
> > deleting it from your computer. Thank you.=20
> >=20
> >=20
> ************************************************************************=
****************
> >=20
> >=20
> ------------------------------------------------------------------------=
-
> > This SF.net email is sponsored by: Splunk Inc.
> > Still grepping through log files to find problems=3F Stop.
> > Now Search log events and configuration files using AJAX and a browser=
.
> > Download your FREE copy of Splunk now >> http://get.splunk.com/
> > =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F
> > Libusb-win32-devel mailing list
> > Lib...@li...
> > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>=20
>=20
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F
Jetzt neu! Sch=FCtzen Sie Ihren PC mit McAfee und WEB.DE. 3 Monate
kostenlos testen. http://www.pc-sicherheit.web.de/startseite/=3Fmc=3D022220
|