PDA

View Full Version : How do OSs know the difference between USB1 & 2?



riscpc
12-06-2004, 11:48 AM
I have two bog standard AMD 2000 processor PC computers. Both have plug in HDDs. For one machine I have an HDD with win98, one with winXP pro and one with Xandros delux version 2.0 I plug in the one I want to use at the time.

The PCs have 4 USB2 ports at the rear and two USB 1 ports at the front. in Both cases, Windows sees the front ports as USB 1 regardless of the fact that the cable connecting to the mother board plugs into a USB2 connector on the board as shown by the Mother board manual. Swapping these connections with one of the rear USB2 connections still shows the front ports up as USB1; whereas the rear one shows as USB2.

Window XP complains bitterly via annoying notices bottom right of screen when I plug in my USB2 memory stick into the USB1 port at the front. Windows 98 sees it just as a USB 1 mem stick. Xandros just doesn't seethe mem stick at all when plugged into the front port however Xandros does see my USB1 Fuji 210 Digital camera when plugged into the front port; albeit as a removable drive which is never the less usable in as much you can download photos to the HDD from it. I do not have a driver for the camera for Xandros Linux for the camera. Xandros sees the USB2 memory stick as a USB high speed removable drive on my USB2 port at the rear as one would expect.

Given that the actual chipset for all the ports on my Mother board are USB2 as stated in the manual and test as such when connected to a USB rear port outlet, my question is:

"what in the name of the great PC maker in the sky tells the OSs that the cable between the physical outlet at the front of the computer and the connection it makes to the USB port on the mother board is only a USB1 cable? "

All the tests I have done point to there being a huge difference in the type of cable, and yet when I do a continuity test with an ohm meter on both cables, I get the same results exactly; wire for wire. Can anyone tell me what tells the OS there is a difference please?

riscpc

tweak\'e
12-06-2004, 11:54 AM
i'll bet that the front usb port has a daughter card.....which would be limiting it to usb1. you might need to remove it and wire up the port direct to a usb2 port. the other possiblity is there is to much data errors so it dropping the speed back to usb1. data errors could be from the type of cable used and/or interference from other devices in the case.

riscpc
12-06-2004, 12:17 PM
No ther is no mother board. In fact the cable wires terminate directly to the sockets at the front of the machine and at the other, they terminate into the small female sockets that plug onto the terminals of the board.

thanks for the thought though..

riscpc

tweak\'e
12-06-2004, 12:35 PM
have you tried changing the lead from the front to a usb2 lead ??

riscpc
12-06-2004, 02:11 PM
to Change the lead from the front to a USB2 lead would mean unsoldering the wires from the front USB sockets and stripping the sockets from a USB2 lead and soldering that in place of the other. That could be a last resort. However I really want to know HOW the OS diferentiates the difference between a USB 1 cable and a USB2 one. It may be that I could then modfiy the existing cable easier than trying to fit it up with an alternative one.


riscpc

Graham L
12-06-2004, 02:37 PM
The OS "knows" by asking the USB controller which feeds the port. The sockets just connect four wires (+5V, Gnd, Data+, Data-) to devices.

The only difference between USM2 and USB1 cables is the gauge of the wires, the control of impedance (by the twist of the data pair) and perhaps shielding.

Quite a conversation goes on between the OS driver and the USB hardware at boot time, and when any device is plugged in. Setting the "verbose debug" options for the Linux USB support gives a few screensful when something changes.

There must be a chip associated with those front panel sockets --- the panel is probably a USB1.1 hub. If there are only four wires going to the motherboard from the panel, that is why it's determined to be USB1.1. :D

tweak\'e
12-06-2004, 03:40 PM
>There must be a chip associated with those front panel sockets --- the panel is probably a USB1.1 hub. If there are only four wires going to the motherboard from the panel, that is why it's determined to be USB1.1

that was my thought....however if its only a lead to the socket it won't be that. all thats left is the lead.

> However I really want to know HOW the OS diferentiates the difference between a USB 1 cable and a USB2 one.

it dosn't know. odds are it just dropping the speed due to errors at higher speeds.

Graham L
12-06-2004, 03:47 PM
It knows. It will complain about errors. :D And he has two sockets on the front. As far as I know you should have a separate set of wires from a controller or hub to each socket.

tweak\'e
12-06-2004, 04:15 PM
<doh>

sorry graham...i'm a little blonde today ;-)

he does say there is 2 front sockets therefore it must have a daughter card or hub in which case it will only run at usb1 unless he replaces it with a usb2 hub.

riscpc
13-06-2004, 11:54 AM
In reply to your point Grahame L, yes it does have two sets of ordinary wires, non shielded and twisted, running from one of the the mother board's USB2 pins to the two physical sockets on front of the machine. There is no daughter board. I took the front sockets out to inspect them and they connect directly to the cable that connects to the pins on the mother board.

The cables to the USB2 sockes on the rear of the machine are individual shielded cables; one going to each socket. I suspect if I get another pair of these cables, unsolder the wires rfom the sockets and solder them to the ones that are mounted on the front of the machine, it may well allow USB2 to operate there. There are two other USB2 sockets but they are mounted on the mother board next to the keyboard and mouse ports on the rear of the machine. They ar not inb contention.

Now Indow XP complains bitterly if you use a USB2 device on the front ports. Win98 doesn't but simply slows the speed. Linux doesn't see a USB2 device plugged into that port but Linux does see a UBS1 device plugged in to it. On looking at the hardware list under linux with a USB2 device plugged into the USB1 port, it says, Unknown USB device and simply ignores it.

Thanks for the info to date.


riscpc

Graham L
13-06-2004, 03:08 PM
This is a bit strange.

Linux doesn't know about USB devices it doesn't know about. :D Unless it has a table entry matching a driver module to the VendorID/ProductID numbers programmed into the device and sent to the overall USB driver in the recognition protocol, it can't use it. The best way to see what is happening is to plug a USB device in, then do tail -20 /var/log/messages. (You'll probably need to be root to see the messages file).

Does W98 have USB2? :D

Windows XP "complains bitterly". :O Perhaps it is cable after all.

" ... two sets of wires..." means two sets of four wires? (External USB cables use a twisted pair for the data, and a pair of heavier [not necesarily twisted] wires for power. The shield goes over all, I think.

I suppose internal ones are so short they don't need shielding on the data wires for USB 1.1 . The rear ones have shielded cables. ;-) So maybe the data cables have to be shielded twisted pair for USB2..
Ribbon cable is cheap to assemble to IDP connectors, so the front cables are ribbon?

john r
13-06-2004, 08:02 PM
Interesting subject,
I recently had a tower case in for repair with what I think is a interference suppressor in the form of a round magnetic wrapped around the front USB cables between the plugs and the board.
The reason I think it is for noise suppressing is I have fitted the same type of magnetic on RS232 data cables for magnetic card readers to stop interference on the communication cable which is connected to the host PC.
Has anyone seen this setup on front USB port cables.
John.

Graham L
14-06-2004, 03:16 PM
Usually those ferrite anti-interference blocks are put on external cables to reduce the radiation from the computer box, rather than to stop noise getting in. EMC standards. :D

They shouldn't affect the signals in the USB cable ... the data signal is differential, in a twisted pair. The ferrites absorb common-mode noise.