Thread: USB3 indicator
View Single Post
  #18  
Old May 30th 14, 09:53 PM posted to alt.windows7.general
AlDrake
external usenet poster
 
Posts: 254
Default USB3 indicator

On 5/30/2014 6:47 AM, Paul wrote:
AlDrake wrote:
On 5/30/2014 3:07 AM, Paul wrote:
AlDrake wrote:
On 5/29/2014 8:10 PM, Paul wrote:
AlDrake wrote:
Can anyone shed some light on windows 7 tool that alerts connecting
to a USB3 can achieve faster access. I get this sometimes even when I
am connecting a USB3 device but win7 doesn't agree. Can this utility
be accessed to check connections? So far the only way I can tell is
viewing the speed of files being transferred.

Al.

A tool for displaying that info would be UVCView
from Microsoft. The older version used to be
relatively easy to get. The newer version required
downloading some SDK DVD and picking it out of there.
I doubt you would enjoy that utility, because the
"output isn't in English". It's a developer tool.

The scheme works something like this.

1) USB devices have a configuration space. Early in PNP,
the config space is fetched. In the space is a field
that says "my max speed is USB3" or "my max speed is USB2".

2) At the same time, the low level stuff starts negotiation.
On the USB3 connector on the back of your computer, there
are two sets of pins. If both sets of pins "touch", the
negotiation procedure notes that the USB3 set are the
fastest one. And the hardware plumbing uses those pins.

So let's review how it can fail.

1) Plug a USB3 into a USB2 plug. Config says "I'm USB3".
Negotiation leads to a USB2 connection (as only those
pins are touching on a USB2 connector on the back of
your computer). The USB2 connector only has the four pins,
not all nine pins.

The OS says "This device could go faster" if and only if
at least one USB3 connector is available on the back of
the computer, and the speed mismatch has been noted.

If the computer had only USB2 ports, and you plug in a USB3
device, there is no complaint there, because there is no
potential for improvement (by warning the user to move the
device to another port).

2) Plug a USB3 device into a USB3 plug. But, don't push it
all the way in. The USB2 pins touch. The USB3 do not touch.
We get the same result as (1), namely a claim that the
device could go faster. But the problem in this case,
is the electrical contacts. If this happens to you,
don't over-react. Jamming the thing in hard (as I did)
is a mistake. There's a reason this is happening...

3) Plug a USB3 device into a USB3 plug and seat it fully.
Now everything works, USB3 rate is negotiated which matches
the USB3 config space info. Everyone is happy, no dialog appears.

I know all about this contact problem on USB3.

1) Paul stupidly buys a USB3 key with a *plastic* barrel on it.
The USB3 port on the computer is *metal*. Paul should have
known better.
2) The engineering of the plastic was not done right. There is
improper connector capture during insertion, leading
to one of the USB3 key pins snapping off! Now instead of 9 pins,
my poor USB3 key has only 8 pins.
3) Now the device can never again run at USB3 speed.
I am doomed to always see that dialog with that USB3 key.

Moral of the story, is *buy only USB3 keys with metal barrels*.
Do not buy the plastic ones. I have opened the device in
question, and I can't even replace the connector with a
proper metal one. Because the contact pattern used in the
design, is so **** poor. I can't even remove the assembly,
because it's SMT with totally shrouded solderable mechanical
support points. Miserable *******s! I would need to grind
the ******* off. And finding a replacement miniature contact
assembly isn't going to happen - it's custom. I had to use
my magnifying glass just to see this stuff.

The operating system, by giving you that dialog, is giving
you all the hints you need. UVCView would just confirm a
few things. But if the pins aren't touching, the utility
doesn't say anything specific about that. The low level
driver does the negotiating, and I don't think there is
any log of what happened there. The dialog box is all the
proof you need that something isn't right.

HTH,
Paul

Thanks for the great breakdown Paul.

I don't have any keys. I only use drives but just now I noticed I get
the warning when I plug in my Transcend USB3 hub even with no drives
attached. Also I get faster file transfers when I move files from one
internal HDD to another. Speeds of around 130KM/sec. but I guess that
is to be expected. When I transfer files from one external Seagate to
another I get speeds of one third that. Cables supplied with drives
must be making connection as I don't get a warning, just very slow
transfer.

I'm still not sure what you mean by plastic connector. Are there any
pictures online of these?

I found this page with info on USB3 detection.
This is for Windows 8, so isn't likely to be exactly
the same on Windows 7.

http://blogs.msdn.com/b/usbcoreblog/...uperspeed.aspx



The interesting part is, there is a claim of an
updated USBView application in the WDK (Windows Driver Kit).
But it requires registration and downloading Visual Studio 2013
or something (which would also require registration). So it's
some kind of strip tease for sure. I've had cases in the past,
where a certain 25KB utility was promised in some 1GB ot 2GB
DVD download, only to find in the release notes of the
completely downloaded DVD, that the tool is not included.
And the web page announcing it was full of ****.
The developers at Microsoft, just *love* this game.
Why can't the latest USBView or UVCView just be
put on its own web page ?

Linux did a pretty good job of displaying three test cases
I set up for USB3, but I still don't believe the results.
It seems to be telling me, the USB3 stick I believe is
functioning properly, lacks proper USB3 identifiers inside.
Like the config information isn't the right type for
USB3. Linux has tools such as "hwinfo", as in "hwinfo --disk"
as well as "lsusb -v" for verbose USB output. That's where
I could see that my one good USB3 stick is missing a BOS
structure, and I don't know why that is.

Paul


I think first I need to find a hub that delivers that it's supposed
to. Maybe I'll even try another PCIe card as well.


OK, found a software gem for you.
From our good friend Uwe, the "USB guy".

I was looking for a compiled version of the Windows 8
USBView, and I had the source (it's a demo app from
Microsoft, with no readily available compiled download).

I happened to run into a page from Uwe's site, and he
took that source code, fixed it up a bit (like all developers
do), and this is the result.

http://www.uwe-sieber.de/files/usbtreeview.zip

Now I can run my three test cases, and show the results.

This is USB3 on USB3 with all pins intact.
The stick benchmarks poorly, because it's just
got a lousy flash chip in it. bsdusb reports 3.00
and speed reports "SuperSpeed".

http://i61.tinypic.com/i26qf6.gif

This is USB3 on USB3 with a broken USB3 pin.
Instead of nine pins, only eight pins are working,
and only the USB2 section is fully intact. Notice
that the bcdusb field reports 2.10, even though
if the pin was intact the device would be reporting
3.00. I have no idea why they did this, except to take
into account, which of the two interfaces were intact.
If the USB2 section was broke (and the USB3 section was
intact), I think detection would fail entirely.

http://i58.tinypic.com/25psuq0.gif

And this one is USB3 on a USB2 port. Which reports
like the previous (broken pin) case. The bcdusb
capability field reports 2.10. And the port runs at
480Mbit/sec.

http://i59.tinypic.com/t0giu9.gif

Isn't it lucky now, that I have a $60 USB key with
a broken pin on it ? :-( I could do this demo.

HTH,
Paul


Nice find Paul. Now I can see that my Seagate
+++++++++++++++++ Device Information ++++++++++++++++++
Device Description : USB Mass Storage Device
Device ID : USB\VID_0BC2&PID_3312\NA4KB7D1
Driver KeyName : {36fc9e60-c465-11cf-8056-444553540000}\0111
(GUID_DEVCLASS_USB)
Driver : C:\Windows\system32\DRIVERS\USBSTOR.SYS
(Version: 6.1.7601.17577 Date: 2006-06-21)
Driver Inf : C:\Windows\INF\usbstor.inf
Legacy BusType : PNPBus
Class : USB
Service : USBSTOR
Enumerator : USB
Location Info : Port_#0005.Hub_#0008
Container ID : {c5d05e46-5542-58be-a22e-1961f1936ef8}
Manufacturer Info : Compatible USB storage device
Capabilities : Removable, UniqueID, RawDeviceOK,
SurpriseRemovalOK
Address : 0 (*!*ERROR Should be equal to the port
number)
Problem Code : 0
Power State : D0 (supported: D0, D1, D2, D3, wake from D0,
wake from D2)
Child Device 1 : Disk drive
Device ID :
USBSTOR\DISK&VEN_SEAGATE&PROD_EXPANSION_DESK&REV_0 740\NA4KB7D1&0
Class : DiskDrive
Volume :
\\?\Volume{541d74f2-db97-11e3-b411-000a3a7c7854}\
Kernel Name : \Device\HarddiskVolume5
Mountpoint : F:\

Is showing this:
---------------- Connection Information ---------------
Connection Index : 0x01
Connection Status : 0x01 (DeviceConnected)
Current Config Value : 0x01
Device Address : 0x02
Is Hub : 0x00 (no)
Number Of Open Pipes : 0x02 (2)
Device Bus Speed : 0x02 (High-Speed)
Pipe0ScheduleOffset : 0x00 (0)
Pipe1ScheduleOffset : 0x00 (0)

For some reason..............???

Ads