Re: USB Multiple Device Problem
- From: "Keaven Pineau" <keavenpineau@xxxxxxxxxx>
- Date: Wed, 20 Sep 2006 16:19:48 -0400
I am using a self-powered hub.
Our device has 1.1 usb so when the mass-storage is loaded it seems not to
have enough bandwidth left for the camera.
Unfortunately, using only the camera is not an option for our client :)
I try to use another printer that doesn't have a mass storage peripheral
included, a canon iP90 but we have the problem that the pcl driver doesn't
work with those.
Do you know how I could make it work? I don't find any informations how to
communicate with it on the web beside a cie that do PrintCE library for it.
Regards,
"Michel Verhagen (eMVP)" <mverhagen@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in
message news:essRLSE3GHA.3812@xxxxxxxxxxxxxxxxxxxxxxx
Are you using a bus-powered hub or a self-powered hub? The camera drains a
lot of power, so it may not have enough power to drive anything else but
the camera alone.
Michel Verhagen, eMVP
EmbeddedFusion
www.EmbeddedFusion.com
mverhagen at embeddedfusion dot com
Keaven Pineau wrote:
I went a bit further in the code and found the problem is in the function
SetUsbInterface() of the file usbmsc.c
the call to lpOpenPipe failed, I put the line of code where it occurs
between "***". From there I don't really know what to do.
Thanks again,
BOOL SetUsbInterface(PUSBMSC_DEVICE pUsbDevice)
{
....
else if (USB_ENDPOINT_DIRECTION_IN(
pEndpoint->Descriptor.bEndpointAddress ) )
{
RETAILMSG(1, (TEXT("USB Endpoint IN Address:
%d\r\n"),pEndpoint->Descriptor.bEndpointAddress));
if ( NULL == pUsbDevice->BulkIn.hPipe &&
(pEndpoint->Descriptor.bmAttributes &
USB_ENDPOINT_TYPE_MASK) == USB_ENDPOINT_TYPE_BULK)
{
//
// create the Bulk IN pipe
//
***
pUsbDevice->BulkIn.hPipe = pUsbDevice->UsbFuncs->lpOpenPipe(
pUsbDevice->hUsbDevice,
&pEndpoint->Descriptor );
***
if ( !pUsbDevice->BulkIn.hPipe )
{
DEBUGMSG( ZONE_ERR, (TEXT("OpenPipe error: %d\n"), GetLastError() ));
RETAILMSG(1, (TEXT("2- OpenPipe error: %d\n"), GetLastError() ));
bRc = FALSE;
TEST_TRAP();
break;
}
....
return (bRc);
}
"Keaven Pineau" <keavenpineau@xxxxxxxxxx> wrote in message
news:Ow9uMYB3GHA.4024@xxxxxxxxxxxxxxxxxxxxxxx
On my setup I am using a usb hub which I connect a keyboard, webcam and
a printer. The keyboard and printer are using the built-in CE drivers
but the webcam is using webcam.dll open source code done by Doug Boling.
One thing to know is that my printer has as also a mass storage device
in it.
The problem I have is that when I am connecting the printer in last it
won't work properly. The call to USBDeviceAttach in
LoadRegisteredDriver() (in usbd.c) failed for the mass storage device
and then pop the dialog box to enter the dll name for the driver.
Now, if I disconnect the camera and connect the printer with only the
keyboard. The printer do the same registring process but this time it
doesn't failed on LoadRegisteredDriver(). Moreover, If I connect the
camera after, absolutely no usb device is recognized and the HCD driver
isn't called for an attach.
Is there a maximum number of devices I could connect to a hub?
Anyone has any ideas that could do this behavior?
I am developping for a pxa270 with plateform builder 5.0. I have all
the QFEs up to august 2006.
The webcam used is a logitech quickcam PRO5000 , the same used to
develop the driver.
Thanks,
Keaven
--
.
- References:
- USB Multiple Device Problem
- From: Keaven Pineau
- Re: USB Multiple Device Problem
- From: Keaven Pineau
- Re: USB Multiple Device Problem
- From: Michel Verhagen (eMVP)
- USB Multiple Device Problem
- Prev by Date: Platform Builder on Mac Pro with Basecamp/XP?
- Next by Date: Re: USB Multiple Device Problem
- Previous by thread: Re: USB Multiple Device Problem
- Next by thread: Re: USB Multiple Device Problem
- Index(es):
Relevant Pages
|