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: Stephan M. <ste...@we...> - 2007-05-28 10:58:11
|
See http://www.nabble.com/Error-compiling-test-program-tf3508594.html#a9870106 > > > Hi! > > I have just started to use the libusb-win32, I am trying to get it to work > with borland c-builder 6 on win XP. > If I run the test application testlibusb-win.exe It works just fine but when > I take the code and change it for the c-builder I get a problem no mather > what I do I cant read the configure descriptor in the usb_device struct the > code that I am using is this: > > __fastcall TForm1::TForm1(TComponent* Owner) > : TForm(Owner) > { > //these method is called whene the GUI is created > usb_init(); > usb_find_busses(); > usb_find_devices(); > } > //--------------------------------------------------------------------------- > > void __fastcall TForm1::Button1Click(TObject *Sender) > { > // whene button1 on the gui is pushed this method is executed > version = usb_get_version(); > > if(version) > { > line = "DLL version:\t"; > line += version->dll.major; > line += "."; > line += version->dll.minor; > line += "."; > line += version->dll.micro; > line += "."; > line += version->dll.nano; > > this->Memo1->Lines->Add(line); > > line = "Driver version:\t"; > line += version->driver.major; > line += "."; > line += version->driver.minor; > line += "."; > line += version->driver.micro; > line += "."; > line += version->driver.nano; > > this->Memo1->Lines->Add(line); > } > > this->Memo1->Lines->Add("bus/device\t idVendor/idProduct"); > > for (bus = usb_get_busses(); bus; bus = bus->next) { > for (dev = bus->devices; dev; dev = dev->next) { > int ret, i; > char string[256]; > usb_dev_handle *udev; > > line = bus->dirname; > line += "/"; > line += dev->filename; > line += "\t"; > line += IntToHex(dev->descriptor.idVendor,1); > line += "/"; > line += IntToHex(dev->descriptor.idProduct,1); > > this->Memo1->Lines->Add(line); > > udev = usb_open(dev); > > if (udev) { > if (dev->descriptor.iManufacturer) { > ret = usb_get_string_simple(udev, dev->descriptor.iManufacturer, > string, sizeof(string)); > if (ret > 0) { > line = "- Manufacturer : "; > line += AnsiString(string); > this->Memo1->Lines->Add(line); > } else { > this->Memo1->Lines->Add("- Unable to fetch manufacturer > string"); > } > } > > if (dev->descriptor.iProduct) { > ret = usb_get_string_simple(udev, dev->descriptor.iProduct, > string, > sizeof(string)); > if (ret > 0) { > line = "- Product : "; > line += AnsiString(string); > this->Memo1->Lines->Add(line); > } else { > this->Memo1->Lines->Add("- Unable to fetch product string"); > } > } > > if (dev->descriptor.iSerialNumber) { > ret = usb_get_string_simple(udev, dev->descriptor.iSerialNumber, > string, sizeof(string)); > if (ret > 0) { > line = "- Serial number : "; > line += AnsiString(string); > this->Memo1->Lines->Add(line); > } else { > this->Memo1->Lines->Add("- Unable to fetch serial number > string"); > } > } > > usb_close (udev); > } > > if (!dev->config) { > this->Memo1->Lines->Add(" Couldn't retrieve descriptors"); > continue; > } > > i = 0; > for (i = 0; i < dev->descriptor.bNumConfigurations; i++) > print_configuration(&dev->config[i]); > } > } > } > //--------------------------------------------------------------------------- > void TForm1::print_configuration(struct usb_config_descriptor *config) > { > int i; > //!!!!!!!The error occur here!!!!!!!!// > unsigned short wtlength = config->wTotalLength; //<======== When I am > trying to get any variable in the configure descriptor > > line = " wTotalLength: "; > line += wtlength; > > this->Memo1->Lines->Add(line); > > } > > the error that I get is accsses violation. > > -- > View this message in context: http://www.nabble.com/libusb-with-borland-c-builder-tf3827103.html#a10833779 > Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > _______________________________________________________________ SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 |
|
From: Sunflare <ni...@gm...> - 2007-05-28 10:45:07
|
Hello everyone. I'm trying to make bulk transfers between the host and a PIC4550 mcu. I could make usb_bulk_read requests without problems, but the usb_bulk_write function doesn't work: LIBUSB_DLL error: usb_submit_async: error: Not enough storage is available to process this command Where does this come from? I'm using libusb_win32 v 0.1.10.1 -- View this message in context: http://www.nabble.com/bulk_write-error-%3A-not-enough-storage-available-tf3827289.html#a10834263 Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com. |
|
From: 25an <man...@gm...> - 2007-05-28 10:04:33
|
Hi!
I have just started to use the libusb-win32, I am trying to get it to work
with borland c-builder 6 on win XP.
If I run the test application testlibusb-win.exe It works just fine but when
I take the code and change it for the c-builder I get a problem no mather
what I do I cant read the configure descriptor in the usb_device struct the
code that I am using is this:
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
//these method is called whene the GUI is created
usb_init();
usb_find_busses();
usb_find_devices();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
// whene button1 on the gui is pushed this method is executed
version = usb_get_version();
if(version)
{
line = "DLL version:\t";
line += version->dll.major;
line += ".";
line += version->dll.minor;
line += ".";
line += version->dll.micro;
line += ".";
line += version->dll.nano;
this->Memo1->Lines->Add(line);
line = "Driver version:\t";
line += version->driver.major;
line += ".";
line += version->driver.minor;
line += ".";
line += version->driver.micro;
line += ".";
line += version->driver.nano;
this->Memo1->Lines->Add(line);
}
this->Memo1->Lines->Add("bus/device\t idVendor/idProduct");
for (bus = usb_get_busses(); bus; bus = bus->next) {
for (dev = bus->devices; dev; dev = dev->next) {
int ret, i;
char string[256];
usb_dev_handle *udev;
line = bus->dirname;
line += "/";
line += dev->filename;
line += "\t";
line += IntToHex(dev->descriptor.idVendor,1);
line += "/";
line += IntToHex(dev->descriptor.idProduct,1);
this->Memo1->Lines->Add(line);
udev = usb_open(dev);
if (udev) {
if (dev->descriptor.iManufacturer) {
ret = usb_get_string_simple(udev, dev->descriptor.iManufacturer,
string, sizeof(string));
if (ret > 0) {
line = "- Manufacturer : ";
line += AnsiString(string);
this->Memo1->Lines->Add(line);
} else {
this->Memo1->Lines->Add("- Unable to fetch manufacturer
string");
}
}
if (dev->descriptor.iProduct) {
ret = usb_get_string_simple(udev, dev->descriptor.iProduct,
string,
sizeof(string));
if (ret > 0) {
line = "- Product : ";
line += AnsiString(string);
this->Memo1->Lines->Add(line);
} else {
this->Memo1->Lines->Add("- Unable to fetch product string");
}
}
if (dev->descriptor.iSerialNumber) {
ret = usb_get_string_simple(udev, dev->descriptor.iSerialNumber,
string, sizeof(string));
if (ret > 0) {
line = "- Serial number : ";
line += AnsiString(string);
this->Memo1->Lines->Add(line);
} else {
this->Memo1->Lines->Add("- Unable to fetch serial number
string");
}
}
usb_close (udev);
}
if (!dev->config) {
this->Memo1->Lines->Add(" Couldn't retrieve descriptors");
continue;
}
i = 0;
for (i = 0; i < dev->descriptor.bNumConfigurations; i++)
print_configuration(&dev->config[i]);
}
}
}
//---------------------------------------------------------------------------
void TForm1::print_configuration(struct usb_config_descriptor *config)
{
int i;
//!!!!!!!The error occur here!!!!!!!!//
unsigned short wtlength = config->wTotalLength; //<======== When I am
trying to get any variable in the configure descriptor
line = " wTotalLength: ";
line += wtlength;
this->Memo1->Lines->Add(line);
}
the error that I get is accsses violation.
--
View this message in context: http://www.nabble.com/libusb-with-borland-c-builder-tf3827103.html#a10833779
Sent from the LibUSB Dev - Win32 mailing list archive at Nabble.com.
|
|
From: Stephan M. <ste...@we...> - 2007-05-20 16:46:12
|
This might help: http://savannah.nongnu.org/forum/forum.php?forum_id=4723 (found via Google) Stephan > > Hi. > > I'm trying to use an Atmel AVR programmer dongle on win32 with libusb. > It came packaged with the gcc (winavr) compiler. > > The libusb0.dll file with that one was 0.1.10.1, and it gave the > following errors: > > > LIBUSB: error: usb_registry_get_num_busses(): getting hardware id failed > > found 3 busses > > avrdude: usbdev_open(): did not find any USB device "usb" > > I just downloaded the newest, 0.1.12.1, and now the error is: > > avrdude: usbdev_open(): did not find any USB device "usb" > > This device works fine with the manufacturer's drivers/software. It > also works great with whatever version of libusb I have on my freebsd > 6.2 system. The device apparently works fine with people who don't > have a compaq laptop with libusb0.dll 0.1.10.1. > > The usb drivers on my laptop are all standard winxpsp2 drivers looking > in the device manager. I clicked the "install-filter.exe" in the > libusb download and rebooted, but it didn't appear to do anything. > > "testlibusb-win32.exe" gives: > DLL version: 0.1.12.1 > Driver version: -1.-1.-1.-1 > bus/device idVendor/idProduct > > > Thanks, > Steve > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > _______________________________________________________________ SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 |
|
From: Steve F. <ste...@ie...> - 2007-05-18 18:12:41
|
Hi. I'm trying to use an Atmel AVR programmer dongle on win32 with libusb. It came packaged with the gcc (winavr) compiler. The libusb0.dll file with that one was 0.1.10.1, and it gave the following errors: > LIBUSB: error: usb_registry_get_num_busses(): getting hardware id failed > found 3 busses > avrdude: usbdev_open(): did not find any USB device "usb" I just downloaded the newest, 0.1.12.1, and now the error is: avrdude: usbdev_open(): did not find any USB device "usb" This device works fine with the manufacturer's drivers/software. It also works great with whatever version of libusb I have on my freebsd 6.2 system. The device apparently works fine with people who don't have a compaq laptop with libusb0.dll 0.1.10.1. The usb drivers on my laptop are all standard winxpsp2 drivers looking in the device manager. I clicked the "install-filter.exe" in the libusb download and rebooted, but it didn't appear to do anything. "testlibusb-win32.exe" gives: DLL version: 0.1.12.1 Driver version: -1.-1.-1.-1 bus/device idVendor/idProduct Thanks, Steve |
|
From: Dan M. <dan...@gm...> - 2007-05-02 20:30:49
|
Hi there, I'm trying to get my application running on Windows PE. The problem is that I don't know how to install the LibUSB drivers into this OS. Does anyone know? Thanks in advance, Cheers, Dan |
|
From: Stephan M. <ste...@we...> - 2007-04-24 20:12:20
|
Ok, here's a short explanation of the asynchronous API:
* Functions:
int usb=5Fxxx=5Fsetup=5Fasync(usb=5Fdev=5Fhandle *dev, void **context, unsigned char=
ep);
Allocates an asynchonous request for endpoint 'ep' and returns that reques=
t in 'context'.=20
Returns 0 on success, < 0 on failure.
int usb=5Fsubmit=5Fasync(void *context, char *bytes, int size);
Submits a previously allocated request to the device. Data pointed to by '=
bytes'
of size 'size' will be written or read to or from the device depending on =
the endpoint's
direction bit. Returns 0 on success, < 0 on failure.
int usb=5Freap=5Fasync(void *context, int timeout);
Waits for the request to finish. Returns the number of bytes written/read =
or < 0 on failure.
The request will be canceled if it doesn't complete within 'timeout' (in m=
s).
int usb=5Freap=5Fasync=5Fnocancel(void *context, int timeout);
Same as above but doesn't cancel the request if it times out.
int usb=5Fcancel=5Fasync(void *context);
Cancels a request.
int usb=5Ffree=5Fasync(void **context);
Frees a request.
* Usage:
char data[1024];
void *request;
int read;
if(usb=5Fbulk=5Fsetup=5Fasync(dev, &request, 0x81) < 0) {
// error handling
}
if(usb=5Fsubmit=5Fasync(request, data, sizeof(data)) < 0) {
// error handling
}
read =3D usb=5Freap=5Fasync(request, 1000);
if(read >=3D 0)
printf("read %d bytes\n", read);
else
// error handling
usb=5Ffree=5Fasync(&request);
Hope this helps,
Stephan
>=20
> In order to do so I need to understand first what's going on exactly...
>=20
> I'll show an example:
> /**---------------------------------------------------------------------=
---**/
> USB=5FBoolean USB=5FSubmitReceive( USB=5FHandle hUsb, void *pBuf, int32=20
> nWordsCnt )
> {
> // Submit an asynchronous read
> if ( usb=5Fsubmit=5Fasync( hUsb->pReadContext, (char *)pBuf, (nWordsCnt=20
> * 2) ) < 0 ) return USB=5FFALSE;
> else return USB=5FTRUE;
> }
>=20
> /**---------------------------------------------------------------------=
---**/
> int32 USB=5FReapReceive( USB=5FHandle hUsb, int32 nTimeout )
> {
> // The number of received bytes in the receive buffer
> int32 nUsedBytesCnt;
> // Check whether the timeout is negative
> if ( nTimeout < 0 )
> {
> // Get the read context
> USB=5FUsbContext *pContext =3D (USB=5FUsbContext *)hUsb->pReadContext;=
> // Check whether the overlap IO is completed
> if ( WaitForSingleObject(pContext->ol.hEvent, 0) !=3D=20
> WAIT=5FOBJECT=5F0 ) return -1;
> // Reap the context
> nUsedBytesCnt =3D usb=5Freap=5Fasync( hUsb->pReadContext, 0 );
> }
> else
> {
> // Reap the context
> nUsedBytesCnt =3D usb=5Freap=5Fasync( hUsb->pReadContext, nTimeout );
> }
> if ( nUsedBytesCnt =3D=3D LIBUSB=5FREAP=5FASYNC=5FTIMEOUT=5FERR )
> {
> return 0;
> }
> else if ( nUsedBytesCnt < 0 )
> {
> char *pszError =3D usb=5Fstrerror();
> return nUsedBytesCnt;
> }
> else
> {
> return (nUsedBytesCnt / 2);
> }
> }
>=20
> Those are 2 functions in the API I'm porting, the documentation on these=
=20
> functions isn't very clear tho, so I'm figuring out what every function=20
> does in order to get it to work with my driver. Hence I need to know=20
> the behaviour of the usb=5FXXX functions.=20
> But I got a reply from the author of the code, he explained me how the=20
> functions behave, and yes indeed like you said, Windows CE doesn't=20
> support asynchronous reads or writes like that. So I'll have to write=20
> some thread to get the same behaviour.
>=20
> Thanx for your reply.
>=20
> Robin
>=20
> Stephan Meyer wrote:
> >> I do need to replace it with a suitable alternative, in order to do s=
o,=20
> >> I need to know how this function behaves.
> >>
> >> Kind regards
> >> Robin
> >> =20
> >
> > I think you are taking the wrong approach. If you just want to create
> > a libusb compatible layer that sits in between your application and yo=
ur
> > special driver then you should not care about the internals of the cur=
rent
> > Windows implementation.
> >
> > All you have to do is to implement the API functions specified by usb.=
h.
> > If I had to do the job I would use windows.c as a starting point, remo=
ve
> > all platform dependent code, and reimplement this code from scratch.
> > I think this is much easier than trying to adapt the existing code to =
your
> > driver.
> >
> > Stephan
> >
> >
> > =20
> >> Stephan Meyer wrote:
> >> =20
> >>>> -----Urspr=FCngliche Nachricht-----
> >>>> Von: lib...@li...
> >>>> =20
> >>>> =20
> >>> usb=5Freap=5Fasync() is part of the DLL's undocumented=20
> >>> asynchronous API.
> >>> You can just ignore it and all other usb=5Fxxx=5Fasync() functions,=20
> >>> since WinCE doesn't support asynchronous (overlapped) IO.
> >>>
> >>> Stephan
> >>>
> >>> =20
> >>> =20
> >>>> Hello,
> >>>>
> >>>> I'm porting an application developed for windows xp to windows mobi=
le. =20
> >>>> This application uses libusb to communicate with a USB-device.
> >>>> I developed a USB driver myself for windows CE. Now I'm at the poi=
nt to=20
> >>>> port the layer between the libusb to the application to a layer bet=
ween=20
> >>>> my driver and the application. I found a call to the following fun=
ction:
> >>>> int usb=5Freap=5Fasync(void *context, int timeout);
> >>>> However, I can't find any documentation on this function. What doe=
s it=20
> >>>> do exactly=3F
> >>>>
> >>>> Kind Regards
> >>>> Robin Astle
> >>>>
> >>>> -------------------------------------------------------------------=
------
> >>>> This SF.net email is sponsored by DB2 Express
> >>>> Download DB2 Express C - the FREE version of DB2 express and take
> >>>> control of your XML. No limits. Just data. Click to get it now.
> >>>> http://sourceforge.net/powerbar/db2/
> >>>> =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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
> >>> SMS schreiben mit WEB.DE FreeMail - einfach, schnell und
> >>> kostenguenstig. Jetzt gleich testen! http://f.web.de/=3Fmc=3D021192
> >>>
> >>>
> >>> --------------------------------------------------------------------=
-----
> >>> This SF.net email is sponsored by DB2 Express
> >>> Download DB2 Express C - the FREE version of DB2 express and take
> >>> control of your XML. No limits. Just data. Click to get it now.
> >>> http://sourceforge.net/powerbar/db2/
> >>> =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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
> >> ---------------------------------------------------------------------=
----
> >> This SF.net email is sponsored by DB2 Express
> >> Download DB2 Express C - the FREE version of DB2 express and take
> >> control of your XML. No limits. Just data. Click to get it now.
> >> http://sourceforge.net/powerbar/db2/
> >> =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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=5F
> > SMS schreiben mit WEB.DE FreeMail - einfach, schnell und
> > kostenguenstig. Jetzt gleich testen! http://f.web.de/=3Fmc=3D021192
> >
> >
> > ----------------------------------------------------------------------=
---
> > This SF.net email is sponsored by DB2 Express
> > Download DB2 Express C - the FREE version of DB2 express and take
> > control of your XML. No limits. Just data. Click to get it now.
> > http://sourceforge.net/powerbar/db2/
> > =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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
>=20
> ------------------------------------------------------------------------=
-
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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=5F
SMS schreiben mit WEB.DE FreeMail - einfach, schnell und
kostenguenstig. Jetzt gleich testen! http://f.web.de/=3Fmc=3D021192
|
|
From: Robin A. <rob...@te...> - 2007-04-24 17:33:47
|
In order to do so I need to understand first what's going on exactly...
I'll show an example:
/**------------------------------------------------------------------------**/
USB_Boolean USB_SubmitReceive( USB_Handle hUsb, void *pBuf, int32
nWordsCnt )
{
// Submit an asynchronous read
if ( usb_submit_async( hUsb->pReadContext, (char *)pBuf, (nWordsCnt
* 2) ) < 0 ) return USB_FALSE;
else return USB_TRUE;
}
/**------------------------------------------------------------------------**/
int32 USB_ReapReceive( USB_Handle hUsb, int32 nTimeout )
{
// The number of received bytes in the receive buffer
int32 nUsedBytesCnt;
// Check whether the timeout is negative
if ( nTimeout < 0 )
{
// Get the read context
USB_UsbContext *pContext = (USB_UsbContext *)hUsb->pReadContext;
// Check whether the overlap IO is completed
if ( WaitForSingleObject(pContext->ol.hEvent, 0) !=
WAIT_OBJECT_0 ) return -1;
// Reap the context
nUsedBytesCnt = usb_reap_async( hUsb->pReadContext, 0 );
}
else
{
// Reap the context
nUsedBytesCnt = usb_reap_async( hUsb->pReadContext, nTimeout );
}
if ( nUsedBytesCnt == LIBUSB_REAP_ASYNC_TIMEOUT_ERR )
{
return 0;
}
else if ( nUsedBytesCnt < 0 )
{
char *pszError = usb_strerror();
return nUsedBytesCnt;
}
else
{
return (nUsedBytesCnt / 2);
}
}
Those are 2 functions in the API I'm porting, the documentation on these
functions isn't very clear tho, so I'm figuring out what every function
does in order to get it to work with my driver. Hence I need to know
the behaviour of the usb_XXX functions.
But I got a reply from the author of the code, he explained me how the
functions behave, and yes indeed like you said, Windows CE doesn't
support asynchronous reads or writes like that. So I'll have to write
some thread to get the same behaviour.
Thanx for your reply.
Robin
Stephan Meyer wrote:
>> I do need to replace it with a suitable alternative, in order to do so,
>> I need to know how this function behaves.
>>
>> Kind regards
>> Robin
>>
>
> I think you are taking the wrong approach. If you just want to create
> a libusb compatible layer that sits in between your application and your
> special driver then you should not care about the internals of the current
> Windows implementation.
>
> All you have to do is to implement the API functions specified by usb.h.
> If I had to do the job I would use windows.c as a starting point, remove
> all platform dependent code, and reimplement this code from scratch.
> I think this is much easier than trying to adapt the existing code to your
> driver.
>
> Stephan
>
>
>
>> Stephan Meyer wrote:
>>
>>>> -----Ursprüngliche Nachricht-----
>>>> Von: lib...@li...
>>>>
>>>>
>>> usb_reap_async() is part of the DLL's undocumented
>>> asynchronous API.
>>> You can just ignore it and all other usb_xxx_async() functions,
>>> since WinCE doesn't support asynchronous (overlapped) IO.
>>>
>>> Stephan
>>>
>>>
>>>
>>>> Hello,
>>>>
>>>> I'm porting an application developed for windows xp to windows mobile.
>>>> This application uses libusb to communicate with a USB-device.
>>>> I developed a USB driver myself for windows CE. Now I'm at the point to
>>>> port the layer between the libusb to the application to a layer between
>>>> my driver and the application. I found a call to the following function:
>>>> int usb_reap_async(void *context, int timeout);
>>>> However, I can't find any documentation on this function. What does it
>>>> do exactly?
>>>>
>>>> Kind Regards
>>>> Robin Astle
>>>>
>>>> -------------------------------------------------------------------------
>>>> This SF.net email is sponsored by DB2 Express
>>>> Download DB2 Express C - the FREE version of DB2 express and take
>>>> control of your XML. No limits. Just data. Click to get it now.
>>>> http://sourceforge.net/powerbar/db2/
>>>> _______________________________________________
>>>> Libusb-win32-devel mailing list
>>>> Lib...@li...
>>>> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>>>>
>>>>
>>>>
>>> _______________________________________________________________
>>> SMS schreiben mit WEB.DE FreeMail - einfach, schnell und
>>> kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192
>>>
>>>
>>> -------------------------------------------------------------------------
>>> This SF.net email is sponsored by DB2 Express
>>> Download DB2 Express C - the FREE version of DB2 express and take
>>> control of your XML. No limits. Just data. Click to get it now.
>>> http://sourceforge.net/powerbar/db2/
>>> _______________________________________________
>>> Libusb-win32-devel mailing list
>>> Lib...@li...
>>> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>>>
>>>
>>>
>>>
>>>
>> -------------------------------------------------------------------------
>> This SF.net email is sponsored by DB2 Express
>> Download DB2 Express C - the FREE version of DB2 express and take
>> control of your XML. No limits. Just data. Click to get it now.
>> http://sourceforge.net/powerbar/db2/
>> _______________________________________________
>> Libusb-win32-devel mailing list
>> Lib...@li...
>> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>>
>>
>
>
> _______________________________________________________________
> SMS schreiben mit WEB.DE FreeMail - einfach, schnell und
> kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> _______________________________________________
> Libusb-win32-devel mailing list
> Lib...@li...
> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>
>
>
>
|
|
From: Stephan M. <ste...@we...> - 2007-04-24 17:27:07
|
>=20 > I do need to replace it with a suitable alternative, in order to do so,=20 > I need to know how this function behaves. >=20 > Kind regards > Robin I think you are taking the wrong approach. If you just want to create a libusb compatible layer that sits in between your application and your special driver then you should not care about the internals of the current= Windows implementation. All you have to do is to implement the API functions specified by usb.h. If I had to do the job I would use windows.c as a starting point, remove all platform dependent code, and reimplement this code from scratch. I think this is much easier than trying to adapt the existing code to your= driver. Stephan >=20 > Stephan Meyer wrote: > >> -----Urspr=FCngliche Nachricht----- > >> Von: lib...@li... > >> =20 > > usb=5Freap=5Fasync() is part of the DLL's undocumented=20 > > asynchronous API. > > You can just ignore it and all other usb=5Fxxx=5Fasync() functions,=20 > > since WinCE doesn't support asynchronous (overlapped) IO. > > > > Stephan > > > > =20 > >> Hello, > >> > >> I'm porting an application developed for windows xp to windows mobile= . =20 > >> This application uses libusb to communicate with a USB-device. > >> I developed a USB driver myself for windows CE. Now I'm at the point= to=20 > >> port the layer between the libusb to the application to a layer betwe= en=20 > >> my driver and the application. I found a call to the following funct= ion: > >> int usb=5Freap=5Fasync(void *context, int timeout); > >> However, I can't find any documentation on this function. What does = it=20 > >> do exactly=3F > >> > >> Kind Regards > >> Robin Astle > >> > >> ---------------------------------------------------------------------= ---- > >> This SF.net email is sponsored by DB2 Express > >> Download DB2 Express C - the FREE version of DB2 express and take > >> control of your XML. No limits. Just data. Click to get it now. > >> http://sourceforge.net/powerbar/db2/ > >> =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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=5F > > SMS schreiben mit WEB.DE FreeMail - einfach, schnell und > > kostenguenstig. Jetzt gleich testen! http://f.web.de/=3Fmc=3D021192 > > > > > > ----------------------------------------------------------------------= --- > > This SF.net email is sponsored by DB2 Express > > Download DB2 Express C - the FREE version of DB2 express and take > > control of your XML. No limits. Just data. Click to get it now. > > http://sourceforge.net/powerbar/db2/ > > =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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 >=20 > ------------------------------------------------------------------------= - > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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=5F SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/=3Fmc=3D021192 |
|
From: Robin A. <rob...@te...> - 2007-04-23 22:12:53
|
I do need to replace it with a suitable alternative, in order to do so, I need to know how this function behaves. Kind regards Robin Stephan Meyer wrote: >> -----Ursprüngliche Nachricht----- >> Von: lib...@li... >> > usb_reap_async() is part of the DLL's undocumented > asynchronous API. > You can just ignore it and all other usb_xxx_async() functions, > since WinCE doesn't support asynchronous (overlapped) IO. > > Stephan > > >> Hello, >> >> I'm porting an application developed for windows xp to windows mobile. >> This application uses libusb to communicate with a USB-device. >> I developed a USB driver myself for windows CE. Now I'm at the point to >> port the layer between the libusb to the application to a layer between >> my driver and the application. I found a call to the following function: >> int usb_reap_async(void *context, int timeout); >> However, I can't find any documentation on this function. What does it >> do exactly? >> >> Kind Regards >> Robin Astle >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by DB2 Express >> Download DB2 Express C - the FREE version of DB2 express and take >> control of your XML. No limits. Just data. Click to get it now. >> http://sourceforge.net/powerbar/db2/ >> _______________________________________________ >> Libusb-win32-devel mailing list >> Lib...@li... >> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel >> >> > > > _______________________________________________________________ > SMS schreiben mit WEB.DE FreeMail - einfach, schnell und > kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > > > > |
|
From: Stephan M. <ste...@we...> - 2007-04-23 18:04:42
|
> -----Urspr=FCngliche Nachricht----- > Von: lib...@li... usb=5Freap=5Fasync() is part of the DLL's undocumented=20 asynchronous API. You can just ignore it and all other usb=5Fxxx=5Fasync() functions,=20 since WinCE doesn't support asynchronous (overlapped) IO. Stephan >=20 > Hello, >=20 > I'm porting an application developed for windows xp to windows mobile. =20 > This application uses libusb to communicate with a USB-device. > I developed a USB driver myself for windows CE. Now I'm at the point to= =20 > port the layer between the libusb to the application to a layer between=20 > my driver and the application. I found a call to the following function= : > int usb=5Freap=5Fasync(void *context, int timeout); > However, I can't find any documentation on this function. What does it=20 > do exactly=3F >=20 > Kind Regards > Robin Astle >=20 > ------------------------------------------------------------------------= - > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=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=5F SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/=3Fmc=3D021192 |
|
From: Anton Z. <ant...@gm...> - 2007-04-19 14:28:18
|
I tried to use the libs on a Windows 2003 Server (32bit). There a no comments about Windows 2003 (32bit!) on the mailing list. The Result was: no Devices same procedure on a Windows 2000 Server: successful Isn´t there a version for Windows 2003 (32bit)? Thank you for your comments. Regards Anton -- "Feel free" - 10 GB Mailbox, 100 FreeSMS/Monat ... Jetzt GMX TopMail testen: http://www.gmx.net/de/go/topmail |
|
From: Robin A. <rob...@te...> - 2007-04-19 10:25:47
|
Hello, I'm porting an application developed for windows xp to windows mobile. This application uses libusb to communicate with a USB-device. I developed a USB driver myself for windows CE. Now I'm at the point to port the layer between the libusb to the application to a layer between my driver and the application. I found a call to the following function: int usb_reap_async(void *context, int timeout); However, I can't find any documentation on this function. What does it do exactly? Kind Regards Robin Astle |
|
From: Kevin De C. <ni...@gm...> - 2007-04-18 17:17:52
|
Hello I'm trying to set up a USB connexion with a microcontroller, and I need libusb to do it. I downloaded Visual C++ Express 2005, but I have many problems compiling the example code. Here's what I did : -download and install libusb -download and install the PSDK -create a new project -add bulk.c -add the PSDK directories to the VC++ directories -add the libusb directories to the VC++ directories -add the MSVC libusb.lib in the linker options -compile I got this error : c:\program files\libusb-win32-0.1.10.1\examples\bulk.c(3) : fatal error C1083: Cannot open precompiled header file: 'Debug\text.pch': No such file or directory Do I have to add it manually? How can I do it? Thanks |
|
From: Dan M. <dan...@gm...> - 2007-04-17 12:34:59
|
Hi there, Thank you all for the answers and, once again, thank you Stephan. Setting the interface to configuration zero worked just fine. Thanks. Cheers! Dan On 4/15/07, Stephan Meyer <ste...@we...> wrote: > > > Just use usb_set_configuration(dev, 0) to "turn off" the device > after you're done with your testing. This will free the bandwidth > allocated for the device. > > Stephan > > > > Thank you Spiro and Graeme for the answers. Graeme's suggestion won't > work for me, I should've explained the problem better. I might have had some > luck with Spiro's answer though. I'll check if it'll work. Meanwhile, here > goes a better explanation of the problem: > > > > > > > > I'm developing a test program that tests if usb ports are working. I do > this by requesting information and writing and reading data from usb > devices. I use an usb board test that has four devices. The thing is that > these devices are out of usb standarts, requiring more bandwidth than it > should. So, when I use a higher number of devices, Windows won't allow me to > access from the third device and on. This happens because I don't have > enough band. > > > > If I test one device, and after it's done, I unplug it, then I'm freeing > some band, which allows me to test some more ports. If I do this to every > device I test, then I'll be able to test how many ports I want. > > > > But it's not possible for me to be unpluging the devices myself - I need > to do this by software. After I test one device, I should use a function (on > Windows) that disables the device connection to the host controller, which > will free some band. > > > > > > I hope this made things clear. > > > > Cheers, > > > > Dan. > > > > > > > > On 4/13/07, Spiro Trikaliotis <an-...@sp...> > wrote: > > Hello, > > > > * On Thu, Apr 12, 2007 at 05:57:16PM -0300 Dan Martins wrote: > > > > > Does anyone know any windows function that allows me to manually > > > > > "unplug" a usb device? > > > > Have a look at the Windows DDK (now called "WDK"), the "devcon" sample. > > It allows you to do different operations with devices, for example, > > enable, disable, remove, list them, rescan for them, ... > > > > > > HTH, > > Spiro. > > > > -- > > Spiro R. Trikaliotis http://opencbm.sf.net/ > > http://www.trikaliotis.net/ http://www.viceteam.org/ > > > > > ------------------------------------------------------------------------- > > 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 > > > > > > ----------------------------------------------------------------- > > > ------------------------------------------------------------------------- > > 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 > > > > > _______________________________________________________________ > SMS schreiben mit WEB.DE FreeMail - einfach, schnell und > kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Libusb-win32-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel > |
|
From: Stephan M. <ste...@we...> - 2007-04-15 17:40:26
|
Just use usb_set_configuration(dev, 0) to "turn off" the device after you're done with your testing. This will free the bandwidth allocated for the device. Stephan > Thank you Spiro and Graeme for the answers. Graeme's suggestion won't work for me, I should've explained the problem better. I might have had some luck with Spiro's answer though. I'll check if it'll work. Meanwhile, here goes a better explanation of the problem: > > > > I'm developing a test program that tests if usb ports are working. I do this by requesting information and writing and reading data from usb devices. I use an usb board test that has four devices. The thing is that these devices are out of usb standarts, requiring more bandwidth than it should. So, when I use a higher number of devices, Windows won't allow me to access from the third device and on. This happens because I don't have enough band. > > If I test one device, and after it's done, I unplug it, then I'm freeing some band, which allows me to test some more ports. If I do this to every device I test, then I'll be able to test how many ports I want. > > But it's not possible for me to be unpluging the devices myself - I need to do this by software. After I test one device, I should use a function (on Windows) that disables the device connection to the host controller, which will free some band. > > > I hope this made things clear. > > Cheers, > > Dan. > > > > On 4/13/07, Spiro Trikaliotis <an-...@sp...> wrote: > Hello, > > * On Thu, Apr 12, 2007 at 05:57:16PM -0300 Dan Martins wrote: > > > Does anyone know any windows function that allows me to manually > > > "unplug" a usb device? > > Have a look at the Windows DDK (now called "WDK"), the "devcon" sample. > It allows you to do different operations with devices, for example, > enable, disable, remove, list them, rescan for them, ... > > > HTH, > Spiro. > > -- > Spiro R. Trikaliotis http://opencbm.sf.net/ > http://www.trikaliotis.net/ http://www.viceteam.org/ > > ------------------------------------------------------------------------- > 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 > > > ----------------------------------------------------------------- > ------------------------------------------------------------------------- > 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 > _______________________________________________________________ SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 |
|
From: Dan M. <dan...@gm...> - 2007-04-13 18:32:41
|
Thank you Spiro and Graeme for the answers. Graeme's suggestion won't work for me, I should've explained the problem better. I might have had some luck with Spiro's answer though. I'll check if it'll work. Meanwhile, here goes a better explanation of the problem: I'm developing a test program that tests if usb ports are working. I do this by requesting information and writing and reading data from usb devices. I use an usb board test that has four devices. The thing is that these devices are out of usb standarts, requiring more bandwidth than it should. So, when I use a higher number of devices, Windows won't allow me to access from the third device and on. This happens because I don't have enough band. If I test one device, and after it's done, I unplug it, then I'm freeing some band, which allows me to test some more ports. If I do this to every device I test, then I'll be able to test how many ports I want. But it's not possible for me to be unpluging the devices myself - I need to do this by software. After I test one device, I should use a function (on Windows) that disables the device connection to the host controller, which will free some band. I hope this made things clear. Cheers, Dan. On 4/13/07, Spiro Trikaliotis <an-...@sp...> wrote: > > Hello, > > * On Thu, Apr 12, 2007 at 05:57:16PM -0300 Dan Martins wrote: > > > Does anyone know any windows function that allows me to manually > > "unplug" a usb device? > > Have a look at the Windows DDK (now called "WDK"), the "devcon" sample. > It allows you to do different operations with devices, for example, > enable, disable, remove, list them, rescan for them, ... > > HTH, > Spiro. > > -- > Spiro R. Trikaliotis http://opencbm.sf.net/ > http://www.trikaliotis.net/ http://www.viceteam.org/ > > ------------------------------------------------------------------------- > 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 > |
|
From: Spiro T. <an-...@sp...> - 2007-04-13 18:06:23
|
Hello, * On Thu, Apr 12, 2007 at 05:57:16PM -0300 Dan Martins wrote: > Does anyone know any windows function that allows me to manually > "unplug" a usb device? Have a look at the Windows DDK (now called "WDK"), the "devcon" sample. It allows you to do different operations with devices, for example, enable, disable, remove, list them, rescan for them, ... HTH, Spiro. -- Spiro R. Trikaliotis http://opencbm.sf.net/ http://www.trikaliotis.net/ http://www.viceteam.org/ |
|
From: Graeme G. <gr...@ar...> - 2007-04-12 23:43:57
|
Dan Martins wrote: > Does anyone know any windows function that allows me to manually "unplug" a > usb device? usb_reset() will re-enumerate the device if you have the device open with libusb. Not sure if that's what you're after though. Graeme Gill. |
|
From: Dan M. <dan...@gm...> - 2007-04-12 20:57:20
|
Hi there, Does anyone know any windows function that allows me to manually "unplug" a usb device? Thanks in advance, Cheers! Dan |
|
From: Dan M. <dan...@gm...> - 2007-04-12 13:57:47
|
Hi there,
I made some tests using all the endpoints to see what messages I would get
from Debug View logs. Here are the results:
I can only write using endpoint 0x04. If I use endpoint 0x02, the
application freezes. If I use endpoints 0x86 or 0x88, I get invalid endpoint
error (error: _usb_setup_async: invalid endpoint 0x86-0x88).
Writing with endpoint 0x04, I made tests to see where I could read from.
Endpoint 0x88 works fine, but then I get the bandwidth problem. Using
endpoint 0x02, I get the invalid endpoint error (error: _usb_setup_async:
invalid endpoint 0x02). When I try the endpoint 0x86, I get the worst
result: application freezes and I can't even close it using Windows task
manager.
Debug View logs and the application error messages are shown below. Hope
this helps.
------------------------------------------------------------
*endpoint 0x02 direction OUT
endpoint 0x88-0x86-0x04 direction IN:*
------------------------------------------------------------
*DEBUG VIEW:*
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(): recipient 0000
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(): recipient 0000
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 46
LIBUSB-DRIVER - get_descriptor(): type 0002
LIBUSB-DRIVER - get_descriptor(): recipient 0000
LIBUSB-DRIVER - get_descriptor(): index 0000
LIBUSB-DRIVER - get_descriptor(): language id 0000
LIBUSB-DRIVER - get_descriptor(): timeout 5000
LIBUSB-DRIVER - set_configuration(): found interface 0
LIBUSB-DRIVER - update_pipe_info(): interface 0
LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x02
LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x04
LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x86
LIBUSB-DRIVER - update_pipe_info(): endpoint address 0x88
LIBUSB-DRIVER - claim_interface(): interface 0
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction out
LIBUSB-DRIVER - transfer(): endpoint 0x02
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 0
LIBUSB-DRIVER - abort_endpoint(): endpoint 0x02
LIBUSB-DRIVER - abort_endpoint(): timeout 5000
LIBUSB-DRIVER - call_usbd(): request timed out
*APPLICATION ERROR MESSAGES:*
No messages. Freeze.
*************************************************************************
*************************************************************************
------------------------------------------
*endpoint 0x86 direction OUT
endpoint 0x88 direction IN:
*------------------------------------------
*DEBUG VIEW:*
LIBUSB-DRIVER - set_configuration(): configuration 1
LIBUSB-DRIVER - set_configuration(): timeout 5000
LIBUSB-DRIVER - claim_interface(): interface 0
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction in
LIBUSB-DRIVER - transfer(): endpoint 0x88
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 12
LIBUSB-DRIVER - abort_endpoint(): endpoint 0x88
LIBUSB-DRIVER - abort_endpoint(): timeout 5000
LIBUSB-DRIVER - transfer_complete(): sequence 12: timeout error
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction in
LIBUSB-DRIVER - transfer(): endpoint 0x88
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 13
LIBUSB-DRIVER - abort_endpoint(): endpoint 0x88
LIBUSB-DRIVER - abort_endpoint(): timeout 5000
LIBUSB-DRIVER - transfer_complete(): sequence 13: timeout error
LIBUSB-DRIVER - release_interface(): interface 0
*APPLICATION ERROR MESSAGES:*
LIBUSB_DLL: info: usb_os_find_busses: found bus-0
LIBUSB_DLL: info: usb_os_find_devices: found
\\.\libusb0-0002--0x0547-0x1002<file://./libusb0-0002--0x0547-0x1002>on
bus-0
-------------------------------------
Opening Device 1 / 334d80.
Vendor ID: 1351
MY_VID: 1351
Product ID: 4098
MY_PID: 4098
EP_IN: 88
EP_OUT: 86
Opened Device 1.
Configuring Device 1...................Configurations Set.
Claiming Device's 1 Interface................Interface Claimed.
---->Bulk writing.................LIBUSB_DLL: error:
_usb_setup_async: invalid endpoint 0x86
Wrote -22 bytes em 0.005949 segundos [error: bulk write failed]
---->Bulk reading..................LIBUSB_DLL: error: usb_reap:
timeout error
Read -116 bytes em 0.509017 segundos [error: bulk read failed]
---->Interrupt writing............LIBUSB_DLL: error:
_usb_setup_async: invalid endpoint 0x86
Wrote -22 bytes em 0.006580 segundos [error: interrupt write failed]
---->Interrupt reading.............LIBUSB_DLL: error: usb_reap:
timeout error
Read -116 bytes em 0.530581 segundos [error: interrupt read failed]
Releasing Interface..............Interface Realeased
*************************************************************************
*************************************************************************
------------------------------------------
*endpoint 0x88 direction OUT
endpoint 0x88 direction IN:
*------------------------------------------
*DEBUG VIEW:*
LIBUSB-DRIVER - set_configuration(): configuration 1
LIBUSB-DRIVER - set_configuration(): timeout 5000
LIBUSB-DRIVER - claim_interface(): interface 0
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction in
LIBUSB-DRIVER - transfer(): endpoint 0x88
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 16
LIBUSB-DRIVER - abort_endpoint(): endpoint 0x88
LIBUSB-DRIVER - abort_endpoint(): timeout 5000
LIBUSB-DRIVER - transfer_complete(): sequence 16: timeout error
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction in
LIBUSB-DRIVER - transfer(): endpoint 0x88
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 17
LIBUSB-DRIVER - abort_endpoint(): endpoint 0x88
LIBUSB-DRIVER - abort_endpoint(): timeout 5000
LIBUSB-DRIVER - transfer_complete(): sequence 17: timeout error
LIBUSB-DRIVER - release_interface(): interface 0
*APPLICATION ERROR MESSAGES:*
LIBUSB_DLL: info: usb_os_find_busses: found bus-0
LIBUSB_DLL: info: usb_os_find_devices: found
\\.\libusb0-0002--0x0547-0x1002<file://./libusb0-0002--0x0547-0x1002>on
bus-0
-------------------------------------
Opening Device 1 / 334d80.
Vendor ID: 1351
MY_VID: 1351
Product ID: 4098
MY_PID: 4098
EP_IN: 88
EP_OUT: 88
Opened Device 1.
Configuring Device 1...................Configurations Set.
Claiming Device's 1 Interface................Interface Claimed.
---->Bulk writing.................LIBUSB_DLL: error:
_usb_setup_async: invalid endpoint 0x88
Wrote -22 bytes em 0.006056 segundos[error: bulk write failed]
---->Bulk reading..................LIBUSB_DLL: error: usb_reap:
timeout error
Read -116 bytes em 0.522915 segundos[error: bulk read failed]
---->Interrupt writing............LIBUSB_DLL: error:
_usb_setup_async: invalid endpoint 0x88
Wrote -22 bytes em 0.005569 segundos[error: interrupt write failed]
---->Interrupt reading.............LIBUSB_DLL: error: usb_reap:
timeout error
Read -116 bytes em 0.530075 segundos[error: interrupt read failed]
Releasing Interface..............Interface Realeased
*************************************************************************
*************************************************************************
------------------------------------------
*endpoint 0x04 direction OUT
endpoint 0x02 direction IN:*
------------------------------------------
*DEBUG VIEW:*
LIBUSB-DRIVER - set_configuration(): configuration 1
LIBUSB-DRIVER - set_configuration(): timeout 5000
LIBUSB-DRIVER - claim_interface(): interface 0
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction out
LIBUSB-DRIVER - transfer(): endpoint 0x04
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 51
LIBUSB-DRIVER - transfer_complete(): sequence 51: 2048 bytes transmitted
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction out
LIBUSB-DRIVER - transfer(): endpoint 0x04
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 52
LIBUSB-DRIVER - abort_endpoint(): endpoint 0x04
LIBUSB-DRIVER - abort_endpoint(): timeout 5000
LIBUSB-DRIVER - transfer_complete(): sequence 52: timeout error
LIBUSB-DRIVER - release_interface(): interface 0
*APPLICATION ERROR MESSAGES*:
LIBUSB_DLL: info: usb_os_find_busses: found bus-0
LIBUSB_DLL: info: usb_os_find_devices: found
\\.\libusb0-0002--0x0547-0x1002<file://./libusb0-0002--0x0547-0x1002>on
bus-0
-------------------------------------
Opening Device 1 / 334d80.
Vendor ID: 1351
MY_VID: 1351
Product ID: 4098
MY_PID: 4098
EP_IN: 02
EP_OUT: 04
Opened Device 1.
Configuring Device 1...................Configurations Set.
Claiming Device's 1 Interface................Interface Claimed.
---->Bulk writing.................Wrote 2048 bytes em 0.002735segundos
---->Bulk reading..................LIBUSB_DLL: error:
_usb_setup_async: invalid endpoint 0x02
Read -22 bytes em 0.000351 segundos[error: bulk read failed]
---->Interrupt writing............LIBUSB_DLL: error: usb_reap:
timeout error
Wrote -116 bytes em 0.519622 segundos[error: interrupt write failed]
---->Interrupt reading.............LIBUSB_DLL: error:
_usb_setup_async: invalid endpoint 0x02
Read -22 bytes em 0.000248 segundos[error: interrupt read failed]
Releasing Interface..............Interface Realeased
*************************************************************************
*************************************************************************
------------------------------------------
*endpoint 0x04 direction OUT
endpoint 0x86 direction IN:
*------------------------------------------
*DEBUG VIEW*:
LIBUSB-DRIVER - set_configuration(): configuration 1
LIBUSB-DRIVER - set_configuration(): timeout 5000
LIBUSB-DRIVER - claim_interface(): interface 0
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction out
LIBUSB-DRIVER - transfer(): endpoint 0x04
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 16
LIBUSB-DRIVER - transfer_complete(): sequence 16: 2048 bytes transmitted
LIBUSB-DRIVER - transfer(): bulk or interrupt transfer
LIBUSB-DRIVER - transfer(): direction in
LIBUSB-DRIVER - transfer(): endpoint 0x86
LIBUSB-DRIVER - transfer(): size 2048
LIBUSB-DRIVER - transfer(): sequence 17
LIBUSB-DRIVER - abort_endpoint(): endpoint 0x86
LIBUSB-DRIVER - abort_endpoint(): timeout 5000
LIBUSB-DRIVER - call_usbd(): request timed out
*APPLICATION ERROR MESSAGES*:
No messages. Freeze.
On 4/11/07, Dan Martins <dan...@gm...> wrote:
>
> Hello,
>
> Stephan, thank you for all the information. I'll try to contact the
> manufacturer as you suggested, but this will certainly take a lot of time.
> Meanwhile, I'll try to workaround.
>
> But I question raised in my mind: these devices have four endpoints. Two
> isochronous (0x01) and two bulk (0x02), isn't that right? The endpoints I'm
> using are isochronous and they work fine until I have the bandwidth issue.
> But whenever I try to use the other two endpoints, the application just
> freezes. There's no error message, no nothing. The program stops and I can't
> even close it using Window's task manager. Do you have any idea why that
> happens? If I could use the bulk endpoints, at least the bandwidth wouldn't
> be a problem anymore, right?
>
> here goes the testlib's log again:
>
> bus/device idVendor/idProduct
> bus-0/\\.\libusb0-0001--0x0547-0x1002 0547/1002
> - Manufacturer : Micro-Star
> - Product : USB TESTER
> wTotalLength: 46
> bNumInterfaces: 1
> bConfigurationValue: 1
> iConfiguration: 0
> bmAttributes: 80h
> MaxPower: 50
> bInterfaceNumber: 0
> bAlternateSetting: 0
> bNumEndpoints: 4
> bInterfaceClass: 255
> bInterfaceSubClass: 0
> bInterfaceProtocol: 0
> iInterface: 0
> bEndpointAddress: 02h
> bmAttributes: 01h
> wMaxPacketSize: 1024
> bInterval: 1
> bRefresh: 0
> bSynchAddress: 0
> bEndpointAddress: 04h
> bmAttributes: 02h
> wMaxPacketSize: 512
> bInterval: 0
> bRefresh: 0
> bSynchAddress: 0
> bEndpointAddress: 86h
> bmAttributes: 01h
> wMaxPacketSize: 1024
> bInterval: 1
> bRefresh: 0
> bSynchAddress: 0
> bEndpointAddress: 88h
> bmAttributes: 02h
> wMaxPacketSize: 512
> bInterval: 0
> bRefresh: 0
> bSynchAddress: 0
>
> Cheers!
>
> Dan
>
>
> On 4/11/07, Stephan Meyer <ste...@we...> wrote:
> >
> >
> > > So, for what I understood, I only have two options:
> > >
> > > 1 - Get another EHCI Host controller, so I can split the devices.
> > >
> >
> > That would be a workaround, but no solution. A new firmware would
> > be a solution.
> >
> > > 2 - Fix the firmware, so that the default interface setting has non
> > isochrounous endpoints.
> > >
> > > Is that correct?
> > > If so, do you know any tool to edit the firmware? The hardware I'm
> > using was not made by me, so I'll
> > > something to change ther firmware.
> >
> > You need the firmware's source code to fix it, unless you want to spend
> > endless
> > hours reverse engineering hex files.
> > Apart from that, by fixing the firmware on your own you will void the
> > manufacturer's
> > warranty.
> >
> > But, what about a third option?:
> >
> > Contact the manufacturer, tell them about the broken firmware and ask
> > for a software update. If they won't do this, then send the device back
> > and
> > request a refund.
> >
> > Stephan
> >
> >
> >
> >
> >
> > _______________________________________________________________
> > SMS schreiben mit WEB.DE <http://web.de/> FreeMail - einfach, schnell
> > und
> > kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192
> >
> >
> > -------------------------------------------------------------------------
> >
> > 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
> >
>
>
|
|
From: Dan M. <dan...@gm...> - 2007-04-11 21:13:43
|
Hello,
Stephan, thank you for all the information. I'll try to contact the
manufacturer as you suggested, but this will certainly take a lot of time.
Meanwhile, I'll try to workaround.
But I question raised in my mind: these devices have four endpoints. Two
isochronous (0x01) and two bulk (0x02), isn't that right? The endpoints I'm
using are isochronous and they work fine until I have the bandwidth issue.
But whenever I try to use the other two endpoints, the application just
freezes. There's no error message, no nothing. The program stops and I can't
even close it using Window's task manager. Do you have any idea why that
happens? If I could use the bulk endpoints, at least the bandwidth wouldn't
be a problem anymore, right?
here goes the testlib's log again:
bus/device idVendor/idProduct
bus-0/\\.\libusb0-0001--0x0547-0x1002 0547/1002
- Manufacturer : Micro-Star
- Product : USB TESTER
wTotalLength: 46
bNumInterfaces: 1
bConfigurationValue: 1
iConfiguration: 0
bmAttributes: 80h
MaxPower: 50
bInterfaceNumber: 0
bAlternateSetting: 0
bNumEndpoints: 4
bInterfaceClass: 255
bInterfaceSubClass: 0
bInterfaceProtocol: 0
iInterface: 0
bEndpointAddress: 02h
bmAttributes: 01h
wMaxPacketSize: 1024
bInterval: 1
bRefresh: 0
bSynchAddress: 0
bEndpointAddress: 04h
bmAttributes: 02h
wMaxPacketSize: 512
bInterval: 0
bRefresh: 0
bSynchAddress: 0
bEndpointAddress: 86h
bmAttributes: 01h
wMaxPacketSize: 1024
bInterval: 1
bRefresh: 0
bSynchAddress: 0
bEndpointAddress: 88h
bmAttributes: 02h
wMaxPacketSize: 512
bInterval: 0
bRefresh: 0
bSynchAddress: 0
Cheers!
Dan
On 4/11/07, Stephan Meyer <ste...@we...> wrote:
>
>
> > So, for what I understood, I only have two options:
> >
> > 1 - Get another EHCI Host controller, so I can split the devices.
> >
>
> That would be a workaround, but no solution. A new firmware would
> be a solution.
>
> > 2 - Fix the firmware, so that the default interface setting has non
> isochrounous endpoints.
> >
> > Is that correct?
> > If so, do you know any tool to edit the firmware? The hardware I'm using
> was not made by me, so I'll
> > something to change ther firmware.
>
> You need the firmware's source code to fix it, unless you want to spend
> endless
> hours reverse engineering hex files.
> Apart from that, by fixing the firmware on your own you will void the
> manufacturer's
> warranty.
>
> But, what about a third option?:
>
> Contact the manufacturer, tell them about the broken firmware and ask
> for a software update. If they won't do this, then send the device back
> and
> request a refund.
>
> Stephan
>
>
>
>
>
> _______________________________________________________________
> SMS schreiben mit WEB.DE FreeMail - einfach, schnell und
> kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192
>
>
> -------------------------------------------------------------------------
> 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
>
|
|
From: Stephan M. <ste...@we...> - 2007-04-11 20:10:46
|
> So, for what I understood, I only have two options: > > 1 - Get another EHCI Host controller, so I can split the devices. > That would be a workaround, but no solution. A new firmware would be a solution. > 2 - Fix the firmware, so that the default interface setting has non isochrounous endpoints. > > Is that correct? > If so, do you know any tool to edit the firmware? The hardware I'm using was not made by me, so I'll > something to change ther firmware. You need the firmware's source code to fix it, unless you want to spend endless hours reverse engineering hex files. Apart from that, by fixing the firmware on your own you will void the manufacturer's warranty. But, what about a third option?: Contact the manufacturer, tell them about the broken firmware and ask for a software update. If they won't do this, then send the device back and request a refund. Stephan _______________________________________________________________ SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 |
|
From: Dan M. <dan...@gm...> - 2007-04-11 19:17:29
|
So, for what I understood, I only have two options: 1 - Get another EHCI Host controller, so I can split the devices. 2 - Fix the firmware, so that the default interface setting has non isochrounous endpoints. Is that correct? If so, do you know any tool to edit the firmware? The hardware I'm using was not made by me, so I'll something to change ther firmware. Thanks Stephan, and Cheers! Dan On 4/11/07, Stephan Meyer <ste...@we...> wrote: > > > > Hello Stephan, > > > > First of all, thank you for being so helpful and so quick! :D > > > > Now let's get back to the problems: > > > > 1- I can't spread the devices as I have only one EHCI host controller. > > That's bad. Buy a second PCI-EHCI controller card. They're cheap. > > > > > 2- I won't be able to use configuration 0, as if there's no interface, I > cannot transfer data, right? > > Exactly. > > > > > 3- Isn't there a way to lower the packetsize? > > Yes, fix the firmware, move the isochronous endpoints to a second > alternate interface setting. > > > > > About the packetsize, the amount of data I can transfer has > something to do with it? > > No, if you transfer more than max-packet-size then the host controller > will > automatically split your data into multiple packets. > > > Because I usually transfer 2048 bytes, and if I transfer only 64 bytes > I'm still not able to use the third > > device. And if the maxpacktsize is 1024, why can I transfer 2048? Could > you point me something to > > read about this? > > First of all, according to the log, your program transfers data to and > from bulk endpoints, > not to or from isochronous endpoints. > Second, it's irrelevant how much data you *want* to transfer. In order to > transfer data > you first have to configure the device. But Windows won't do this since > your device > requests too much bandwidth, so you won't be able to transfer any single > byte. > > > > > 4- Here goes DebugView log: > > > > And here's the relevant error: > > > LIBUSB-DRIVER - set_configuration(): setting configuration 1 failed: > status: 0xc0000001, urb-status: > > 0x80000700 > > 0x80000700 means USBD_STATUS_NO_BANDWIDTH (from usbdi.h) > > The error should be self explanatory, > > Stephan > > _______________________________________________________________ > SMS schreiben mit WEB.DE FreeMail - einfach, schnell und > kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 > > > ------------------------------------------------------------------------- > 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 > |
|
From: Stephan M. <ste...@we...> - 2007-04-11 18:37:52
|
> Hello Stephan, > > First of all, thank you for being so helpful and so quick! :D > > Now let's get back to the problems: > > 1- I can't spread the devices as I have only one EHCI host controller. That's bad. Buy a second PCI-EHCI controller card. They're cheap. > > 2- I won't be able to use configuration 0, as if there's no interface, I cannot transfer data, right? Exactly. > > 3- Isn't there a way to lower the packetsize? Yes, fix the firmware, move the isochronous endpoints to a second alternate interface setting. > > About the packetsize, the amount of data I can transfer has something to do with it? No, if you transfer more than max-packet-size then the host controller will automatically split your data into multiple packets. > Because I usually transfer 2048 bytes, and if I transfer only 64 bytes I'm still not able to use the third > device. And if the maxpacktsize is 1024, why can I transfer 2048? Could you point me something to > read about this? First of all, according to the log, your program transfers data to and from bulk endpoints, not to or from isochronous endpoints. Second, it's irrelevant how much data you *want* to transfer. In order to transfer data you first have to configure the device. But Windows won't do this since your device requests too much bandwidth, so you won't be able to transfer any single byte. > > 4- Here goes DebugView log: > And here's the relevant error: > LIBUSB-DRIVER - set_configuration(): setting configuration 1 failed: status: 0xc0000001, urb-status: > 0x80000700 0x80000700 means USBD_STATUS_NO_BANDWIDTH (from usbdi.h) The error should be self explanatory, Stephan _______________________________________________________________ SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 |