Jo-Anne said:
Paul said:
Jo-Anne wrote:
My four-year-old Dell Precision M4300 laptop running WinXP has only
three
USB ports. I use the one in back for the printer, which leaves two on
the
right side--one above the other.
My Contour three-button mouse works fine in the top port but has never
been
recognized in the bottom one. Other devices--external hard drives and
flash
drives--work normally in the bottom one. I'd prefer to have the mouse
plugged into the bottom port because it's difficult to plug in the
other
devices under the mouse connection.
Any suggestions for troubleshooting and fixing the problem?
Thank you!
Jo-Anne
If you go Start : Run : devmgmt.msc and then select View : Show Hidden
Devices,
does it show up in there ?
With the mouse plugged into the working port, set up that view, then try
moving the mouse, and see if something shows up in Non Plug and Play
Drivers
(hidden devices). If so, you could try deleting the item from the Hidden
Devices. The entry might mention "mouse" or "HID" or the like. HID
stands for Human Interface Device.
If you had a copy of UVCView or USBView, you could watch what happens
when the device is plugged into the non-working port, but because
you've verified the port with a USB hard drive, I don't see a lot
of value in such a move right now. This is probably something
recorded in the registry, which is not right, rather than something
being physically wrong with the mouse.
You could check the very end of the setupapi.log file, for new
entries recording what happened when you plugged the mouse in.
The entries in the file should be date-stamped, so you can
see what your attempt today did.
The Microsoft utility "devcon" can be used to work on this. But it
has roughly the same functions, as working on Device Manager directly.
If you run out of things to try, you can work with that from the
command line. Part of the fun of using this, is learning how to
use it (like, how do you figure out the "instance name"). But if the
GUI way doesn't work, this is another way to get the job done. Note
that there is no 64 bit version (x86-64) on this page, and the
one usable version is 32 bit. The IA64 is for Itanium servers.
To get a 64 bit version (like, to run on Windows 7 64 bit),
you have to do a 700MB download and pull the file off the
resultant download. Let's hope it doesn't come to that...
You likely just need the 32 bit version.
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q311272
devcon driverfiles usb*
devcon find usb*
devcon remove <the_specific_instance_name>
Maybe you can get some instance names from the "find" option. The
problem I had, was when testing a specific instance (my mouse),
some of the characters in the instance name, need to be "escaped",
and I couldn't get the command to accept just one instance.
When I did something like this...
devcon status <the_specific_instance_name>
the <the_specific_instance_name> part was getting mis-interpreted
because it had "&" characters in the name. The name of my mouse is:
USB\VID_046D&PID_C01A\5&39258CB2&0&2 : USB Human Interface
Device
If you look here, as a reference, you can see 046D C01A is a Logitech
mouse.
http://www.linux-usb.org/usb.ids
046d Logitech, Inc.
c01a M-BQ85 Optical Wheel Mouse
HTH,
Paul
Thank you, Paul! Here's what I've found so far:
* In devmgmt.msc Hidden Devices, the mouse shows up--but so does my Dell
Touchpad.
* I moved the mouse from the working port to the nonworking one, and
nothing
related to a mouse or a HID showed up in Non Plug and Play Drivers.
* When I moved the mouse to the nonworking port, I first got the error
message "USB device not recognized..." and the mouse wouldn't work at
all. I
unplugged it, waited a short time, and plugged it into the same port
again.
This time I heard the beep indicating that something has been plugged in
and
I got a new message: Found new hardware--problem occurred, might not
work.
(I can't remember the exact wording.) When that happened, the mouse
started
working--but only as a generic mouse, not my Contour three-button mouse.
I
then put the mouse back in its top port so I could use it.
* I checked the end of the setupapi.log file and saw the following (I
hope
it's OK to paste it here):
[2012/04/27 23:17:08 1044.3 Driver Install]
#-019 Searching for hardware ID(s): usb\unknown
#-018 Searching for compatible ID(s): usb\unknown
#-198 Command line processed: C:\WINDOWS\system32\services.exe
#I393 Modified INF cache "C:\WINDOWS\inf\INFCACHE.1".
#I022 Found "USB\UNKNOWN" in C:\WINDOWS\inf\usb.inf; Device: "Unknown
Device"; Driver: "Unknown Device"; Provider: "Microsoft"; Mfg: "(Standard
USB Host Controller)"; Section name: "BADDEVICE.Dev".
#I023 Actual install section: [BADDEVICE.Dev.NT]. Rank: 0x00000000.
Effective driver date: 07/01/2001.
#-166 Device install function: DIF_SELECTBESTCOMPATDRV.
#I063 Selected driver installs from section [BADDEVICE.Dev] in
"c:\windows\inf\usb.inf".
#I320 Class GUID of device remains:
{36FC9E60-C465-11CF-8056-444553540000}.
#I060 Set selected driver.
#I058 Selected best compatible driver.
#-166 Device install function: DIF_INSTALLDEVICEFILES.
#I124 Doing copy-only install of "USB\VID_0000&PID_0000\5&260C57CF&0&2".
#-166 Device install function: DIF_REGISTER_COINSTALLERS.
#I056 Coinstallers registered.
#-166 Device install function: DIF_INSTALLINTERFACES.
#-011 Installing section [BADDEVICE.Dev.NT.Interfaces] from
"c:\windows\inf\usb.inf".
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of "USB\VID_0000&PID_0000\5&260C57CF&0&2".
#I121 Device install of "USB\VID_0000&PID_0000\5&260C57CF&0&2" finished
successfully.
Any idea of what I should do next?
Thank you again!
Jo-Anne
That's suggestive the problem is physical.
Yet, you say you've had a USB hard drive on that port, and it worked.
I would re-verify the USB hard drive works on that port.
For example, someone here had a VID/PID all zeros, and claims it
was a bad connection. I reviewed a number of other hits for this
search, and nobody managed to fix it!
http://social.technet.microsoft.com...e/thread/bbf4b69d-2bea-4860-9dab-3d27d3d223c4
I don't think that's the whole story, but I'm not finding any "solutions"
for this problem. I don't think it is always a bad connection or a power
problem. It's got to be something else. The thing is, the install
shouldn't
even start, if the OS can't read the thing.
Based on your error, the search term I was using is:
copy-only install of USB\VID_0000&PID_0000
The following is some standard boilerplate, for getting a copy of
USBView or UVCView. Such a program, allows viewing the config information
the USB device reports when probed. Now, in your case, we know the
VID and PID are reporting as zeros, and it's possible no endpoints
were formed to the USB device (communications path to the mouse failed).
So there might not be much to see with UVCView.
What we'd be looking for, by using UVCView, is whether
the sneaky mouse "makes a later appearance" after the bad_device driver
installation happens - implying a timing problem of some sort, like
the mouse is connected, disconnected, is connected again, fouling up
the driver installation. Using this tool, isn't a guarantee it can be
fixed, merely a diagnostic that may be able to say "yup, eventually
it appeared" or "nope, it's still dead".
UVCView is a Microsoft program, provided as a programming example.
At one time, it was available for easy download from the Microsoft site.
Then, Microsoft removed it from their web page. I started referring people
to copies stored on web.archive.org, and the bastards at Microsoft
had those removed as well (and likely, because I'd made public references
to the availability of the file, no other reason). In any case, these
are ways to get UVCView today. I don't know if Franc still offers his
copy or not.
***************** Sources of UVCVIEW ************************
This is my standard blurb for the older version of UVCView.
*******
ftp://ftp.efo.ru/pub/ftdichip/Utilities/UVCView.x86.exe
http://www.users.on.net/~fzabkar/USB_IDs/UVCView.x86.exe
File size is 167,232 bytes.
MD5sum is 93244d84d79314898e62d21cecc4ca5e
(You check the MD5sum to see if the copy is unadulterated. MD5sum has been
broken from a security standpoint, so it isn't an absolute "proof of
purchase".
You can use the Microsoft program "fciv" to check the MD5sum value, if you
don't
already have a copy. You can get fciv here. It's a command line utility.
http://www.microsoft.com/en-us/download/details.aspx?id=11533
)
This is a picture of what the UVCView info looks like. Notice the
idVendor and idProduct are non-zero values.
http://www.die.de/blog/content/binary/usbview.png
Some information on the parameters seen in UVCView.
http://www.beyondlogic.org/usbnutshell/usb5.htm
*******
There is a later version of UVCView, but I doubt it adds anything
to the capabilities. UVCView, is just USBView program with UVC Class
readout added to the analysis of the config info. (UVC is for web cams.)
This is my recipe for the latest version I know of.
*******
Download a copy of Windows Device Kit. Yes, I hate telling people to do
this!
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=11800
GRMWDK_EN_7600_1.ISO 649,877,504 bytes
You can use the 7ZIP program, to extract a file from within the downloaded
ISO, without the hassle of installing it. (I don't like filling my
computer
with garbage, which is why I do stuff like this instead. The UVCView
program
doesn't need to be installed as such. It's standalone, and uses no
registry
entries that I'm aware of.)
Using 7ZIP, open the ISO, then navigate to "WDK" and find
avstreamtools_x86fre_cab001.cab
Click on the cab, do an "Open Inside", then select
_UVCview.exe_00006
then extract. Then rename the extracted file to
UVCView2.exe
The file should be 133,632 bytes and have MD5SUM =
213f6e89cc4ab4e7e9e3e2ad394b83cb
We trust Microsoft, and checking the MD5SUM in this case, is more
curiosity
than anything else.
The interface works the same way as the other versions.
*******
The device being analyzed, should be connected directly to
a computer USB port. It doesn't help if there is a hub in
the way. You might not "see" the device at all with UVCView
if you did that. Sometimes, a computer uses an "internal hub
chip", and then the device will not appear, and there is nothing
we can do (short of editing the source code to UVCView and
recompiling it etc.).
***************** End of UVCVIEW boilerplate ********************
If UVCView shows a valid device appearing on the bad USB port,
you could try going to Device Manager, and "scan for new hardware".
But I expect that's not going to work, because the "bad.device"
driver installation has "plugged the hole" and the OS thinks it
is already using the "best driver". Still, this is the only
option I can think of.
I doubt removing the entire USB stack would help. All USB devices,
should be rediscovered if you do this. It's just a lot of work,
with no certainty things will be any better later.
http://www.usbman.com/Guides/Cleanup Device Manager Safe Mode.htm
"WinXP and 2000 - Removing USB devices in Safe Mode will force the OS
to refresh the USB driver stack and may cause a shift in IRQ
assignment."
Note the "warning" on that page, about what happens to USB keyboard and
mouse, and losing control of the system. In your case, with the laptop,
there really aren't any temporary hardware workarounds, to avoid losing
control of the system. And I'm not convinced at this point, that the
USB\VID_0000&PID_0000 thing is happening, because of something in the
registry. It doesn't look likely at this point. Maybe it has something
to do, with some other thing like your trackpad, sharing the same wiring
as that USB port (i.e. an internal hub chip).
A scripted way of doing this, is offered on this page. RenewUSB.bat
This does the equivalent, of what the usbman.com page is suggesting.
http://www.robvanderwoude.com/devcon.php
The renewusb.bat file, has commands of the form:
DEVCON FindAll =USB
DEVCON Remove
DEVCON ReScan
After the "DEVCON Remove" stage, you'd have no working keyboard and mouse.
But, since the DEVCON ReScan line comes right after that, you sit back
and relax, as the entire USB stack is "rediscovered" again. So Rob's
script
may avoid the problem the USBman.com site warns about. It's because the
script has the logic, to repair the damage caused by the "Remove".
If you have a backup of C:, you have nothing to worry about
Seriously,
if I simply had to try that, I'd do a backup of C: (using software that
boots on its own when WinXP is broken), then try running renewusb.bat
with a copy of devcon.exe in the same directory.
When you download .bat files off the net, you can review them first, by
changing the file extension. The first time I downloaded renewusb.zip,
I extracted renewusb.bat and changed the extension on the file, to
renewusb.bat.txt, so I could open the file with Wordpad or Notepad.
Take a few moments, to review the code and get a general understanding
of how it works. Sometimes, there are developer notes inside the bat
file, warning about certain things. Once you're happy the .bat file
is safe looking, you can change it back to renewusb.bat again,
before running it. I try to run stuff like that from a Command Prompt
window, so I can review the output while it runs.
Have fun,
Paul