Mailing List Archive


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[tlug] USB Reconfiguration



This is just background information on some of the complexities 
of USB devices. It doesn't help (or hurt) Dave sync his PDA. 

Godwin wrote:

> [...] Jim [...] wrote:
> 
> > Some USB devices have the ability to behave as one of 
> > several devices. There is the possibility that the 
> > disappearing and reappearing is caused by the USB 
> > device changing its identity to behave as a different 
> > device. 
> 
> That sounds quite plausible 

Yup. 

Without further information, that's about all that we can say. 

> yet I wonder what the point of changing identities is. 

It varies for the device concerned. 

For example, for a pointing device, only a crude mouse mode 
is supported at boot time. So to be able to use at boot time, 
a pointing device that can output absolute coordinates, 
it must behave as (and identify itself as) a particular kind 
of simple mouse with relative coordinates for use during boot 
time (such as to use while changing BIOS settings). 
The device would necessarily change its configuration 
later on to indicate absolute coordinates. 

To make them cheap, some USB devices use RAM instead of 
non-volatile memory (such as flash) for the program. 
They initially know just enough to identify themselves 
as the stupid device they are and accept commands from 
the host for the host to download the software into the 
USB device. After the program is downloaded, the USB 
device reboots, after which it indentifies itself as the 
smart device that it now is. 

I have a camera that has two USB modes that I can select 
in its configuration menus: 

   mass storage device for access to images as files on MS-DOS partition
   "Windows" mode for "web cam" operation. 

Those two modes even have different device IDs. 
It's not an issue of the host merely choosing amongst 
multiple configurations offered by the USB device 
in configuration descriptors. 

So above are three examples of why devices change their 
configuration. Those examples do not imply that the PDA 
changes it configuration. 

---------------------------------------------------------

It is _only_ a possibility that the disappearing and 
reappearing is caused by the USB device changing its 
identity to behave as a different device. 

There are other plenty of other possible reasons 
for the disappearing/reappearing behavior. 

Perusing the output of 

   while true; do lsusb >>lsusb.stdout; sleep 1; done

would yield clues as to whether the device is being 
completely redefined. It would not indicate whether or 
not the host is merely selecting one of several 
configuration descriptors. 

In any of those cases, it doesn't help (or hurt) Dave sync 
his PDA. This is just background information on how USB 
devices work. 



Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links