USB 2.0 crawling / mystification under XP SP2

  • Thread starter Thread starter Derik
  • Start date Start date
D

Derik

Howdy!

I'm helping my dad set up his new digital camera. The OLD camera
used SD cards- which were easy. Put 'em in and open 'em up. The new
one uses USB cables, and it's finally forcing me to deal with a
problem he's had for a while.

His laptop's USB is slow. SLOOOOW. USB 1.1 slow. A 4GB Compact
Flash card takes ~20 minutes to transfer. (It took 2 minutes on my
laptop.)

Here's the thing-- I think he HAS USB 2.0. He's got a "Standard
Enhanced PCI to USB Host Controller", 'Enhanced' == 2.0, right?

Google has a lot of noise circa USB2's rollout about drivers and
suchwhat- a lot of it boils down to "Get SP1!" ...but he has SP2.

Computer is a Toshiba Satellite laptop, circa 2003. (No, he didn't
consult me on the purchase.)

It has 3 USB ports in the back. The Device Manager identifies each of
these ports as a 'USB Root Hub' with an associated controller. 2 are
standard USB 1.0 controllers, 1 is the enhanced 2.0 controller.

Each controller APPEARS (operative term) to be associated with a
specific hub, and thus with a specific port (each Hub shows the
hardware plugged into it under their respective 'power' tab in the
Hub's property dialog.)
http://members.aol.com/regenesis0/xp_usb_port_devices.jpg

The Hub's have a Device Instance ID of 'USB\ROOT_HUB\#######'
The Hub with the Enhanced controller has a Device Instance ID of
'USB\ROOT_HUB20\####### (Uh, #'s are stand-ins, obviously. They're
different for each one if that matters.)

HERE's what baffles me- when I disable the 2 'NEC PCI to USB Host
Controller', their associated USB Root Hub's (naturally) disappear.
(I cannot disable the Enhanced controller.) This leaves me with only
1 USB root hub, whose Device ID says it's 2.0, and driver says its
enhanced. ....but it doesn't leave me with 1 USB port. All 3 still
work. And now when I plug things into them, they all come up under
the 'power' tab of my 1 remaining USB Root Hub, regardless which port
they're connected to.

JESUSALLAHBUDDHA WHY?

(Also, it still runs at 1.1 speeds.)

...help?

-Derik
 
Try device mgr,uninstall the USB controllers w/o restarting each time,once
thru,if youre hardware is intel based,download & install the chipset
installation
utility for the board,this has the USB drivers.
 
Derik said:
Howdy!

I'm helping my dad set up his new digital camera. The OLD camera
used SD cards- which were easy. Put 'em in and open 'em up. The new
one uses USB cables, and it's finally forcing me to deal with a
problem he's had for a while.

His laptop's USB is slow. SLOOOOW. USB 1.1 slow. A 4GB Compact
Flash card takes ~20 minutes to transfer. (It took 2 minutes on my
laptop.)

Here's the thing-- I think he HAS USB 2.0. He's got a "Standard
Enhanced PCI to USB Host Controller", 'Enhanced' == 2.0, right?

Google has a lot of noise circa USB2's rollout about drivers and
suchwhat- a lot of it boils down to "Get SP1!" ...but he has SP2.

Computer is a Toshiba Satellite laptop, circa 2003. (No, he didn't
consult me on the purchase.)

It has 3 USB ports in the back. The Device Manager identifies each of
these ports as a 'USB Root Hub' with an associated controller. 2 are
standard USB 1.0 controllers, 1 is the enhanced 2.0 controller.

Each controller APPEARS (operative term) to be associated with a
specific hub, and thus with a specific port (each Hub shows the
hardware plugged into it under their respective 'power' tab in the
Hub's property dialog.)
http://members.aol.com/regenesis0/xp_usb_port_devices.jpg

The Hub's have a Device Instance ID of 'USB\ROOT_HUB\#######'
The Hub with the Enhanced controller has a Device Instance ID of
'USB\ROOT_HUB20\####### (Uh, #'s are stand-ins, obviously. They're
different for each one if that matters.)

HERE's what baffles me- when I disable the 2 'NEC PCI to USB Host
Controller', their associated USB Root Hub's (naturally) disappear.
(I cannot disable the Enhanced controller.) This leaves me with only
1 USB root hub, whose Device ID says it's 2.0, and driver says its
enhanced. ....but it doesn't leave me with 1 USB port. All 3 still
work. And now when I plug things into them, they all come up under
the 'power' tab of my 1 remaining USB Root Hub, regardless which port
they're connected to.

First and most obviously, you are not familiar with the way a USB2 system
that supports high speed mode is configured. You say that the machine has 3
USB ports. If it has an Express Card slot (probably not from the age), then
it in fact has 4 because this slot has a USB2 port built in. The 4 ports
will be connected to 2 Root Hubs, 2 to each root hub (bear with me). These
Root Hubs handle the slow and fast USB signals (but not the High speed) and
connect to what are known as OHCI ports. These equate to the old USB1
system. In addition, there is an additional Root Hub that handles all 4
physical ports when using Hi speed communications, and connects to an EHCI
port (the 'E' stands for 'Enhanced'). Thus the total number of ports on all
the Root Hubs is double the number of physical ports (many systems don't
always bring all the ports on the chips to physical connectors so don't
panic if the number of Root Hub ports are actually higher). The picture
that you gave is consistent with a PC with 4 physical USB2 (high speed
capable) ports (but as I noted it is possible that one port on the chip set
is not connected to the outside world).

When you plug in a slow or Fast (USB1) device, it is connected to its
appropriate hub and to an OHCI port. This is unchanged from the older
system. When you connect a Hi speed device, it too is initially connected
to the standard Hub and to its OHCI. But this time the operating system
recognises that it is capable of high speed mode and instructs the device to
switch to high speed mode. The operating system also instructs the host USB
system to disconnect the device from the standard Root Hub and reconnect it
to the high speed hub and hence to the EHCI port, where after a brief
interchange, high speed communication commences.

I shall not go into why this apparently complicated arrangement occurs, but
suffice to say there is a very good technical reason for it.

Now to your problem. You have not made life easy for yourself by assuming
that each Root Hub is associated with one of your physical connectors. So
the first thing is to reboot your PC and allow Windows to rediscover and
renable all the USB hardware (if you haven't already done so).

Next, download a useful Microsoft Utility from here

http://www.ftdichip.com/Resources/Utilities/usbview.zip

and install it and run it. This will display your USB ports as a tree and
allows you to see what is connected to where. There should be 3 root hubs
shown, the top two with 2 ports each and the bottom one with 4 ports (and
described as 'enhanced'). If there are any other hubs connected these will
appear in the tree in their appropriate place. Any USB1 device connected
should be shown as connected to the top two Root Hubs and any USB2 devices
should be shown connected to the bottom Root Hub.

Now plug in a peripheral device to a PC based port (not an external hub - a
whole different set of rules apply here) that you know to be a high speed
(USB2) device. The device should eventually show up in the tree connected
to the enhanced port. If this doesn't occur (but see [1] below) this
suggests that there is a fault with either the hardware (unlikely [2]), or
the software driver. If it does work, then try the camera. If this doesn't
connect to the Enhanced port, then either the camera isn't a high speed
device [1] or the high speed part of its interface is faulty (unlikely [2]).

Let us know what hapens.

[1] Many PC and peripheral manufacturers exploited an ambiguity in the USB2
specification (and still do). The spec failed to require that devices made
to conform to the USB2 actually had to feature the high speed mode. Thus
anything made to USB1 (or USB1.1 for peripherals) could be legitimately
rebadged to claim to be USB2 without actually having to change anything.

[2] This is unlikely because Windows pops up an error message when an
attempt to connect to the Enhanced controller occurs.
 
  Try device mgr,uninstall the USB controllers w/o restarting each time,once
 thru,if youre hardware is intel based,download & install the chipset
installation
 utility for the board,this has the USB drivers.


















- Show quoted text -

Need to also check in the PC's BIOS so as to se that the USB 2.0
"mode" is turned on. I have seen BIOSes where the BIOS can control
which level of USB is active.
 
Back
Top