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: Dan E. <Dan...@ne...> - 2006-08-21 10:24:53
|
Thanks, I'll try that. Dan. Stephan Meyer wrote: > Try the latest code from the CVS. I modified the driver's > set_configuration() function. The function's bahaviour is now > compatible to the Linux version. =20 >=20 > Stephan >=20 >=20 >> I've spotted what to me seems a pretty major difference between >> libusb and libusb-win32. In the call to set_configuration, libusb >> takes the actual configuration value, i.e. the value specified in the >> configuration descriptor, whereas libusb-win32 takes the index value >> + 1.=20 >>=20 >> This means that if you have a quirky device which has one >> configuration called configuration 2, then with libusb you would use >> set_configuration(2) to set it, whereas on libusb-win32 you would use >> set_configuration(1). This is a bit troublesome. >>=20 >> We have been hit by this since a device we are using makes the same >> error in reverse, it returns the config descriptor by value instead >> of index, so when windows initially asks for the 0th config >> descriptor, unless there is a bogus descriptor in the device called >> configuration 0 (which of course doesn't make sense since config 0 >> is the unconfigured state), the device returns an error. A >> workaround is to provide 2 config descriptors, one bogus one called >> 0 and the real one called 1. This is fine on linux since you can >> select config 1 by calling set_configuration(1), but on windows you >> have to call set_configuration(2). If someone decided not to have >> incrementing configuration values you'd be sunk with libusb-win32 at >> the moment.=20 >>=20 >> Anyway, for the moment I'm just happy that I've worked out what's >> going on and that I can select my configuration using 2. >>=20 >> Dan >>=20 >> = ---------------------------------------------------------------------- >> --- Using Tomcat but need to do more? Need to support web services, >> security? Get stuff done quickly with pre-integrated technology to >> make your job easier Download IBM WebSphere Application Server >> v.1.0.1 based on Apache Geronimo >> = http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D= 1216 >> 42 _______________________________________________=20 >> Libusb-win32-devel mailing list >> Lib...@li... >> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel >=20 >=20 > = _________________________________________________________________________= _ > Erweitern Sie FreeMail zu einem noch leistungsst=E4rkeren > E-Mail-Postfach!=20 > Mehr Infos unter http://freemail.web.de/home/landingpad/?mc=3D021131 >=20 >=20 > = -------------------------------------------------------------------------= > Using Tomcat but need to do more? Need to support web services, > security?=20 > Get stuff done quickly with pre-integrated technology to make your > job easier Download IBM WebSphere Application Server v.1.0.1 based on > Apache Geronimo > = http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D= 121642 > _______________________________________________ =20 > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel |
|
From: Stephan M. <ste...@we...> - 2006-08-20 17:27:06
|
Try the latest code from the CVS. I modified the driver's set=5Fconfiguratio= n() function. The function's bahaviour is now compatible to the Linux version.= Stephan > I've spotted what to me seems a pretty major difference between libusb > and libusb-win32. In the call to set=5Fconfiguration, libusb takes the > actual configuration value, i.e. the value specified in the > configuration descriptor, whereas libusb-win32 takes the index value + > 1. >=20 > This means that if you have a quirky device which has one configuration > called configuration 2, then with libusb you would use > set=5Fconfiguration(2) to set it, whereas on libusb-win32 you would use > set=5Fconfiguration(1). This is a bit troublesome. >=20 > We have been hit by this since a device we are using makes the same > error in reverse, it returns the config descriptor by value instead of > index, so when windows initially asks for the 0th config descriptor, > unless there is a bogus descriptor in the device called configuration 0 > (which of course doesn't make sense since config 0 is the unconfigured > state), the device returns an error. A workaround is to provide 2 config= > descriptors, one bogus one called 0 and the real one called 1. This is > fine on linux since you can select config 1 by calling > set=5Fconfiguration(1), but on windows you have to call > set=5Fconfiguration(2). If someone decided not to have incrementing > configuration values you'd be sunk with libusb-win32 at the moment. >=20 > Anyway, for the moment I'm just happy that I've worked out what's going > on and that I can select my configuration using 2. >=20 > Dan >=20 > ------------------------------------------------------------------------= - > Using Tomcat but need to do more=3F Need to support web services, security= =3F > Get stuff done quickly with pre-integrated technology to make your job e= asier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geroni= mo > http://sel.as-us.falkag.net/sel=3Fcmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D121642= > =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 =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=5F=5F=5F= Erweitern Sie FreeMail zu einem noch leistungsst=E4rkeren E-Mail-Postfach! =09 Mehr Infos unter http://freemail.web.de/home/landingpad/=3Fmc=3D021131 |
|
From: Stephan M. <ste...@we...> - 2006-08-20 17:15:01
|
Try SharpUSBLib, a .NET wrapper for libusb written in C#: http://www.icsharpcode.net/OpenSource/SharpUSBLib/default.aspx Stephan >=20 >=20 > Dear all. >=20 >=20 > I=92m using Visual Basic 2005 and like to access > my Garmin GPS receiver. >=20 >=20 > Unfortunately I=92m not able to write the initialization. >=20 >=20 > I=92m only able to access the listed function. >=20 >=20 > =20 >=20 >=20 > Please can you send me or post an example in Visual > Basic 2005 how to access the USB driver. >=20 >=20 > Thanks for your support. >=20 >=20 > =20 >=20 >=20 > Ha...@we... >=20 >=20 > =20 >=20 >=20 > =20 >=20 >=20 > =20 >=20 >=20 > This part is only working L >=20 >=20 > =20 >=20 >=20 > Declare Sub usb=5Finit Lib "libusb0.dll" () >=20 >=20 > Declare Function usb=5Ffind=5Fbusses Lib "libusb0.dll" () As Integer >=20 >=20 > Declare Function > usb=5Ffind=5Fdevices Lib "libusb0.dll" > () As Integer >=20 >=20 > =20 >=20 >=20 > usb=5Finit() >=20 >=20 > nBusses =3D > usb=5Ffind=5Fbusses() >=20 >=20 > nDevices =3D > usb=5Ffind=5Fdevices() >=20 >=20 > Label1.Text =3D "Devices " > & nDevices >=20 >=20 > Label2.Text =3D "Busses " & > nBusses >=20 >=20 > =20 >=20 >=20 > =20 >=20 > ----------------------------------------------------------------- > ------------------------------------------------------------------------= - > Using Tomcat but need to do more=3F Need to support web services, security= =3F > Get stuff done quickly with pre-integrated technology to make your job e= asier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geroni= mo > http://sel.as-us.falkag.net/sel=3Fcmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D121642= >=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 =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 Verschicken Sie romantische, coole und witzige Bilder per SMS! Jetzt bei WEB.DE FreeMail: http://f.web.de/=3Fmc=3D021193 |
|
From: Stephan M. <ste...@we...> - 2006-08-20 17:07:40
|
Patch applied. See http://libusb-win32.cvs.sourceforge.net/libusb-win32/libusb/src/install.c?revision=1.22&view=markup Stephan > Although libusb-win32 is not expected to operate on Windows NT 4 due to > lack of OS support for USB, it would be helpful if applications linked > against it could still run on NT, albeit without using USB. > > The only thing standing in the way of this currently is the use of > SetupCopyOEMInf() in usb_install_driver_np(). The NT4 SP6a version of > setupapi.dll does not have this entrypoint so a runtime link error is > generated when attempting to launch a program linked against > libusb-win32. > > I've devised the patch below following the same logic as was already in > place for UpdateDriverForPlugAndPlayDevices() from newdev.dll. There is > a slight variation in that we still link against setupapi at compile > time to obtain the other 20 or so symbols we use from it since those are > available on all platforms it seems. (I'd be willing to respin the patch > to look up all setupapi.dll symbols, but that seemed like a more > invasive change than necessary.) GetModuleHandle() is used to obtain a > handle to the already-loaded setupapi.dll and we look up only the > offending SetupCopyOEMInf() symbol from it. > > With this change in place, my application (apcupsd, FWIW) rus > successfully in non-USB mode on NT4, and libusb self-installation > continues to work on XP. > > --Adam > > > diff -u -r1.21 install.c > --- src/install.c 11 Dec 2005 13:10:50 -0000 1.21 > +++ src/install.c 16 Aug 2006 12:11:32 -0000 > @@ -48,6 +48,8 @@ > LPCSTR, > DWORD, > PBOOL); > +typedef BOOL (WINAPI * setup_copy_oem_inf_t)(PCSTR, PCSTR, DWORD, DWORD, > + PSTR, DWORD, PDWORD, PSTR*); > > /* advapi32.dll exports */ > typedef SC_HANDLE (WINAPI * open_sc_manager_t)(LPCTSTR, LPCTSTR, DWORD); > @@ -214,9 +216,11 @@ > char *p; > int dev_index; > HINSTANCE newdev_dll = NULL; > - > - update_driver_for_plug_and_play_devices_t UpdateDriverForPlugAndPlayDevices; > + HMODULE setupapi_dll = NULL; > > + update_driver_for_plug_and_play_devices_t UpdateDriverForPlugAndPlayDevices; > + setup_copy_oem_inf_t SetupCopyOEMInf; > + > newdev_dll = LoadLibrary("newdev.dll"); > > if(!newdev_dll) > @@ -235,6 +239,22 @@ > return -1; > } > > + setupapi_dll = GetModuleHandle("setupapi.dll"); > + if(!setupapi_dll) > + { > + usb_error("usb_install_driver(): loading setupapi.dll failed\n"); > + return -1; > + } > + SetupCopyOEMInf = > + (setup_copy_oem_inf_t) > + GetProcAddress(setupapi_dll, "SetupCopyOEMInfA"); > + > + if(!SetupCopyOEMInf) > + { > + usb_error("usb_install_driver(): loading setupapi.dll failed\n"); > + return -1; > + } > + > > dev_info_data.cbSize = sizeof(SP_DEVINFO_DATA); > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel ______________________________________________________________ Verschicken Sie romantische, coole und witzige Bilder per SMS! Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193 |
|
From: Anttoni J. <ant...@fg...> - 2006-08-18 11:56:09
|
Hello, I'd like to know if there are plans to port or if anyone has already ported libusb to Pocket PC. Stephan Meyer posted about the subject almost a year ago but I'm not that familiar with the USB standard and Pocket PC platform that I could do the porting by myself. Could someone please explain what should be done and how hard would it be to port usblib to Pocket PC? Anttoni |
|
From: Hans-Martin <ha...@we...> - 2006-08-17 23:02:42
|
Dear all. I'm using Visual Basic 2005 and like to access my Garmin GPS receiver. Unfortunately I'm not able to write the initialization. I'm only able to access the listed function. Please can you send me or post an example in Visual Basic 2005 how to access the USB driver. Thanks for your support. Ha...@we... This part is only working :-( Declare Sub usb_init Lib "libusb0.dll" () Declare Function usb_find_busses Lib "libusb0.dll" () As Integer Declare Function usb_find_devices Lib "libusb0.dll" () As Integer usb_init() nBusses = usb_find_busses() nDevices = usb_find_devices() Label1.Text = "Devices " & nDevices Label2.Text = "Busses " & nBusses |
|
From: Adam K. <akr...@ro...> - 2006-08-16 12:28:12
|
Although libusb-win32 is not expected to operate on Windows NT 4 due to
lack of OS support for USB, it would be helpful if applications linked
against it could still run on NT, albeit without using USB.
The only thing standing in the way of this currently is the use of
SetupCopyOEMInf() in usb_install_driver_np(). The NT4 SP6a version of
setupapi.dll does not have this entrypoint so a runtime link error is
generated when attempting to launch a program linked against
libusb-win32.
I've devised the patch below following the same logic as was already in
place for UpdateDriverForPlugAndPlayDevices() from newdev.dll. There is
a slight variation in that we still link against setupapi at compile
time to obtain the other 20 or so symbols we use from it since those are
available on all platforms it seems. (I'd be willing to respin the patch
to look up all setupapi.dll symbols, but that seemed like a more
invasive change than necessary.) GetModuleHandle() is used to obtain a
handle to the already-loaded setupapi.dll and we look up only the
offending SetupCopyOEMInf() symbol from it.
With this change in place, my application (apcupsd, FWIW) rus
successfully in non-USB mode on NT4, and libusb self-installation
continues to work on XP.
--Adam
diff -u -r1.21 install.c
--- src/install.c 11 Dec 2005 13:10:50 -0000 1.21
+++ src/install.c 16 Aug 2006 12:11:32 -0000
@@ -48,6 +48,8 @@
LPCSTR,
DWORD,
PBOOL);
+typedef BOOL (WINAPI * setup_copy_oem_inf_t)(PCSTR, PCSTR, DWORD, DWORD,
+ PSTR, DWORD, PDWORD, PSTR*);
/* advapi32.dll exports */
typedef SC_HANDLE (WINAPI * open_sc_manager_t)(LPCTSTR, LPCTSTR, DWORD);
@@ -214,9 +216,11 @@
char *p;
int dev_index;
HINSTANCE newdev_dll = NULL;
-
- update_driver_for_plug_and_play_devices_t UpdateDriverForPlugAndPlayDevices;
+ HMODULE setupapi_dll = NULL;
+ update_driver_for_plug_and_play_devices_t UpdateDriverForPlugAndPlayDevices;
+ setup_copy_oem_inf_t SetupCopyOEMInf;
+
newdev_dll = LoadLibrary("newdev.dll");
if(!newdev_dll)
@@ -235,6 +239,22 @@
return -1;
}
+ setupapi_dll = GetModuleHandle("setupapi.dll");
+ if(!setupapi_dll)
+ {
+ usb_error("usb_install_driver(): loading setupapi.dll failed\n");
+ return -1;
+ }
+ SetupCopyOEMInf =
+ (setup_copy_oem_inf_t)
+ GetProcAddress(setupapi_dll, "SetupCopyOEMInfA");
+
+ if(!SetupCopyOEMInf)
+ {
+ usb_error("usb_install_driver(): loading setupapi.dll failed\n");
+ return -1;
+ }
+
dev_info_data.cbSize = sizeof(SP_DEVINFO_DATA);
|
|
From: <li...@ti...> - 2006-08-15 10:40:40
|
lf y0u are afr@id 0f the scaIes, try An@trim.<BR> A]w@ys wanted to have a graceful figure? l think @natr1m c@n help you with 1t. <BR> <A href="http://www.breko.net/n/?108&YgnmuDyQNRmy1">http://www.breko.net/n/?108&tZW8SfSYul7sP</A><BR> |
|
From: Dan E. <Dan...@ne...> - 2006-08-13 13:04:23
|
I've spotted what to me seems a pretty major difference between libusb and libusb-win32. In the call to set_configuration, libusb takes the actual configuration value, i.e. the value specified in the configuration descriptor, whereas libusb-win32 takes the index value + 1. This means that if you have a quirky device which has one configuration called configuration 2, then with libusb you would use set_configuration(2) to set it, whereas on libusb-win32 you would use set_configuration(1). This is a bit troublesome. We have been hit by this since a device we are using makes the same error in reverse, it returns the config descriptor by value instead of index, so when windows initially asks for the 0th config descriptor, unless there is a bogus descriptor in the device called configuration 0 (which of course doesn't make sense since config 0 is the unconfigured state), the device returns an error. A workaround is to provide 2 config descriptors, one bogus one called 0 and the real one called 1. This is fine on linux since you can select config 1 by calling set_configuration(1), but on windows you have to call set_configuration(2). If someone decided not to have incrementing configuration values you'd be sunk with libusb-win32 at the moment. Anyway, for the moment I'm just happy that I've worked out what's going on and that I can select my configuration using 2. Dan |
|
From: RayS <ra...@bl...> - 2006-08-13 01:15:20
|
At 12:24 AM 8/11/2006, Alexander Eisenhuth wrote: > > I've been running SniffUSB ( > >Maybe another USB sniffer gives you more informations about the >device's data. I >use USBTrace (http://www.sysnucleus.com). You can eval it for 30 days. Thanks Alexander, I gave it a try; it has nice html log exporting, but the information appears to be the same, so both appear complete. Back to the DSP side I guess... Ray |
|
From: Alexander E. <st...@st...> - 2006-08-11 07:24:30
|
Ray Schumacher schrieb: > I am "randomly" getting an extra 2 bytes in my bulkRead() returns, and > need to determine if it is the Ti device or my Python-wrapped libusb. > The Labview demo app that came with the device does not seem to have an > issue. > > I've been running SniffUSB ( Maybe another USB sniffer gives you more informations about the device's data. I use USBTrace (http://www.sysnucleus.com). You can eval it for 30 days. Alexander |
|
From: Stephan M. <ste...@we...> - 2006-08-08 16:36:50
|
Copy libusb.a and usb.h to your application's source code folder. Then use the following command to compile your application: gcc your_app.c -o your_app.exe -I. -L. -lusb Stephan > i find the project useful.i installed the libusb drives and created inf for device. > > i included library file and header file(usb.h) in bcc compiler as well as gcc(devc++). > > but my program generates linker error that > > > > undefined reference to usb_init().. > > undefined reference to usb_find_devices().. > > ... > > for all libusb api used. > > > > > > help me please. > > tell me what basic steps i must do to run application . > > ----------------------------------------------------------------- > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > ----------------------------------------------------------------- > _______________________________________________ > 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=000000000071 |
|
From: Stephan M. <ste...@we...> - 2006-08-08 16:29:47
|
Use a more recent version of libusb0.dll/installer.=20 It should work then. Stephan > hi=20 > my problem is,when i install libusb=5Fwin32 my program did not work( the o= rdinal=20 > 82=20 > could not be located in dynamic lin library libusb0.dll),when i use dll = from bin=20 > directory the result is: > *=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=5FDLL: usb=5Fos=5Finit: dll version: 0.1.10.1 > LIBUSB=5FDLL: usb=5Fos=5Finit: driver version: 0.1.10.2 > LIBUSB=5FDLL: usb=5Fos=5Ffind=5Fbusses: found bus-0 > LIBUSB=5FDLL: usb=5Fos=5Ffind=5Fbusses: found bus-1 > LIBUSB=5FDLL: usb=5Fos=5Ffind=5Fdevices: getting device info failed > LIBUSB=5FDLL: usb=5Fos=5Ffind=5Fdevices: getting device info failed > LIBUSB=5FDLL: usb=5Fos=5Ffind=5Fdevices: getting device info failed > LIBUSB=5FDLL: usb=5Fos=5Ffind=5Fdevices: getting device info failed > device:0 > bus 0 :bus=5F0 > This bus has NULLdevices > The root=5Fdev =3D NULL > bus 1 :bus=5F1 > This bus has NULLdevices > The root=5Fdev =3D NULL > =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* > what could i do with dll=3F > with best regards,fani >=20 >=20 > ------------------------------------------------------------------------= - > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share = your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php=3Fpage=3Djoin.php&p=3Dsourceforge&CID=3DDEVDE= V > =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 =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=5F=5F=5F= Erweitern Sie FreeMail zu einem noch leistungsst=E4rkeren E-Mail-Postfach! =09 Mehr Infos unter http://freemail.web.de/home/landingpad/=3Fmc=3D021131 |
|
From: Stephan M. <ste...@we...> - 2006-08-08 16:25:55
|
> I think that there may be a handle leak in usb_io_sync, shouldn't the > ol.hEvent always be closed regardless of the success of > GetOverlappedResult? I fixed this bug. > > It is also mildy irksome that the static _usb_busses doesn't get > destroyed on application exit, since it triggers memory leak detection > tools, but I don't suppose it's a big problem. This isn't a problem since the complete heap is automatically deallocated when the process/dll terminates. Anyway, I added some code (function _usb_deinit()) that deallocates the _usb_busses list when the dll gets unloaded. > > Dan. > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > 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=000000000071 |
|
From: prabhu - <eip...@gm...> - 2006-08-07 12:06:28
|
i find the project useful.i installed the libusb drives and created inf for device. i included library file and header file(usb.h) in bcc compiler as well as gcc(devc++). but my program generates linker error that undefined reference to usb_init().. undefined reference to usb_find_devices().. ... for all libusb api used. help me please. tell me what basic steps i must do to run application . |
|
From: fani <fan...@ya...> - 2006-08-05 20:40:08
|
hi my problem is,when i install libusb_win32 my program did not work( the ordinal 82 could not be located in dynamic lin library libusb0.dll),when i use dll from bin directory the result is: *_______________________________________________ LIBUSB_DLL: usb_os_init: dll version: 0.1.10.1 LIBUSB_DLL: usb_os_init: driver version: 0.1.10.2 LIBUSB_DLL: usb_os_find_busses: found bus-0 LIBUSB_DLL: usb_os_find_busses: found bus-1 LIBUSB_DLL: usb_os_find_devices: getting device info failed LIBUSB_DLL: usb_os_find_devices: getting device info failed LIBUSB_DLL: usb_os_find_devices: getting device info failed LIBUSB_DLL: usb_os_find_devices: getting device info failed device:0 bus 0 :bus_0 This bus has NULLdevices The root_dev = NULL bus 1 :bus_1 This bus has NULLdevices The root_dev = NULL ____________________________________________________* what could i do with dll? with best regards,fani |
|
From: Dan E. <Dan...@ne...> - 2006-08-01 12:48:35
|
I think that there may be a handle leak in usb_io_sync, shouldn't the ol.hEvent always be closed regardless of the success of GetOverlappedResult? It is also mildy irksome that the static _usb_busses doesn't get destroyed on application exit, since it triggers memory leak detection tools, but I don't suppose it's a big problem. Dan. |
|
From: Dan E. <Dan...@ne...> - 2006-08-01 08:06:47
|
Thankyou very much for your swift response.
Dan.
Stephan Meyer wrote:
> I fixed the memory leak in usb_os_determine_children() (file
> windows.c) and another one in usb_find_busses() (file usb.c) by
> including the latest files from the (linux-) libusb project. =20
>=20
> The new files are in the CVS.
>=20
> I tested the functions with the following code:
>=20
> int main(void)
> {
> usb_init();
> usb_set_debug(255);
>=20
> while(1) {
> usb_find_busses();
> usb_find_devices();
> }
> }
>=20
> Everything seems to be ok now.
>=20
> Stephan
>=20
>=20
>> Hi,
>>=20
>> We've detected a memory leak which seems to have crept into libusb
>> not long ago. It looks like it's in usb_os_determine_children which
>> used to have an empty body, but now does some mallocs. I can't see
>> where these are ever freed, so if you call usb_find_devices more
>> than once you get a memory leak. Is this correct?
>>=20
>> I also can't see how buses are successfully freed upon discovery that
>> they are no longer there, but this is a very rare occurrence, whereas
>> scanning the bus for new devices happens quite often.
>>=20
>> Dan Ellis
>>=20
>>
----------------------------------------------------------------------
>> --- Take Surveys. Earn Cash. Influence the Future of IT Join
>> SourceForge.net's Techsay panel and you'll get the chance to share
>> your opinions on IT & business topics through brief surveys -- and
>> earn cash
>>
http://www.techsay.com/default.php?page=3Djoin.php&p=3Dsourceforge&CID=3D=
DEV
>> DEV _______________________________________________
>> Libusb-win32-devel mailing list
>> Lib...@li...
>> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel=20
>=20
>=20
> ______________________________________________________________
> Verschicken Sie romantische, coole und witzige Bilder per SMS!
> Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=3D021193
>=20
>=20
>
------------------------------------------------------------------------
-
> Take Surveys. Earn Cash. Influence the Future of IT Join
> SourceForge.net's Techsay panel and you'll get the chance to share
> your opinions on IT & business topics through brief surveys -- and
> earn cash
>
http://www.techsay.com/default.php?page=3Djoin.php&p=3Dsourceforge&CID=3D=
DEVDE
V
> _______________________________________________ =20
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
|
|
From: <Kar...@pr...> - 2006-08-01 02:15:16
|
I will be out of the office starting 28.07.2006 and will not return un= til 21.08.2006. I will respond to your message when I return. In urgent matter please contact Markus Kraus (mar...@pr... ) or Johann Loesl (joh...@pr...). Ich bin zur Zeit nicht im B=FCro und werde Ihre Email nach meiner R=FCc= kkehr als bald als m=F6glich beantworten. In dringenden F=E4llen wenden Sie s= ich bitte an Herrn Kraus (mar...@pr...) oder Herrn L=F6sl (Joh...@pr...). Mit freundlichen Gr=FC=DFe With best regards Karl Achter = |
|
From: Stephan M. <ste...@we...> - 2006-07-31 17:17:43
|
I fixed the memory leak in usb_os_determine_children() (file windows.c)
and another one in usb_find_busses() (file usb.c) by including the latest
files from the (linux-) libusb project.
The new files are in the CVS.
I tested the functions with the following code:
int main(void)
{
usb_init();
usb_set_debug(255);
while(1) {
usb_find_busses();
usb_find_devices();
}
}
Everything seems to be ok now.
Stephan
> Hi,
>
> We've detected a memory leak which seems to have crept into libusb not
> long ago. It looks like it's in usb_os_determine_children which used to
> have an empty body, but now does some mallocs. I can't see where these
> are ever freed, so if you call usb_find_devices more than once you get a
> memory leak. Is this correct?
>
> I also can't see how buses are successfully freed upon discovery that
> they are no longer there, but this is a very rare occurrence, whereas
> scanning the bus for new devices happens quite often.
>
> Dan Ellis
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys -- and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
______________________________________________________________
Verschicken Sie romantische, coole und witzige Bilder per SMS!
Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193
|
|
From: Dan E. <Dan...@ne...> - 2006-07-31 13:02:08
|
Hi, We've detected a memory leak which seems to have crept into libusb not long ago. It looks like it's in usb_os_determine_children which used to have an empty body, but now does some mallocs. I can't see where these are ever freed, so if you call usb_find_devices more than once you get a memory leak. Is this correct? I also can't see how buses are successfully freed upon discovery that they are no longer there, but this is a very rare occurrence, whereas scanning the bus for new devices happens quite often. Dan Ellis |
|
From: Alexander E. <st...@st...> - 2006-07-25 06:40:45
|
Yes I' sure that the printer send data, because I can send the printer request
with the help of a terminal supplied by the manufacturer and see 1 char 0x06
(ACK) returned. Might 1 byte be a problem?
Ok, now it is possible that there are further printer or usb command send to the
firmware of the printer that force the printer to answer (anyhow a behavior that
sounds quite exceptional to me)
Isn't it possible that the printers answer is grabbed by the windows printing
system?
Can I use a usb-sniffer together with libusb. I read about snoopy, but didn't
manage to install it together with usblib. Either the printer disappears at
snoopy or in the output of TestLibUsb-win.exe.
Alexander
Stephan Meyer schrieb:
> bulk_read() worked correctly. It just timed out because
> your printer didn't send any data.
>
> Are you certain that your device actually has data to send
> when you issue the read request?
>
> Stephan
>
>
>> Hello everybody,
>>
>> after two days I'm quite happy with the integration of a usb printer into my
>> application. I can write to the printer but not read from. I'v to say that I'm
>> new to USB. The error happens when i call usb_bulk_read(...)
>>
>> Version:
>> DLL version: 0.1.10.1
>> Driver version: 0.1.10.1
>>
>> Following informations ...
>> 1) Application code
>> 2) Stdout of application
>> 3) Output of TestLibUsb-win.exe
>> 4) Output of Dbgview
>>
>> I hope anybody can give me a hint
>>
>> 1) -- code of my application
>> struct usb_bus *bus;
>> int c, i, a;
>>
>> /* ... */
>>
>> for (bus = busses; bus; bus = bus->next) {
>> struct usb_device *dev;
>>
>> for (dev = bus->devices; dev; dev = dev->next) {
>> /* Check if this device is a printer */
>> if (dev->descriptor.bDeviceClass == 7)
>> {
>> /* Open the device, claim the interface and do your processing */
>> cout << "+++++" << endl;
>> }
>>
>> /* Loop through all of the configurations */
>> for (c = 0; c < dev->descriptor.bNumConfigurations; c++)
>> {
>> /* Loop through all of the interfaces */
>> for (i = 0; i < dev->config[c].bNumInterfaces; i++)
>> {
>> /* Loop through all of the alternate settings */
>> for (a = 0; a < dev->config[c].interface[i].num_altsetting; a++)
>> {
>> /* Check if this interface is a printer */
>> if (dev->config[c].interface[i].altsetting[a].bInterfaceClass == 7)
>> {
>> /* Open the device, set the alternate setting, claim the interface
>> and do your processing */
>> usb_set_debug(255);
>> usb_dev_handle* aH;
>> void *context0 = NULL;
>> int aRc = 0;
>>
>> aH = usb_open(dev);
>> aRc = usb_set_configuration(aH, 1);
>> if (usb_claim_interface(aH, 0))
>> {
>> cout << "Error usb_claim_interface" << endl;
>> return;
>> }
>>
>> int aNumBytes = 0;
>> char aBuf[64*20+11];
>> int aSz = sizeof(aBuf);
>> memset(aBuf, 0, aSz );
>> SetLastError(0);
>>
>> // ---- Write ----
>> aNumBytes = usb_bulk_write(aH, 0x06, "MI\r", 3, 1000);
>> if (aNumBytes < 0) {
>>
>> } else {
>> cout << aNumBytes << " Bytes written" << endl;
>> }
>>
>> // --- Read ---
>> SetLastError(0);
>> aNumBytes = usb_bulk_read(aH, 0x85, aBuf, aSz, 1000);
>> if (aNumBytes < 0) {
>> cout << "Error usb_bulk_read: " << aNumBytes << endl;
>> DWORD aErr = GetLastError();
>> printf("%s (%d)\n", usb_strerror(), aErr);
>> }
>>
>> aRc = usb_release_interface(aH, 0);
>> aRc = usb_reset(aH);
>> aRc = usb_close(aH);
>> cout << "----- Sucess -----" << endl
>> }
>> }
>> }
>> }
>> }
>> }
>>
>> 2) --- stdout
>> found 1 busses
>> usb_set_debug: Setting debugging level to 255 (on)
>> 3 Bytes written
>> LIBUSB_DLL error: usb_reap_async: timeout error
>> Error usb_bulk_read: -116
>> usb_reap_async: timeout error (2)
>> ----- Sucess -----
>>
>> 3) --- what TestLibUsb-win.exe reports
>> bus-0/\\.\libusb0-0001--0x0a5f-0x4e00 0A5F/4E00
>> - Manufacturer : Eltron
>> - Product : P330i
>> - Serial Number: P330009314
>> wTotalLength: 32
>> bNumInterfaces: 1
>> bConfigurationValue: 1
>> iConfiguration: 86
>> bmAttributes: c0h
>> MaxPower: 0
>> bInterfaceNumber: 0
>> bAlternateSetting: 0
>> bNumEndpoints: 2
>> bInterfaceClass: 7
>> bInterfaceSubClass: 1
>> bInterfaceProtocol: 2
>> iInterface: 132
>> bEndpointAddress: 85h
>> bmAttributes: 02h
>> wMaxPacketSize: 64
>> bInterval: 0
>> bRefresh: 0
>> bSynchAddress: 0
>> bEndpointAddress: 06h
>> bmAttributes: 02h
>> wMaxPacketSize: 64
>> bInterval: 0
>> bRefresh: 0
>> bSynchAddress: 0
>>
>> 4) ---- And finally output of Dbgview
>> LIBUSB-DRIVER - release_interface(): releasing all interfaces
>> LIBUSB-DRIVER - set_configuration(): configuration 1
>> LIBUSB-DRIVER - set_configuration(): timeout 5000
>> LIBUSB-DRIVER - get_descriptor(): buffer size 18
>> LIBUSB-DRIVER - get_descriptor(): type 0001
>> LIBUSB-DRIVER - get_descriptor(): index 0000
>> LIBUSB-DRIVER - get_descriptor(): language id 0000
>> LIBUSB-DRIVER - get_descriptor(): timeout 5000
>> LIBUSB-DRIVER - get_descriptor(): buffer size 9
>> LIBUSB-DRIVER - get_descriptor(): type 0002
>> LIBUSB-DRIVER - get_descriptor(): index 0000
>> LIBUSB-DRIVER - get_descriptor(): language id 0000
>> LIBUSB-DRIVER - get_descriptor(): timeout 5000
>> LIBUSB-DRIVER - get_descriptor(): buffer size 32
>> LIBUSB-DRIVER - get_descriptor(): type 0002
>> LIBUSB-DRIVER - get_descriptor(): index 0000
>> LIBUSB-DRIVER - get_descriptor(): language id 0000
>> LIBUSB-DRIVER - get_descriptor(): timeout 5000
>> LIBUSB-DRIVER - set_configuration(): interface 0 found
>> LIBUSB-DRIVER - update_pipe_info(): interface 0
>> LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x85
>> LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x06
>> LIBUSB-DRIVER - claim_interface(): interface 0
>> LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
>> LIBUSB-DRIVER - transfer(): direction out
>> LIBUSB-DRIVER - transfer(): endpoint 0x06
>> LIBUSB-DRIVER - transfer(): size 3
>> LIBUSB-DRIVER - transfer_complete(): 3 bytes transmitted
>> LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
>> LIBUSB-DRIVER - transfer(): direction in
>> LIBUSB-DRIVER - transfer(): endpoint 0x85
>> LIBUSB-DRIVER - transfer(): size 1291
>> LIBUSB-DRIVER - transfer_cancel(): timeout error
>> [2772] LIBUSB_DLL error: usb_reap_async: timeout error
>> LIBUSB-DRIVER - release_interface(): interface 0
>> LIBUSB-DRIVER - reset_device()
>>
>> Regards
>> Alexander
|
|
From: Stephan M. <ste...@we...> - 2006-07-24 20:05:04
|
bulk_read() worked correctly. It just timed out because
your printer didn't send any data.
Are you certain that your device actually has data to send
when you issue the read request?
Stephan
> Hello everybody,
>
> after two days I'm quite happy with the integration of a usb printer into my
> application. I can write to the printer but not read from. I'v to say that I'm
> new to USB. The error happens when i call usb_bulk_read(...)
>
> Version:
> DLL version: 0.1.10.1
> Driver version: 0.1.10.1
>
> Following informations ...
> 1) Application code
> 2) Stdout of application
> 3) Output of TestLibUsb-win.exe
> 4) Output of Dbgview
>
> I hope anybody can give me a hint
>
> 1) -- code of my application
> struct usb_bus *bus;
> int c, i, a;
>
> /* ... */
>
> for (bus = busses; bus; bus = bus->next) {
> struct usb_device *dev;
>
> for (dev = bus->devices; dev; dev = dev->next) {
> /* Check if this device is a printer */
> if (dev->descriptor.bDeviceClass == 7)
> {
> /* Open the device, claim the interface and do your processing */
> cout << "+++++" << endl;
> }
>
> /* Loop through all of the configurations */
> for (c = 0; c < dev->descriptor.bNumConfigurations; c++)
> {
> /* Loop through all of the interfaces */
> for (i = 0; i < dev->config[c].bNumInterfaces; i++)
> {
> /* Loop through all of the alternate settings */
> for (a = 0; a < dev->config[c].interface[i].num_altsetting; a++)
> {
> /* Check if this interface is a printer */
> if (dev->config[c].interface[i].altsetting[a].bInterfaceClass == 7)
> {
> /* Open the device, set the alternate setting, claim the interface
> and do your processing */
> usb_set_debug(255);
> usb_dev_handle* aH;
> void *context0 = NULL;
> int aRc = 0;
>
> aH = usb_open(dev);
> aRc = usb_set_configuration(aH, 1);
> if (usb_claim_interface(aH, 0))
> {
> cout << "Error usb_claim_interface" << endl;
> return;
> }
>
> int aNumBytes = 0;
> char aBuf[64*20+11];
> int aSz = sizeof(aBuf);
> memset(aBuf, 0, aSz );
> SetLastError(0);
>
> // ---- Write ----
> aNumBytes = usb_bulk_write(aH, 0x06, "MI\r", 3, 1000);
> if (aNumBytes < 0) {
>
> } else {
> cout << aNumBytes << " Bytes written" << endl;
> }
>
> // --- Read ---
> SetLastError(0);
> aNumBytes = usb_bulk_read(aH, 0x85, aBuf, aSz, 1000);
> if (aNumBytes < 0) {
> cout << "Error usb_bulk_read: " << aNumBytes << endl;
> DWORD aErr = GetLastError();
> printf("%s (%d)\n", usb_strerror(), aErr);
> }
>
> aRc = usb_release_interface(aH, 0);
> aRc = usb_reset(aH);
> aRc = usb_close(aH);
> cout << "----- Sucess -----" << endl
> }
> }
> }
> }
> }
> }
>
> 2) --- stdout
> found 1 busses
> usb_set_debug: Setting debugging level to 255 (on)
> 3 Bytes written
> LIBUSB_DLL error: usb_reap_async: timeout error
> Error usb_bulk_read: -116
> usb_reap_async: timeout error (2)
> ----- Sucess -----
>
> 3) --- what TestLibUsb-win.exe reports
> bus-0/\\.\libusb0-0001--0x0a5f-0x4e00 0A5F/4E00
> - Manufacturer : Eltron
> - Product : P330i
> - Serial Number: P330009314
> wTotalLength: 32
> bNumInterfaces: 1
> bConfigurationValue: 1
> iConfiguration: 86
> bmAttributes: c0h
> MaxPower: 0
> bInterfaceNumber: 0
> bAlternateSetting: 0
> bNumEndpoints: 2
> bInterfaceClass: 7
> bInterfaceSubClass: 1
> bInterfaceProtocol: 2
> iInterface: 132
> bEndpointAddress: 85h
> bmAttributes: 02h
> wMaxPacketSize: 64
> bInterval: 0
> bRefresh: 0
> bSynchAddress: 0
> bEndpointAddress: 06h
> bmAttributes: 02h
> wMaxPacketSize: 64
> bInterval: 0
> bRefresh: 0
> bSynchAddress: 0
>
> 4) ---- And finally output of Dbgview
> LIBUSB-DRIVER - release_interface(): releasing all interfaces
> LIBUSB-DRIVER - set_configuration(): configuration 1
> LIBUSB-DRIVER - set_configuration(): timeout 5000
> LIBUSB-DRIVER - get_descriptor(): buffer size 18
> LIBUSB-DRIVER - get_descriptor(): type 0001
> LIBUSB-DRIVER - get_descriptor(): index 0000
> LIBUSB-DRIVER - get_descriptor(): language id 0000
> LIBUSB-DRIVER - get_descriptor(): timeout 5000
> LIBUSB-DRIVER - get_descriptor(): buffer size 9
> LIBUSB-DRIVER - get_descriptor(): type 0002
> LIBUSB-DRIVER - get_descriptor(): index 0000
> LIBUSB-DRIVER - get_descriptor(): language id 0000
> LIBUSB-DRIVER - get_descriptor(): timeout 5000
> LIBUSB-DRIVER - get_descriptor(): buffer size 32
> LIBUSB-DRIVER - get_descriptor(): type 0002
> LIBUSB-DRIVER - get_descriptor(): index 0000
> LIBUSB-DRIVER - get_descriptor(): language id 0000
> LIBUSB-DRIVER - get_descriptor(): timeout 5000
> LIBUSB-DRIVER - set_configuration(): interface 0 found
> LIBUSB-DRIVER - update_pipe_info(): interface 0
> LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x85
> LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x06
> LIBUSB-DRIVER - claim_interface(): interface 0
> LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
> LIBUSB-DRIVER - transfer(): direction out
> LIBUSB-DRIVER - transfer(): endpoint 0x06
> LIBUSB-DRIVER - transfer(): size 3
> LIBUSB-DRIVER - transfer_complete(): 3 bytes transmitted
> LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
> LIBUSB-DRIVER - transfer(): direction in
> LIBUSB-DRIVER - transfer(): endpoint 0x85
> LIBUSB-DRIVER - transfer(): size 1291
> LIBUSB-DRIVER - transfer_cancel(): timeout error
> [2772] LIBUSB_DLL error: usb_reap_async: timeout error
> LIBUSB-DRIVER - release_interface(): interface 0
> LIBUSB-DRIVER - reset_device()
>
> Regards
> Alexander
>
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys -- and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
______________________________________________________________
Verschicken Sie romantische, coole und witzige Bilder per SMS!
Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193
|
|
From: <li...@st...> - 2006-07-24 15:55:44
|
Hello everybody,
after two days I'm quite happy with the integration of a usb printer into my
application. I can write to the printer but not read from. I'v to say that I'm
new to USB. The error happens when i call usb_bulk_read(...)
Version:
DLL version: 0.1.10.1
Driver version: 0.1.10.1
Following informations ...
1) Application code
2) Stdout of application
3) Output of TestLibUsb-win.exe
4) Output of Dbgview
I hope anybody can give me a hint
1) -- code of my application
struct usb_bus *bus;
int c, i, a;
/* ... */
for (bus = busses; bus; bus = bus->next) {
struct usb_device *dev;
for (dev = bus->devices; dev; dev = dev->next) {
/* Check if this device is a printer */
if (dev->descriptor.bDeviceClass == 7)
{
/* Open the device, claim the interface and do your processing */
cout << "+++++" << endl;
}
/* Loop through all of the configurations */
for (c = 0; c < dev->descriptor.bNumConfigurations; c++)
{
/* Loop through all of the interfaces */
for (i = 0; i < dev->config[c].bNumInterfaces; i++)
{
/* Loop through all of the alternate settings */
for (a = 0; a < dev->config[c].interface[i].num_altsetting; a++)
{
/* Check if this interface is a printer */
if (dev->config[c].interface[i].altsetting[a].bInterfaceClass == 7)
{
/* Open the device, set the alternate setting, claim the interface
and do your processing */
usb_set_debug(255);
usb_dev_handle* aH;
void *context0 = NULL;
int aRc = 0;
aH = usb_open(dev);
aRc = usb_set_configuration(aH, 1);
if (usb_claim_interface(aH, 0))
{
cout << "Error usb_claim_interface" << endl;
return;
}
int aNumBytes = 0;
char aBuf[64*20+11];
int aSz = sizeof(aBuf);
memset(aBuf, 0, aSz );
SetLastError(0);
// ---- Write ----
aNumBytes = usb_bulk_write(aH, 0x06, "MI\r", 3, 1000);
if (aNumBytes < 0) {
} else {
cout << aNumBytes << " Bytes written" << endl;
}
// --- Read ---
SetLastError(0);
aNumBytes = usb_bulk_read(aH, 0x85, aBuf, aSz, 1000);
if (aNumBytes < 0) {
cout << "Error usb_bulk_read: " << aNumBytes << endl;
DWORD aErr = GetLastError();
printf("%s (%d)\n", usb_strerror(), aErr);
}
aRc = usb_release_interface(aH, 0);
aRc = usb_reset(aH);
aRc = usb_close(aH);
cout << "----- Sucess -----" << endl
}
}
}
}
}
}
2) --- stdout
found 1 busses
usb_set_debug: Setting debugging level to 255 (on)
3 Bytes written
LIBUSB_DLL error: usb_reap_async: timeout error
Error usb_bulk_read: -116
usb_reap_async: timeout error (2)
----- Sucess -----
3) --- what TestLibUsb-win.exe reports
bus-0/\\.\libusb0-0001--0x0a5f-0x4e00 0A5F/4E00
- Manufacturer : Eltron
- Product : P330i
- Serial Number: P330009314
wTotalLength: 32
bNumInterfaces: 1
bConfigurationValue: 1
iConfiguration: 86
bmAttributes: c0h
MaxPower: 0
bInterfaceNumber: 0
bAlternateSetting: 0
bNumEndpoints: 2
bInterfaceClass: 7
bInterfaceSubClass: 1
bInterfaceProtocol: 2
iInterface: 132
bEndpointAddress: 85h
bmAttributes: 02h
wMaxPacketSize: 64
bInterval: 0
bRefresh: 0
bSynchAddress: 0
bEndpointAddress: 06h
bmAttributes: 02h
wMaxPacketSize: 64
bInterval: 0
bRefresh: 0
bSynchAddress: 0
4) ---- And finally output of Dbgview
LIBUSB-DRIVER - release_interface(): releasing all interfaces
LIBUSB-DRIVER - set_configuration(): configuration 1
LIBUSB-DRIVER - set_configuration(): timeout 5000
LIBUSB-DRIVER - get_descriptor(): buffer size 18
LIBUSB-DRIVER - get_descriptor(): type 0001
LIBUSB-DRIVER - get_descriptor(): index 0000
LIBUSB-DRIVER - get_descriptor(): language id 0000
LIBUSB-DRIVER - get_descriptor(): timeout 5000
LIBUSB-DRIVER - get_descriptor(): buffer size 9
LIBUSB-DRIVER - get_descriptor(): type 0002
LIBUSB-DRIVER - get_descriptor(): index 0000
LIBUSB-DRIVER - get_descriptor(): language id 0000
LIBUSB-DRIVER - get_descriptor(): timeout 5000
LIBUSB-DRIVER - get_descriptor(): buffer size 32
LIBUSB-DRIVER - get_descriptor(): type 0002
LIBUSB-DRIVER - get_descriptor(): index 0000
LIBUSB-DRIVER - get_descriptor(): language id 0000
LIBUSB-DRIVER - get_descriptor(): timeout 5000
LIBUSB-DRIVER - set_configuration(): interface 0 found
LIBUSB-DRIVER - update_pipe_info(): interface 0
LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x85
LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x06
LIBUSB-DRIVER - claim_interface(): interface 0
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction out
LIBUSB-DRIVER - transfer(): endpoint 0x06
LIBUSB-DRIVER - transfer(): size 3
LIBUSB-DRIVER - transfer_complete(): 3 bytes transmitted
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction in
LIBUSB-DRIVER - transfer(): endpoint 0x85
LIBUSB-DRIVER - transfer(): size 1291
LIBUSB-DRIVER - transfer_cancel(): timeout error
[2772] LIBUSB_DLL error: usb_reap_async: timeout error
LIBUSB-DRIVER - release_interface(): interface 0
LIBUSB-DRIVER - reset_device()
Regards
Alexander
|
|
From: Stephan M. <ste...@we...> - 2006-07-21 16:54:58
|
The first change was intended, but not the second one!
I'll reverse it.
Thanks for the hint,
Stephan
> On Thu, Jul 20, 2006 at 08:04:41PM +0200, Stephan Meyer wrote:
> >=20
> > I applied your patch, but in driver=5Fapi.h I moved the 'recipient' memb=
er=20
> > to the end of the structure so that the new dll remains downward=20
> > compatible and works with older driver versions.
>=20
> It looks like a couple unintentional changes might have crept into your
> commit of windows.c. Just in case, I've highlighted them here...
>=20
> Thanks!
> --Adam
>=20
> > diff -u -r1.47 -r1.48
> > --- windows.c 18 Jul 2006 20:13:40 -0000 1.47
> > +++ windows.c 20 Jul 2006 17:58:57 -0000 1.48
> > @@ -161,18 +161,18 @@
> > }
> > =20
> > /* now, retrieve the device's current configuration, except from hu=
bs */
> > - if(dev->device->config && dev->device->config->interface
> > - && dev->device->config->interface[0].altsetting
> > - && dev->device->config->interface[0].altsetting[0].bInterfaceCla=
ss=20
> > - !=3D USB=5FCLASS=5FHUB)
> > - {
> > - config =3D usb=5Fget=5Fconfiguration(dev);
> > +/* if(dev->device->config && dev->device->config->interface */
> > +/* && dev->device->config->interface[0].altsetting */
> > +/* && dev->device->config->interface[0].altsetting[0].bInterface=
Class */
> > +/* !=3D USB=5FCLASS=5FHUB) */
> > +/* { */
> > +/* config =3D usb=5Fget=5Fconfiguration(dev); */
> > =20
> > - if(config > 0)
> > - {
> > - dev->config =3D config;
> > - }
> > - }
> > +/* if(config > 0) */
> > +/* { */
> > +/* dev->config =3D config; */
> > +/* } */
> > +/* } */
> > =20
> > return 0;
> > }
> > @@ -768,7 +770,7 @@
> > {
> > usb=5Ferror("usb=5Fcontrol=5Fmsg: sending control message failed, "
> > "win error: %s", usb=5Fwin=5Ferror=5Fto=5Fstring());
> > - return -usb=5Fwin=5Ferror=5Fto=5Ferrno();
> > + ret =3D -usb=5Fwin=5Ferror=5Fto=5Ferrno();
> > }
> > =20
> > /* out request=3F */
>=20
> ------------------------------------------------------------------------=
-
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share =
your
> opinions on IT & business topics through brief surveys -- and earn cash
> http://www.techsay.com/default.php=3Fpage=3Djoin.php&p=3Dsourceforge&CID=3DDEVDE=
V
> =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
=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=5F=5F=5F=
Erweitern Sie FreeMail zu einem noch leistungsst=E4rkeren E-Mail-Postfach! =09
Mehr Infos unter http://freemail.web.de/home/landingpad/=3Fmc=3D021131
|