I recently found out about the lsusb command while troubleshooting a headset issue..
My laptop runs debian and doesn’t have anything plugged into USB currently, but when I run the “lsusb” command, I still get quite a bit of output:
<a href="https://getridbug.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="74061b1b003400414444">[email protected]</a>:~# lsusb Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 003: ID 0a5c:2145 Broadcom Corp. Bluetooth with Enhanced Data Rate II Bus 004 Device 002: ID 08ff:2810 AuthenTec, Inc. AES2810 Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 002: ID 0781:b6d0 SanDisk Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Could someone break down what this means in more detail?
The SanDisk card is connected via PCMCIA, not USB. Are both PC cards and USB devices listed in lsusb?
I don’t have any external bluetooth connected, why would this display?
Why are some root hubs 1.1, and some 2.0? Does that mean some of my USB ports are 2.0 and others aren’t?
What is a root hub exactly, just an empty USB port?
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
The “root hub” is a phony device and represents the bus itself. It always has a device number of 1 on whatever bus it sits on. The “manufacturer” is always 1d6b, the “Linux Foundation,” but so far as I can tell, that’s merely to create a “root” for the tree’s “branches” (as you’ll see from lsusb -t, as suggested by Wagner). The nature of the bus (version 1.1, 2.0, 3.0) is reflected is the device ID (0001, 0002, 0003).
(A subtle point — there actually is a “USB Host Controller” that is a physical device — but it’s NOT itself a USB device! It’s normally a PCI device. For instance, on my machine I have two USB buses, and two USB Host Controllers visible by the lspci command. They’re made by Intel, not the Linux Foundation. A “USB root hub” represents the physical PCI device. I believe that the whole “Linux Foundation” thing came about because the physical device has PCI, not USB, identifiers. http://www.usblyzer.com/usb-topology.htm)
The SanDisk device might present itself to the outside world as a PCMCIA slot (I’m guessing) but internally it’s connected to USB Bus 001. (Again, it’s labeled as Device 002 because the bus itself is Device 001.)
Similarly, the Bluetooth device is internal (as strugee noted) and again is connected to a USB bus, in this case Bus 004, which is a USB 1.1 (low-speed) bus. That makes sense, since Bluetooth is relatively low speed. On the same bus is the AuthenTec device, which is a fingerprint scanner, again low-speed.
So this output indicates that you have eight (!) built-in USB buses, with three devices connected to them. And you have two high-speed USB buses and six low-speed ones. Some or all of these might have external ports for plugging in various USB external devices. You can try plugging in a device and running lsusb again to see which port is connected to which bus.
A USB hub is a device that has one cord that plugs into one USB port, but provides multiple USB ports for you to plug devices into. It’s essentially a USB multiplexer.
A root hub, AFAIK, is a USB hub that’s internal. For example, there might ony be one USB slot in your motherboard, but there are multiple external ports because there’s an internal root hub plugged into the motherboard. (This is simplified, of course. I’m not an expert in hardware.)
The Bluetooth device is the chip inside your computer that actually broadcasts Bluetooth radio traffic. Probably, it’s wired through a USB port inside the computer’s case.
With regards to the display of “Linux Foundation”, my guess is that that’s where the drivers come from. But I’m not sure.
Dump the physical USB device hierarchy as a tree