Welcome, Guest. Please Login
 
  HomeHelpSearchLogin FAQ Radified Ghost.Classic Ghost.New Bootable CD Blog  
 
Page Index Toggle Pages: 1
Send Topic Print
USB Controllers and BIOS Interaction (Read 28028 times)
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
USB Controllers and BIOS Interaction
Feb 5th, 2013 at 11:37am
 
To all

I had an interesting interaction with my computer system, its USB controllers, and the function of the BIOS that I thought I would share.  There are so many things going on in the background that we are not aware of--these things effect the functionality of our systems--but, we often have no idea what's going on--where or why.....

So, this may not apply to very many out there--it's an older motherboard--the system was built about 2002 or 2003.  It has 2 USB 2.0 controller chips--one is the Intel built into the north/south bridge chip set that creates 6 USB 2.0 ports.  And there's an added chip installed on the motherboard by NEC--that creates an additional 4 USB 2.0 ports.

Two of the Intel ports are *hard wired* on the back of the I/O panel of the motherboard--the rest are accessed by attaching connecting wires from peripheral ports to header connectors on the motherboard--each header will allow for 2 USB ports--so one header goes to the 2 case USB ports on the front panel.  And, the motherboard came with two rear slot adaptors that go in empty add-on slot openings on the back.  So, I have plugged the wires from those slot adaptors to the 3 other available headers to create an additional 6 USB ports on the back.

So, enter the first *issue*--the documentation for the motherboard does not identify which controller chip is connected to which header--so it's impossible to tell which USB port is going to which controller.  Why is this important?  Well, at least on this older system, if you want to play around with booting your system from a USB device--flash drive or HDD--you can only do that from the USB controller that is integrated into the north/south chip set--i.e. the Intel USB controller.  The NEC controller is ignored as a possible boot device source.

And, an additional problem--if you hook up more than one USB device to the north/south bridge chip-set that could possibly be a boot source--again on this older system--the boot device that is hooked up to the first seen port will be considered the boot device--and any other device will be ignored--and/or you will possibly get a system that *freezes* when attempting to boot from a USB device--the system's BIOS doesn't like to manage more than one USB boot device!

So, what does the above paragraph mean?   If you have two flash drives hooked up to the Intel north/south bridge chip set--that may create a problem (I sometimes keep a flash drive hooked up that really isn't meant to be a boot device--just a storage device to transfer files between computers--if I then add an additional flash drive specifically as a boot device--things might not go well if the two devices are in the wrong order as to which port is being used for each).

Also, if I have my USB flashcard reader hooked up--with a memory card in the reader--if it is on a port seen before the flash drive that I am attempting to boot from--there often is a *freeze* of the system.

So the bottom line--which port is seen first for the north/south bridge chip set by Intel makes a difference as to success or failure to boot from a USB device.  And, again, just like there is no documentation as to which header is to which controller--there is no documentation as to what the port sequence is, even if you figure out which header goes to which USB controller.

So, enter the next piece of hardware--I have a USB 2.0 add-on card, a Adaptec DuoConnect card.  It has 3 USB ports on the card's slot side, and two fire wire outlets (that's the *Duo* part of the card).  I had been using that card on another older system that only came with USB 1.1 controllers--so to have USB 2.0, I installed this card on that system.

Adaptec created a nice USB mapping software program called *USBControl* that will show the USB connections with a nice visual display.  The downside, the software will only work if you have a very limited set of Adaptec USB hardware attached to the system.  The above USB controller and/or several different USB hub devices.  I also invested in one of the Adaptec USB hub devices.  I have found that the older versions of the USBControl will detect and work if the hub is connected without the DuoConnect add-on card present.  But the newer versions of the USBControl program seem to work only if the add-on card is installed--and will not work if just the hub is connected.  I have not figured out why that is so--at least not yet.

So, this is the setup *teaser*--I installed that Adaptec USB 2.0 controller add-on card on this older system so I could use the USBControl software to map the USB controllers, map how many ports are present (note, I have discovered that there are more ports present than what can be actually accessed), and to map which USB port each port is assigned--so what the sequence of port assignments are for each port.

So, more to come later--


 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 

NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #1 - Feb 8th, 2013 at 12:02pm
 
To all

So, to continue.....

At the end of this post is a screenshot of the Adaptec USBControl Utility.  You can click on each component that is listed, and there will be a description of the item such as the item's name (if it's included in the items internal ID), the manufacturer, etc..  And the display shows the connections starting at the USB controller, to the device...or if a Hub is being used, it shows the Hub and then the next device... or another Hub if it's being used.  And it shows the port number of all the possible connections.

Here's a link to the USBConotrol program from a search at the Adaptec site:  http://www.adaptec.com/en-us/search.html?q=usbcontrol

If you check some of the links, you will find which Adaptec hardware is required for the Utility to work.  If the hardware is not found, you get an error message saying no qualifying hardware was found, and the Utility will not load.  If you really would like to use this utility, you could try to find the qualifying hardware on Ebay as used equipment so you could attach it to your system.

One of the links takes you to a download page where you can get the various versions.

Does anyone know of a similar USB utility that will map out the interconnections of the various USB devices on one's system?

It's too bad Adaptec made this software hard-linked to specific Adaptec USB hardware being attached to one's system before it will work.  And it's too bad they have not continued to develop the program because it appears to not function correctly on newer hardware.  Being as they are no longer producing the USB hardware that it is locked to, and they no longer are developing the software--it would have been nice if they would have *unlocked* the software for general public use--probably only on older systems.
 

USBControl2.JPG (67 KB | 926 )
USBControl2.JPG

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #2 - Feb 12th, 2013 at 10:01am
 
To all

NightOwl wrote on Feb 8th, 2013 at 12:02pm:
Does anyone know of a similar USB utility that will map out the interconnections of the various USB devices on one's system?

Nobody?! 

Really, no one has ever tried to trouble shoot their USB setup, and needed to know which USB port went to which USB controller?

I'm amazed at how little is available to trace what the *inner workings* are going on with the USB ports and the controllers of a system--mostly kind of a *black box*!  Either it works or it doesn't, and there's no easy way to figure out the what, where, why......

I've come across a couple things that may be helpful.  I'm testing the software to see if if gives me the information I'm looking for in a fashion I (a layman--not a computer hardware engineer!) can understand.

More later....
 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #3 - Feb 22nd, 2013 at 11:41am
 
To All

I'm back......

So, again the setup....there's the built-in north/south Intel chipset that allows for up to 6 USB 2.0 ports, and there is a second NEC USB 2.0 chip on the motherboard that creates up to 4 additional USB ports, and I have installed an Adaptec DuoConnect add-on card with three additional USB 2.0 ports so I can run the Adaptec USBControl program to trace the connections between the USB controllers, hubs and ports.

I wanted to do some testing of booting from USB devices--flash drives and USB HDDs--so that's why I wanted to know which USB port went to what controller--and what the sequence of first seen port by each controller was--I wanted to control the various possible variables that might occur if I plugged different devices into different ports.  I was already aware that certain ports allowed for successful booting and others did not--but, I didn't really know *why*!  And, that's what I was trying to sort out.

So, in Windows, if you go to Device Manager under *Universal Serial Bus controllers*, you can find the various USB devices listed--but it's mostly a useless listing!  You really can't tell which device goes with which other device or what the interconnecting pathways are.

But, I noticed that there were two *identical* USB controllers listed--*NEC PCI to USB Enhanced Host Controller (B1)*, and they both had the same PCI\VIN if you looked under the *Details* tab in the *Properties* listing which was *PCI\VIN_1033....* (I think *VIN* is *Vendor Identification Number*--but I'm not positive of that)--but, I did find that *1033* was for NEC (and by the way, NEC is now *Renesas Electronics*--this change happened in the last couple years--mergers or something--and the same *VIN* is now for *Renesas* as well as NEC).  (And, by the way, the Intel PCI\VIN is *PCI\VIN_8086....* .)

So, I knew I had three USB controllers--the Intel chipset, the on board NEC USB chip, and the Adaptec USB card.  It appeared that the Adaptec USB card was using an identical NEC USB chip as the motherboard.  I was able to confirm this by opening up the case and looking at the NEC chip on the motherboard and the chip on the Adaptec card was also a NEC chip with an identical number.  Both the motherboard and the Adaptec were manufactured in about the same time period--around 2001-2003, so it was not too surprising that they might have the same USB controller chip.

Well, to do my USB DOS boot testing, I wanted to know which NEC chip was the motherboard chip and which was the Adaptec chip--again part of the reason for wanting to use the Adaptec USBControl program to map the USB interconnections.  And, I wanted to know which of the two listings in Device Manager was for which chip.

In Device Manager, under the General tab of the Properties there is some information as to the manufacturer, device type, and its location--the location is given as *PCI Slot # (PCI bus #, device #, function #)*--this location information was unique to each of the NEC USB chips--but, still didn't identify which chip as which....

I was aware that there was a BIOS setting that allowed for one to enable/disable the *on board* peripheral devices of the motherboard--one of which was the NEC USB chip.  My thought process was *okay, I'll just boot to the BIOS, and disable the on board NEC chip, and then check to see what's still listed in the Windows Device Manager* (I bet you have been wondering when the BIOS was going to appear in this long winded post--so finally here it is!).

Went to the BIOS setup utility during POST, and to the peripheral device section and found the Intel USB chip enable/disable option--but the option to enable/disable the NEC USB chip was missing!  The motherboard user guide showed it as being listed just below the Intel option.  But, not there!  The motherboard user guide was created when the motherboard first came to market and the BIOS version number shown on the guide's pictures was a low number--and I had updated the motherboard's BIOS several times to the most recent firmware version--so I thought--maybe for some reason they removed that option.  Well, it's not there and nothing I can do about it.

So, back to the drawing board......(I will continue in the next post).....

 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #4 - Mar 4th, 2013 at 1:36am
 
To all

NightOwl wrote on Feb 22nd, 2013 at 11:41am:
In Device Manager, under the General tab of the Properties there is some information as to the manufacturer, device type, and its location--the location is given as *PCI Slot # (PCI bus #, device #, function #)*--this location information was unique to each of the NEC USB chips--but, still didn't identify which chip as which....

Back to the *Details* tab in the *Properties* listing in Device Manager--after the *PCI\VIN_1033....*, for each of the *NEC PCI to USB Enhanced Host Controller (B1)*, there was a *DEV_xxxxxSUBSYS_xxxxxx*.  These numbers where unique to each of the NEC chips as well, but still did not identify which NEC chip was from the motherboard and which was from the Adaptec add-on card.

So, I decided to remove the Adaptec add-on card to see which of the two listings in Device Manager disappeared.  (Thinking back now, I probably could have used the feature in Device Manager under the *General* tab at the bottom where you can use the *Device usage:* drop down box to *enable* or *disable* that given device--and then tested to see which USB ports where still active--but, that didn't occur to me at the time.)

So, looking at the *PCI Slot # (PCI bus #, device #, function #)* in Device Manager I now knew which NEC chip was the motherboard chip.  But, the *DEV_xxxxxSUBSYS_xxxxxx* changed!  It now was the same numbers as the Intel's *DEV_xxxxxSUBSYS_xxxxxx* numbers!  At this point, I don't know what those numbers represent--they are apparently not numbers specific to a given device or its location.  But, they apparently change depending on what's hooked up to the system.  And why would the on board NEC chip now match the Intel's numbers after removing the Adaptec's NEC USB chip--don't know!

So, I was going to test the various BIOS settings for the Intel USB chip--it allows for enabling 6 ports, 4 posts, 2 ports or disabled--again testing to see which ports where controlled by what BIOS setting.  Well, low and behold what did I find--the motherboard NEC USB chip was again listed in the BIOS for enabling/disabling!

Apparently, whatever method is used to enable/disable those NEC USB chips must effect both the on board chip as well as the add-on card chip--so the BIOS is designed to remove that functionality if it sees two *identical* chips.

As I said at the beginning, it's interesting to see what effect different configurations have on the behavior of the the BIOS.  It was also interesting to see that the system identification numbers changed in Device Manager depending on whether there was that extra NEC chip present or not.

I will post some information I have come across for trying to map current system's USB controllers and device interconnections that I have found in my next post.

 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
Christer
Übermensch
*****
Offline



Posts: 1360
Sweden


Back to top
Re: USB Controllers and BIOS Interaction
Reply #5 - Mar 4th, 2013 at 10:33am
 
Hi NightOwl!

Just to let you know that I'm reading your posts with interest but have nothing to contribute. I have actually wondered how the BIOS reads the SATA ports to display them in such a "random" order at bootup. Maybe that's only Gigabyte ... Undecided ... ?

(Rhetorical question, not hijacking your thread!)
 

Old chinese proverb:
If I hear - I forget, If I see - I remember, If I do - I understand
 
IP Logged
 

NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #6 - Mar 5th, 2013 at 12:20pm
 
@
Christer

Quote:
(Rhetorical question, not hijacking your thread!)

Not to worry--it's a little different topic, but of a similar nature!

Quote:
I have actually wondered how the BIOS reads the SATA ports to display them in such a "random" order at bootup. Maybe that's only Gigabyte

I understand completely--I too have a newer Gigabyte system--I think we built our systems about the same time--mine is the following:

GA-P55A-UD4P (rev. 1.0)

What is your model?

The BIOS shows a possible 13 IDE Channel connections--but the BIOS list does not specify which ones are the SATA ports (6-SATA2, 2-SATA3, 2-eSATA) and/or 2 PATA devices--and those add up to 12 and not 13 possible devices!  And the channel numbering skips channels 5 and 8

If you look at the motherboard user guide, the ports on the motherboard are identified and numbered--and there are a possible 12 devices that can be hooked up--but they do not correspond to the channel numbering in the BIOS.  And there is no 13th hookup for a 13th device. 

And during the POST, 2 of the channels listed in the BIOS do not show up in the list of possible devices and channels in the POST screen--so that screen is down to only 11 possible channels.

So....what does that all mean ......   Shocked

I plan on mapping which motherboard port goes to which POST channel and BIOS listing--if you want to start another thread and explore the possibilities, that would be fine with me.

 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
Christer
Übermensch
*****
Offline



Posts: 1360
Sweden


Back to top
Re: USB Controllers and BIOS Interaction
Reply #7 - Mar 6th, 2013 at 1:57am
 
NightOwl,
thanks for your immediate response and interest!

My model is the GA-870A-UD3 (rev. 2.1) which was built in late 2010. A few months earlier, I built a system for a friend based on the Gigabyte GA-P55A-UD4 but have no information on which revision.

I remember that, in both cases, hooking up the devices to the physical ports SATA_1 (master HDD), SATA_2 (mobile rack for removable HDDs) and SATA_3 (DVD-ROM) on the board did not result in a corresponding list during bootup.

Quote:
And there is no 13th hookup for a 13th device.

Isn't that the middle connector on the IDE-cable?

Quote:
I plan on mapping which motherboard port goes to which POST channel and BIOS listing--if you want to start another thread and explore the possibilities, that would be fine with me.


Let's put the SATA-issue on hold until the USB-issue has been explored.
 

Old chinese proverb:
If I hear - I forget, If I see - I remember, If I do - I understand
 
IP Logged
 
Brian
Demigod
******
Offline



Posts: 6345
NSW, Australia


Back to top
Re: USB Controllers and BIOS Interaction
Reply #8 - Mar 6th, 2013 at 2:48am
 
A little boasting. My new computer has 6 USB 3.0 ports and 10 USB 2.0 ports. The MB has room for another 2 USB 2.0 ports.
 
 
IP Logged
 
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #9 - Mar 6th, 2013 at 10:51am
 
@
Brian

Quote:
My new computer has 6 USB 3.0 ports and 10 USB 2.0 ports. The MB has room for another 2 USB 2.0 ports.

In the *spirit* of this topic, what model motherboard to you have?

Intel or AMD based north/south chip set?

Is there more than 1 chip responsible for providing USB ports--or are they all from the north/south bridge chip set on the motherboard?

Are the additional *2 USB 2.00 ports* available from a USB header on the motherboard that are for hooking up to a front side case USB port?

Have you figured out which USB controller(s) goes to which USB port and in which order the ports are *seen* by the controller(s)?

 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #10 - Mar 6th, 2013 at 11:04am
 
@
Christer

Christer wrote on Mar 6th, 2013 at 1:57am:
Let's put the SATA-issue on hold until the USB-issue has been explored. 

I have already started a new topic thread here:  SATA HDD Ports, BIOS, and POST Info Mismatch

I'm in no hurry as far as getting the exploration of the issue done--so you shouldn't feel compelled to do so either.  I will have to open the case and trace all the SATA communication cables (I thought I had recorded that--but can not find it--buried in some obscure, forgotten notepad somewhere I'm sure!).

I'm also waiting for an *eSATA* to SATA hookup cable that I've ordered, so I can attach one of my spare SATA HDDs through the eSATA ports on the back I/O panel to see where those show up in the BIOS and POST listing of HDDs.

So, it will be a while before I continue with additional post to that thread.

 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 

Brian
Demigod
******
Offline



Posts: 6345
NSW, Australia


Back to top
Re: USB Controllers and BIOS Interaction
Reply #11 - Mar 6th, 2013 at 1:19pm
 
@
NightOwl

It's an Asus Z77 Sabretooth MB.

http://www.asus.com.au/Motherboards/Intel_Socket_1155/SABERTOOTH_Z77/

Intel® Z77 chipset :
4 x USB 3.0 port(s) (2 at back panel, blue, 2 at mid-board)
ASMedia® ASM1042 controller :
2 x USB 3.0 port(s) (2 at back panel, blue)
Intel® Z77 chipset :
10 x USB 2.0 port(s) (4 at back panel, black, 6 at mid-board)

NightOwl wrote on Mar 6th, 2013 at 10:51am:
Are the additional *2 USB 2.00 ports* available from a USB header on the motherboard that are for hooking up to a front side case USB port?


There are three USB 2.0 headers on the MB. My mistake, I'm using all three.

NightOwl wrote on Mar 6th, 2013 at 10:51am:
and in which order the ports are *seen* by the controller(s)?


No idea.
 
 
IP Logged
 
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #12 - Mar 14th, 2013 at 11:06am
 
@
Brian

Brian wrote on Mar 6th, 2013 at 1:19pm:
Quote:
NightOwl wrote on Mar 6th, 2013 at 8:51am:

Quote:
and in which order the ports are *seen* by the controller(s)?

No idea. 

Nice lead-in to my ongoing discussion here!

That's exactly right--most of us have no idea which USB port on our system goes to which controller--and which port is *seen* first by each controller, and what the order is of all the ports going to a given controller!

And, often times, it probably doesn't matter to most of us!  That's *okay*--USB just works!

But, when I was doing some testing of USB flashdrives and HDDs for booting from them into DOS to do various Ghost backups--it became *important* to know this information, especially on my older system where the BIOS only has rudimentary support for booting from a USB storage device.  Success or failure to boot depended on which USB port was used--one had to hook up to a USB port from the Intel north/south chipset--hooking up to a USB port from the additional NEC USB controller that was hardwired on the system would fail--as would hooking up to the add-on Adaptec USB PCI card.  The BIOS on this system will recognize only the north/south USB controller for booting to DOS!

And, in some cases, if another device (in particular--the USB card reader for various flavors of memory cards) was hooked up to a USB port seen before the USB device being tested for booting to DOS--this could often result in a *hung* system that stops, and needed to be power cycled to regain control.

So, the USBControl software from Adaptec allowed me to map the USB devices on my older system just fine, and quickly.  But, back in my reply #2 I said:

NightOwl wrote on Feb 8th, 2013 at 12:02pm:
Does anyone know of a similar USB utility that will map out the interconnections of the various USB devices on one's system?

It's too bad Adaptec made this software hard-linked to specific Adaptec USB hardware being attached to one's system before it will work.  And it's too bad they have not continued to develop the program because it appears to not function correctly on newer hardware. 

And, of course, I can still hear the crickets in the distance--the silence is deafening!  At the end of this post is a screen shot showing how USBControl works on my new system that uses an i7 Intel CPU, and the P55 north/south chipset.  It's not working well!

(I have my 4 port Adaptec USB Hub hooked up that allows the USBControl program to see a qualifying Adaptec product hooked up to the system so the program loads!)

There are two components to the USBControl program--the small rectangular box (it shows the individual components hooked up to the system in a vertical list--and that box is actually showing most of the USB devices that are hooked up to the system--however not exactly correctly!)--I have moved that small box onto the larger rectangular box which shows the whole USB tree--so both are in the same screen shot.

I clicked on the top listed item in the small box--it is the HP Printer that is correctly identified.  It is hooked up to controller *B*, and is on the second port.  But on the USB tree in the larger box--all ports are showing as having *nothing* hooked up--and all ports are *available*.  The USB controllers *B* and *C* are the Intel P55 controllers--they are both USB 2.0 controllers--and they should have a small number *2* like seen next to the mouse in the small box.  And, controller *B* actually only has 8 ports and not 12!  And controller *C* actually only has 6 ports and not 13!

USB controller *A* is the Renesas (formerly NEC) Electronics USB 3.0 Host Controller.  USBControl is reporting the correct number of ports for that controller--but, obviously being as the software is over 10 years old now--it has no programing that allows it to understand that it is a USB 3.0 controller--USB 3.0 was only on the drawing board back then, and not implemented.

So, obviously USBControl is of no value on a newer system.  Apparently, the new P55 Intel chipset for i3, i7, and newer CPUs is a radical change from previous USB controllers--and that older Adaptec program can not properly interpret the USB device listing and implementation by the P55 USB controllers.

So, my previous statement in reply #4:

NightOwl wrote on Mar 4th, 2013 at 1:36am:
I will post some information I have come across for trying to map current system's USB controllers and device interconnections that I have found in my next post

Okay, so it wasn't exactly in my *next post*  Wink  --but, here it comes.....in my *next post*  Cheesy !



 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #13 - Mar 15th, 2013 at 11:15am
 
To All

So, my first Google search was map usb connections .

The top listing, Map and troubleshoot your USB ports with Microsoft USB View , was a great starting point.  Although the main purpose of the author was to find something that would run on a Win7 system--the issue of *mapping* the USB ports was exactly what I was wanting to do also!

In reading the article, it turns out that Microsoft had a program on its Windows 98 Resource Kit utility called USB Viewer.  The author searched to see if there was a newer version than the Win98 version that was probably of 1998 vintage.  He found a newer version called USBView that the author states has been updated for the WinXP era. 

The author indicated that he could only find an *uncompiled C++* version of the program USBView sample application .  Looking at that link, the program was last updated on 10/26/2012, and requires *Visual Studio 2012* in order to use this *sample C++* coded program.  Upon further searching, I found that this *sample application* that requires *Visual Studio 2012* probably comes from Windows Driver Kit (WDK) 8 which apparently now requires Visual Studio Professional 2012 to use.  But, a little reading and it turns out that the *Windows Driver Kit (WDK) 8* applies to Win8 and all other versions *except WinXP*!

Quote:
Use this latest version of the WDK to develop drivers for Windows 8 and all versions of Windows, except Windows XP.  Use the WDK Version 7.1.0 to develop drivers for Windows XP.


So, I'm not sure if the link above to the *USBView sample application* is really applicable to WinXP or not!  I have found these links:  Tools Related to Debugging Tools for Windows (Windows Debuggers) .  Clicking on the *USBView* link takes you to USBView (Windows Debuggers) .  Quoting:

Quote:
USBView (Universal Serial Bus Viewer, Usbview.exe) is a Windows graphical user interface application that enables you to browse all USB controllers and connected USB devices on your computer. USBView works on all versions of Windows.

USBView is included in the Windows Driver Kit (WDK). You can find information about how to download and install the WDK here .

However, it's unclear if USBView can be found on any version of Windows Driver Kit (WDK), or only on certain versions.  I have not attempted to download and look for USBView on either version 8 or 7.10 of Windows Driver Kit (WDK)--I think that may be one pay scale above my current status  Wink !  My personal *best guess* is that USBView as a standalone *.exe* program, is available on both versions of Windows Driver Kit (WDK), and the *USBView sample application* is C++ coding that can be incorporated into the version 8.xx that uses the  *Visual Studio 2012* programming.

But, all this is *fluff*!  The author searched and found a source of a *compiled* version of USBView--it's here:  USB Utilities Downloads.  It's about halfway down the page--click here to download.

The program does not have to be *installed*--just run the *.exe* file after you extract it from the zip file. 

It works!  Well, at least on my system  Wink !  Your mileage may vary--of course!

More to come in my next post.....


 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
NightOwl
Radministrator
*****
Offline


"I tought I saw a puddy
tat..."

Posts: 5826
Olympia, WA--Puget Sound--USA


Back to top
Re: USB Controllers and BIOS Interaction
Reply #14 - Mar 25th, 2013 at 12:43am
 
To All

Quote:
It works!

Well, sort of.....at the end of this post is a screen shot showing how Microsolf's *USBView* from the previous post's link to FTDI's Utilities page displays one's USB layout.....

So, you see two panes--left side and right side.  The left side has the USB *tree view* of how your USB devices are hooked up and laid out.  And the right side has details about a given device as highlighted in the left side.  So, the *tree view* is not quite as *graphical* as the Adaptec USBControl view of the USB interconnections--but, it's functional......

I have collapsed one of the Universal USB controllers and the two USB 2.0 Hubs in the left side tree view in order to shorten the tree and get all the controllers to show up in one screen shot of my newest system:  GA-P55A-UD4P (rev. 1.0)

Let me go over some of the information you can gather:

I have circled the terms *Universal* and *Enhanced* controllers--Universal is for support of legacy USB 1.00 and and USB 1.10 devices which gives *low* and *full* USB speeds respectively.  Enhanced is for USB 2.0 devices--which is *high* speed.

If you count, you will find 7 Universal Controllers listed--and each Universal Controller controls two ports--so a total of 14 ports--which is how many USB ports the system has.

But, you will only find 2 Enhanced Controllers--but one has 8 ports and the other has 6 ports--so again a total of 14 USB ports.

In the left side tree, each of the ports has a *Loc* listed--I assume this is short for *Location*--the first number is the Controller number and the second number is the port number on that controller.  As mentioned above, I collapsed the Universal Controller #3, so you will not see it's two ports listed and the *Loc* is not displayed in this screen shot.

In the right pane--the top circled item--the *bcdUSB*--appears to report what version of USB the device reports itself to be.  The reason I say it in that fashion is because certain devices on my system report themselves to be USB v2.00 devices, but they can only operate at version 1.00 or 1.10 bus speeds--so they are really not actually USB 2.0 devices in terms of how they function!

Further down, the *iProduct:* reports the products name that's embedded in the device that's hooked up.

And below that I have highlighted the *Device Bus Speed:* which shows the actual communication speed that the device is operating at.

Back to the left pane--down at the bottom is the *Renesas Electronics USB 3.0 Host Controller*--this is the *NEC* USB 3.0 chip that is embedded on the motherboard.  Notice it does not get a number assigned to it for the first *controller* number like the *Universal* and *Enhanced* controllers do.  That's why I said at the beginning that USBView *sort of* works!  I have to suspect that this version of USBView may be an older version that does not fully recognize USB 3.0 controllers.  I'm going to have to explore that a little bit more to see if that's true.

So, it's easy enough--get a USB 2.0 device and plug it in to the various physical ports and see which port it's listed on under the two *Enhanced* controllers and you will have the outline of the controller/port interconnections.  Then take a USB 1.00 or 1.10 device and do the same thing and you will then know which *Universal* controller is associated with which *Enhanced* controller port and visa versa.  The two types of controller *Enhanced* or *Universal* are sort of *virtual* controllers in that they both are connected to the same physical port and are waiting to take over once a USB device is hooked up--but which one takes control depends on whether it's a USB 2.00 or USB 1.x device.

More to come later.....
 

____________________________________________________________________________________________

No question is stupid ... but, possibly the answers are Wink !
 
IP Logged
 
Page Index Toggle Pages: 1
Send Topic Print