VirtualBox

Ticket #15764 (closed defect: fixed)

Opened 10 months ago

Last modified 8 months ago

Unknown device (USB pass through) => fixed in SVN/5.1.x

Reported by: JsT Owned by:
Priority: major Component: USB
Version: VirtualBox 5.1.2 Keywords: USB Pass through Unknown device
Cc: Guest type: Windows
Host type: Linux

Description

I have reported bug #15644 which was partially fixed. Please take a look there for all reported info and logs.

The problem is that the affected by the bug USB devices (from #15644) are now visible, but still without showing their full name and thus the Windows OS thinks that those devices are new.

For example the device 0658:0200 Sigma Designs, Inc. was recognized as 0058:0000 (lost high byte) now is correctly shown as 0658:0200, but the name "Sigma Designs, Inc." is still shown as "Unknown device".

Attachments

usb_ids.png Download (50.2 KB) - added by JsT 9 months ago.
Unknown devices

Change History

comment:1 Changed 10 months ago by frank

The device 0658:0200 is just not (yet) known by the internal USB database. VirtualBox uses the information from  http://www.linux-usb.org/usb.ids to determine the name for unknown devices. So I guess that device is also unknown to your Linux host?

comment:2 Changed 10 months ago by JsT

No, in VirtualBox version 5.0.24 this device is properly recognized: both ids and name.

When you add or edit new USB Filter you see under the "Name" field: "Sigma Designs, Inc." So, this name is available both in USB Filter settings and when you run the VM with live list of available for grabbing from Linux host side.

In general the name "Sigma Designs, Inc." was always available everywhere: in dmsg, lsusb, VM filters and so.

However after VB 5.1.x this became Unknown device.

The important side effect from this is the fact, that after next reboot of the Guest (Windows 10) system, the Windows recognized the device as new and assigned a new COM port, which never happen before. I guess the Windows also suffers from this bug in one way or another.

P.S. Let me know if you need more debug info.

comment:3 Changed 10 months ago by JsT

When you try usbhost on the Host (Linux), currently (in VB 5.1.2) you don't get a "Product:" field.

$ VBoxManage list -l usbhost |grep -A6 -B3 0200

UUID:               5dc6a319-0b52-43fc-b1ec-196a4fa422cc
VendorId:           0x0658 (0658)
ProductId:          0x0200 (0200)
Revision:           0.0 (0000)
Port:               4
USB version/speed:  2/Full
Address:            sysfs:/sys/devices/pci0000:00/0000:00:14.0/usb1/1-5//device:/dev/vboxusb/001/019
Current State:      Captured

I guess the missing "Product:" is the reason for current "Unknown device 0658:0200".

Also in my list (USB filters -> Add) I see another two devices that are "Unknown": Unknown device 8087:07DC [0001] Unknown device 138A:0010 [0078]

All those were also listed with their names properly in VB 5.0.24 as far as I remember.

Last edited 9 months ago by JsT (previous) (diff)

comment:4 Changed 9 months ago by JsT

I tried today, testing on the older VB 5.0.24, just to be 100% sure:

$ VBoxManage list -l usbhost
Host USB Devices:

UUID:               53433a82-45dc-4461-9cd6-a114ec44c615
VendorId:           0x0658 (0658)
ProductId:          0x0200 (0200)
Revision:           0.0 (0000)
Port:               2
USB version/speed:  2/Full
Manufacturer:       Sigma Designs, Inc.
Address:            sysfs:/sys/devices/pci0000:00/0000:00:14.0/usb3/3-3//device:/dev/vboxusb/003/010
Current State:      Available

So, rather the missing filed is probably "Manufacturer".

And YES, the name of the device is not "Unknown device", but it is "Sigma Designs, Inc.".

Basically that means there is degradation between 5.0.24 and 5.1.x

comment:5 Changed 9 months ago by aeichner

Can you please post the output of lsusb -vvv for the particular device?

comment:6 Changed 9 months ago by JsT

$ lsusb -d 0658:0200 -vvv

Bus 001 Device 014: ID 0658:0200 Sigma Designs, Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            2 Communications
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0658 Sigma Designs, Inc.
  idProduct          0x0200 
  bcdDevice            0.00
  iManufacturer           0 
  iProduct                0 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           67
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      2 Abstract (modem)
      bInterfaceProtocol      1 AT-commands (v.25ter)
      iInterface              0 
      CDC Header:
        bcdCDC               1.10
      CDC Call Management:
        bmCapabilities       0x00
        bDataInterface          1
      CDC ACM:
        bmCapabilities       0x00
      CDC Union:
        bMasterInterface        0
        bSlaveInterface         1 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              32
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               0
can't get device qualifier: Resource temporarily unavailable
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0000
  (Bus Powered)

Changed 9 months ago by JsT

Unknown devices

comment:7 Changed 9 months ago by JsT

As I said before, the "Sigma Designs, Inc." is just an example. From the attached image you can see that I have two more devices with "Unknown" status.

Sure, in case of Sigma and the list mentioned at  http://www.linux-usb.org/usb.ids , indeed the product (0200) is not listed, BUT the Manufacture (0658) is known, so it is better to have "Sigma Designs, Inc." listed there (as it was in VB 5.0.24) instead of "Unknown device".

However the logic of using only usb.ids is not even true, for case with the "Unknown device" 138A:0010. According to  http://www.linux-usb.org/usb.ids that device is:

138a  Validity Sensors, Inc.
      0010  VFS Fingerprint sensor

But instead it is still listed as "Unknown device"!

Here is the lsusb for that device too:

$ lsusb -d 138A:0010 -vvv

Bus 001 Device 007: ID 138a:0010 Validity Sensors, Inc. VFS Fingerprint sensor
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass        17 
  bDeviceProtocol       255 
  bMaxPacketSize0         8
  idVendor           0x138a Validity Sensors, Inc.
  idProduct          0x0010 VFS Fingerprint sensor
  bcdDevice            0.78
  iManufacturer           0 
  iProduct                0 
  iSerial                 1 b0e02a819fcc
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           46
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           4
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               4
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0000
  (Bus Powered)

Unknown devices

comment:8 Changed 9 months ago by aeichner

  • Summary changed from Unknown device (USB pass through) to Unknown device (USB pass through) => fixed in SVN/5.1.x

Reproduced, this will be fixed in the next maintenance release.

comment:9 Changed 9 months ago by frank

The latest 5.1 test builds (>= revision 110316) have the fix. These builds can be found here.

comment:10 Changed 8 months ago by frank

  • Status changed from new to closed
  • Resolution set to fixed

Fix is part of 5.1.6.

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use