Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Usb-Audio Midi dissector

Hello,
I don't know if this is the right place to post this but I'm having an Issue with a USB Midi Controller (with integrated soundcard). It seems like Wireshark is unable to use the right dissector because it is unable to detect that the USB_Bulk messages are actually Midi and SysEx messages.
I would appreciate if somebody could help me resolve this issue.

Malformed Configuration Response:

Frame 572: 393 bytes on wire (3144 bits), 393 bytes captured (3144 bits) on interface 0
USB URB
CONFIGURATION DESCRIPTOR
    bLength: 9
    bDescriptorType: 0x02 (CONFIGURATION)
    wTotalLength: 329
    bNumInterfaces: 6
    bConfigurationValue: 1
    iConfiguration: 0
    Configuration bmAttributes: 0xc0  SELF-POWERED  NO REMOTE-WAKEUP
    bMaxPower: 0  (0mA)
INTERFACE ASSOCIATION DESCRIPTOR
    bLength: 8
    bDescriptorType: 0x0b (INTERFACE ASSOCIATION)
    bFirstInterface: 0
    bInterfaceCount: 3
    bFunctionClass: Audio (0x01)
    bFunctionSubClass: 0x00
    bFunctionProtocol: 0x20
    iFunction: 0
INTERFACE DESCRIPTOR (0.0): class Audio
    bLength: 9
    bDescriptorType: 0x04 (INTERFACE)
    bInterfaceNumber: 0
    bAlternateSetting: 0
    bNumEndpoints: 0
    bInterfaceClass: Audio (0x01)
    bInterfaceSubClass: 0x01
    bInterfaceProtocol: 0x20
    iInterface: 3
Class-specific Audio Control Interface Descriptor: Header Descriptor
    bLength: 9
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Header Descriptor (0x01)
    Version: 2,00
Class-specific Audio Control Interface Descriptor
    bLength: 8
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Unknown (0x0a)
    Not dissected yet (report to wireshark.org)
        [Expert Info (Warning/Undecoded): Not dissected yet (report to wireshark.org)]
            [Not dissected yet (report to wireshark.org)]
            [Severity level: Warning]
            [Group: Undecoded]
Class-specific Audio Control Interface Descriptor
    bLength: 8
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Unknown (0x0b)
    Not dissected yet (report to wireshark.org)
        [Expert Info (Warning/Undecoded): Not dissected yet (report to wireshark.org)]
            [Not dissected yet (report to wireshark.org)]
            [Severity level: Warning]
            [Group: Undecoded]
Class-specific Audio Control Interface Descriptor: Input terminal descriptor
    bLength: 17
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Input terminal descriptor (0x02)
    Terminal ID: 2
    Terminal Type: USB Streaming (0x0101)
    Assoc Terminal: 0
    Number Channels: 40
    Channel Config: 0x0004, Center Front
    Channel Names: 0
    Terminal: 0
Class-specific Audio Control Interface Descriptor: Output terminal descriptor
    bLength: 12
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Output terminal descriptor (0x03)
    Terminal ID: 20
    Terminal Type: Speaker (0x0301)
    Assoc Terminal: 0
    Source ID: 2
    Terminal: 40
Class-specific Audio Control Interface Descriptor: Input terminal descriptor
    bLength: 17
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Input terminal descriptor (0x02)
    Terminal ID: 1
    Terminal Type: Microphone (0x0201)
    Assoc Terminal: 0
    Number Channels: 40
    Channel Config: 0x0004, Center Front
    Channel Names: 0
    Terminal: 0
Class-specific Audio Control Interface Descriptor: Output terminal descriptor
    bLength: 12
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Output terminal descriptor (0x03)
    Terminal ID: 22
    Terminal Type: USB Streaming (0x0101)
    Assoc Terminal: 0
    Source ID: 2
    Terminal: 40
INTERFACE DESCRIPTOR (1.0): class Audio
    bLength: 9
    bDescriptorType: 0x04 (INTERFACE)
    bInterfaceNumber: 1
    bAlternateSetting: 0
    bNumEndpoints: 0
    bInterfaceClass: Audio (0x01)
    bInterfaceSubClass: 0x02
    bInterfaceProtocol: 0x20
    iInterface: 4
INTERFACE DESCRIPTOR (1.1): class Audio
    bLength: 9
    bDescriptorType: 0x04 (INTERFACE)
    bInterfaceNumber: 1
    bAlternateSetting: 1
    bNumEndpoints: 1
    bInterfaceClass: Audio (0x01)
    bInterfaceSubClass: 0x02
    bInterfaceProtocol: 0x20
    iInterface: 4
Class-specific Audio Streaming Interface Descriptor: General AS Descriptor
    bLength: 16
    bDescriptorType: 0x24 (audio class interface)
    Subtype: General AS Descriptor (0x01)
Class-specific Audio Streaming Interface Descriptor: Format type descriptor
    bLength: 6
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Format type descriptor (0x02)
    FormatType: 1
    Number Channels: 4
    Subframe Size: 24
[Malformed Packet: USBAUDIO]
    [Expert Info (Error/Malformed): Malformed Packet (Exception occurred)]
        [Malformed Packet (Exception occurred)]
        [Severity level: Error]
        [Group: Malformed]

Undissected Midi Packet:

Frame 1410: 76 bytes on wire (608 bits), 76 bytes captured (608 bits) on interface 0
    Interface id: 0 (usbmon0)
        Interface name: usbmon0
    Encapsulation type: USB packets with Linux header and padding (115)
    Arrival Time: Feb 13, 2019 16:48:14.912666000 CET
    [Time shift for this packet: 0.000000000 seconds]
    Epoch Time: 1550072894.912666000 seconds
    [Time delta from previous captured frame: 0.000002000 seconds]
    [Time delta from previous displayed frame: 0.000002000 seconds]
    [Time since reference or first frame: 15.722856000 seconds]
    Frame Number: 1410
    Frame Length: 76 bytes (608 bits)
    Capture Length: 76 bytes (608 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: usb]
USB URB
    [Source: 1.17.2]
    [Destination: host]
    URB id: 0xffff963341c67a80
    URB type: URB_COMPLETE ('C')
    URB transfer type: URB_BULK (0x03)
    Endpoint: 0x82, Direction: IN
        1... .... = Direction: IN (1)
        .... 0010 = Endpoint number: 2
    Device: 17
    URB bus id: 1
    Device setup request: not relevant ('-')
    Data: present (0)
    URB sec: 1550072894
    URB usec: 912666
    URB status: Success (0)
    URB length [bytes]: 12
    Data length [bytes]: 12
    [Request in: 1408]
    [Time from request: 0.000005000 seconds]
    [bInterfaceClass: Unknown (0xffff)]
    Unused Setup Header
    Interval: 0
    Start frame: 0
    Copy of Transfer Flags: 0x00000200
    Number of ISO descriptors: 0
Leftover Capture Data: 0bb31a400bb31c000bb10940

Usb-Audio Midi dissector

Hello,
I don't know if this is the right place to post this but I'm having an Issue with a USB Midi Controller (with integrated soundcard). It seems like Wireshark is unable to use the right dissector because it is unable to detect that the USB_Bulk messages are actually Midi and SysEx messages.
I would appreciate if somebody could help me resolve this issue.

Malformed Configuration Response:

Frame 572: 393 bytes on wire (3144 bits), 393 bytes captured (3144 bits) on interface 0
USB URB
CONFIGURATION DESCRIPTOR
    bLength: 9
    bDescriptorType: 0x02 (CONFIGURATION)
    wTotalLength: 329
    bNumInterfaces: 6
    bConfigurationValue: 1
    iConfiguration: 0
    Configuration bmAttributes: 0xc0  SELF-POWERED  NO REMOTE-WAKEUP
    bMaxPower: 0  (0mA)
INTERFACE ASSOCIATION DESCRIPTOR
    bLength: 8
    bDescriptorType: 0x0b (INTERFACE ASSOCIATION)
    bFirstInterface: 0
    bInterfaceCount: 3
    bFunctionClass: Audio (0x01)
    bFunctionSubClass: 0x00
    bFunctionProtocol: 0x20
    iFunction: 0
INTERFACE DESCRIPTOR (0.0): class Audio
    bLength: 9
    bDescriptorType: 0x04 (INTERFACE)
    bInterfaceNumber: 0
    bAlternateSetting: 0
    bNumEndpoints: 0
    bInterfaceClass: Audio (0x01)
    bInterfaceSubClass: 0x01
    bInterfaceProtocol: 0x20
    iInterface: 3
Class-specific Audio Control Interface Descriptor: Header Descriptor
    bLength: 9
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Header Descriptor (0x01)
    Version: 2,00
Class-specific Audio Control Interface Descriptor
    bLength: 8
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Unknown (0x0a)
    Not dissected yet (report to wireshark.org)
        [Expert Info (Warning/Undecoded): Not dissected yet (report to wireshark.org)]
            [Not dissected yet (report to wireshark.org)]
            [Severity level: Warning]
            [Group: Undecoded]
Class-specific Audio Control Interface Descriptor
    bLength: 8
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Unknown (0x0b)
    Not dissected yet (report to wireshark.org)
        [Expert Info (Warning/Undecoded): Not dissected yet (report to wireshark.org)]
            [Not dissected yet (report to wireshark.org)]
            [Severity level: Warning]
            [Group: Undecoded]
Class-specific Audio Control Interface Descriptor: Input terminal descriptor
    bLength: 17
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Input terminal descriptor (0x02)
    Terminal ID: 2
    Terminal Type: USB Streaming (0x0101)
    Assoc Terminal: 0
    Number Channels: 40
    Channel Config: 0x0004, Center Front
    Channel Names: 0
    Terminal: 0
Class-specific Audio Control Interface Descriptor: Output terminal descriptor
    bLength: 12
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Output terminal descriptor (0x03)
    Terminal ID: 20
    Terminal Type: Speaker (0x0301)
    Assoc Terminal: 0
    Source ID: 2
    Terminal: 40
Class-specific Audio Control Interface Descriptor: Input terminal descriptor
    bLength: 17
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Input terminal descriptor (0x02)
    Terminal ID: 1
    Terminal Type: Microphone (0x0201)
    Assoc Terminal: 0
    Number Channels: 40
    Channel Config: 0x0004, Center Front
    Channel Names: 0
    Terminal: 0
Class-specific Audio Control Interface Descriptor: Output terminal descriptor
    bLength: 12
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Output terminal descriptor (0x03)
    Terminal ID: 22
    Terminal Type: USB Streaming (0x0101)
    Assoc Terminal: 0
    Source ID: 2
    Terminal: 40
INTERFACE DESCRIPTOR (1.0): class Audio
    bLength: 9
    bDescriptorType: 0x04 (INTERFACE)
    bInterfaceNumber: 1
    bAlternateSetting: 0
    bNumEndpoints: 0
    bInterfaceClass: Audio (0x01)
    bInterfaceSubClass: 0x02
    bInterfaceProtocol: 0x20
    iInterface: 4
INTERFACE DESCRIPTOR (1.1): class Audio
    bLength: 9
    bDescriptorType: 0x04 (INTERFACE)
    bInterfaceNumber: 1
    bAlternateSetting: 1
    bNumEndpoints: 1
    bInterfaceClass: Audio (0x01)
    bInterfaceSubClass: 0x02
    bInterfaceProtocol: 0x20
    iInterface: 4
Class-specific Audio Streaming Interface Descriptor: General AS Descriptor
    bLength: 16
    bDescriptorType: 0x24 (audio class interface)
    Subtype: General AS Descriptor (0x01)
Class-specific Audio Streaming Interface Descriptor: Format type descriptor
    bLength: 6
    bDescriptorType: 0x24 (audio class interface)
    Subtype: Format type descriptor (0x02)
    FormatType: 1
    Number Channels: 4
    Subframe Size: 24
[Malformed Packet: USBAUDIO]
    [Expert Info (Error/Malformed): Malformed Packet (Exception occurred)]
        [Malformed Packet (Exception occurred)]
        [Severity level: Error]
        [Group: Malformed]

Undissected Midi Packet:

Frame 1410: 76 bytes on wire (608 bits), 76 bytes captured (608 bits) on interface 0
    Interface id: 0 (usbmon0)
        Interface name: usbmon0
    Encapsulation type: USB packets with Linux header and padding (115)
    Arrival Time: Feb 13, 2019 16:48:14.912666000 CET
    [Time shift for this packet: 0.000000000 seconds]
    Epoch Time: 1550072894.912666000 seconds
    [Time delta from previous captured frame: 0.000002000 seconds]
    [Time delta from previous displayed frame: 0.000002000 seconds]
    [Time since reference or first frame: 15.722856000 seconds]
    Frame Number: 1410
    Frame Length: 76 bytes (608 bits)
    Capture Length: 76 bytes (608 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: usb]
USB URB
    [Source: 1.17.2]
    [Destination: host]
    URB id: 0xffff963341c67a80
    URB type: URB_COMPLETE ('C')
    URB transfer type: URB_BULK (0x03)
    Endpoint: 0x82, Direction: IN
        1... .... = Direction: IN (1)
        .... 0010 = Endpoint number: 2
    Device: 17
    URB bus id: 1
    Device setup request: not relevant ('-')
    Data: present (0)
    URB sec: 1550072894
    URB usec: 912666
    URB status: Success (0)
    URB length [bytes]: 12
    Data length [bytes]: 12
    [Request in: 1408]
    [Time from request: 0.000005000 seconds]
    [bInterfaceClass: Unknown (0xffff)]
    Unused Setup Header
    Interval: 0
    Start frame: 0
    Copy of Transfer Flags: 0x00000200
    Number of ISO descriptors: 0
Leftover Capture Data: 0bb31a400bb31c000bb10940