1

Environment: Pi 4, 2gig, Buster, updated.

We have a USB 3 WiFi adapter (blue plug), which is plugged into one of the blue USB3 slots. The device vid/pid is: 0bda:b812, Realtek. Rated 867Mbps for the 5 GHz band.

$ lsusb -t 

shows the following output:

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 2: Dev 3, If 0, Class=Vendor Specific Class, Driver=rtl88x2bu, 480M
        |__ Port 3: Dev 4, If 0, Class=Hub, Driver=hub/3p, 12M
            |__ Port 1: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
            |__ Port 2: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M

If I'm reading this correctly, it's saying that the WiFi adapter, Device 3, is on Bus 01, and that its speed is limited to 480M. It also seems to say that nothing is connected to Bus 02, which is the super-speed USB3 bus. The problem is that the WiFi adapter is only functioning at a fraction of its stated speed, and while I can't be sure this is the problem, it doesn't make sense to me that this device, which is definitely plugged into a USB3 slot is showing up on what appears to me to be the USB2 bus.

I've tried swapping the device between the two blue 3.0 slots, and while the device number changes, it still shows up on Bus 01.

I've also tried completely disconnecting the low-speed devices (keyboard/mouse) from the USB2 slot, to see if they were causing some kind of misdirection, but that didn't seem to help either.

If I plug the WiFi adapter into a USB2 slot, it gets a new device number, but still shows up as being on Bus 01, Port 1, with a limit of 480M.

If I type the following:

$ dmesg -w

then unplug and re-plug the device, it shows:

usb 1-1.4: USB disconnect, device number 12
usb 1-1.1: new high-speed USB device number 13 using xhci_hcd
...

followed by other vendor-specific info that looks right. The key part being that it looks like it recognizes the device as "high-speed", not "super-speed".

How can I get this adapter on the USB3 bus? Or is it already, and I'm not understanding this output? The device is not running at the advertised speed.

  • see links in askubuntu.com/questions/1082824/… - not sure if it's relevant to RPi though - but the links link to source code – Jaromanda X May 25 at 0:30
  • @JaromandaX, thanks for the link, but I have the "official" source code straight from the seller/dev of the product. It compiled on the Pi itself, and installed fine as far as I can tell. So at this point they're basically saying it works. But I'm not getting acceptable/advertised (867MHz) speeds. In my digging I found that it looks like it's on the slower USB bus, which is suspicious to me, but I'm pushing the limits of my linux knowledge at this point. – peter.rando May 25 at 2:58
  • @everyone; did I hose myself by editing this question in place and having it re-opened, rather than leaving it closed and posting the new, correctly explained, question? Initially, there were several comments right away, which implied to me there was some interest, but after the re-open, nothing. Someone, somewhere, must know how USB device speeds get registered. – peter.rando May 26 at 6:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.