Tracker+ USB Descriptor has errors

Thesycon.de has a little tool called tdd.exe that reports the details of a device’s USB descriptor on Windows. When I run that tool on a Polyend Tracker+, it reports errors in the descriptor. Here is its output:

Information for device Tracker Plus (VID=0x16D0 PID=0x1119):

*** ERROR: Descriptor has errors! ***


Connection Information:

Device current bus speed: HighSpeed
Device supports USB 1.1 specification
Device supports USB 2.0 specification
Device address: 0x0027
Current configuration value: 0x01
Number of open pipes: 2


Device Descriptor:

0x12 bLength
0x01 bDescriptorType
0x0200 bcdUSB
0xEF bDeviceClass (Miscellaneous device)
0x02 bDeviceSubClass
0x01 bDeviceProtocol
0x40 bMaxPacketSize0 (64 bytes)
0x16D0 idVendor
0x1119 idProduct
0x0101 bcdDevice
0x01 iManufacturer “Polyend”
0x02 iProduct “Tracker Plus”
0x00 iSerialNumber
0x01 bNumConfigurations

Device Qualifier Descriptor is not available. Error code: 0x0000001F


Configuration Descriptor:

0x09 bLength
0x02 bDescriptorType
0x0124 wTotalLength (292 bytes)
0x04 bNumInterfaces
0x01 bConfigurationValue
0x00 iConfiguration
0xC0 bmAttributes (Self-powered Device)
0x32 bMaxPower (100 mA)

Interface Association Descriptor:

0x08 bLength
0x0B bDescriptorType
0x00 bFirstInterface
0x03 bInterfaceCount
0x01 bFunctionClass (Audio Device Class)
0x00 bFunctionSubClass
0x20 bFunctionProtocol (Audio Protocol IP version 2.00)
0x05 iFunction “Tracker Plus AUDIO”

Interface Descriptor:

0x09 bLength
0x04 bDescriptorType
0x00 bInterfaceNumber
0x00 bAlternateSetting
0x00 bNumEndPoints
0x01 bInterfaceClass (Audio Device Class)
0x01 bInterfaceSubClass (Audio Control Interface)
0x20 bInterfaceProtocol (Audio Protocol IP version 2.00)
0x00 iInterface

AC Interface Header Descriptor:

0x09 bLength
0x24 bDescriptorType
0x01 bDescriptorSubtype
0x0200 bcdADC
0x0A bCategory (PRO_AUDIO)
0x004B wTotalLength (75 bytes)
0x00 bmControls

AC Clock Source Descriptor:

0x08 bLength
0x24 bDescriptorType
0x0A bDescriptorSubtype
0x10 bClockID
0x01 bmAttributes
0x07 bmControls
Clock Frequency Control - host programmable
Clock Validity Control - read only
0x00 bAssocTerminal
0x00 iClockSource

AC Input Terminal Descriptor:

0x11 bLength
0x24 bDescriptorType
0x02 bDescriptorSubtype
0x01 bTerminalID
0x0713 wTerminalType (Synthesizer)
0x00 bAssocTerminal
0x10 bCSourceID
0x1C bNrChannels (28 channels)
0x00000000 bmChannelConfig
0x00 iChannelNames
0x00 bmControls
0x00 iTerminal

AC Output Terminal Descriptor:

0x0C bLength
0x24 bDescriptorType
0x03 bDescriptorSubtype
0x02 bTerminalID
0x0101 wTerminalType (USB Streaming)
0x00 bAssocTerminal
0x01 bSourceID
0x10 bCSourceID
0x0000 bmControls
0x00 iTerminal

AC Input Terminal Descriptor:

0x11 bLength
0x24 bDescriptorType
0x02 bDescriptorSubtype
0x03 bTerminalID
0x0101 wTerminalType (USB Streaming)
0x00 bAssocTerminal
0x10 bCSourceID
0x02 bNrChannels (2 channels)
0x00000000 bmChannelConfig
0x00 iChannelNames
0x00 bmControls
0x00 iTerminal

AC Output Terminal Descriptor:

0x0C bLength
0x24 bDescriptorType
0x03 bDescriptorSubtype
0x04 bTerminalID
0x0713 wTerminalType (Synthesizer)
0x00 bAssocTerminal
0x03 bSourceID
0x10 bCSourceID
0x0000 bmControls
0x00 iTerminal

Interface Descriptor:

0x09 bLength
0x04 bDescriptorType
0x01 bInterfaceNumber
0x00 bAlternateSetting
0x00 bNumEndPoints
0x01 bInterfaceClass (Audio Device Class)
0x02 bInterfaceSubClass (Audio Streaming Interface)
0x20 bInterfaceProtocol (Audio Protocol IP version 2.00)
0x00 iInterface

Interface Descriptor:

0x09 bLength
0x04 bDescriptorType
0x01 bInterfaceNumber
0x01 bAlternateSetting
0x01 bNumEndPoints
0x01 bInterfaceClass (Audio Device Class)
0x02 bInterfaceSubClass (Audio Streaming Interface)
0x20 bInterfaceProtocol (Audio Protocol IP version 2.00)
0x00 iInterface

AS Interface Descriptor:

0x10 bLength
0x24 bDescriptorType
0x01 bDescriptorSubtype
0x02 bTerminalLink
0x00 bmControls
0x01 bFormatType (FORMAT_TYPE_1)
0x00000001 bmFormats
PCM
0x1C bNrChannels (28 channels)
0x00000000 bmChannelConfig
0x00 iChannelNames

AS Format Type 1 Descriptor:

0x06 bLength
0x24 bDescriptorType
0x02 bDescriptorSubtype
0x01 bFormatType (FORMAT_TYPE_1)
0x02 bSubslotSize
0x10 bBitResolution (16 bits per sample)

Endpoint Descriptor:

0x07 bLength
0x05 bDescriptorType
0x82 bEndpointAddress (IN endpoint 2)
0x25 bmAttributes (Transfer: Isochronous / Synch: Asynchronous / Usage: Implicit)
0x0400 wMaxPacketSize (1 x 1024 bytes)
0x01 bInterval (1 microframes)

AS Isochronous Data Endpoint Descriptor:

0x08 bLength
0x25 bDescriptorType
0x01 bDescriptorSubtype
0x00 bmAttributes
0x00 bmControls
0x00 bLockDelayUnits (undefined)
0x0000 wLockDelay

Interface Descriptor:

0x09 bLength
0x04 bDescriptorType
0x02 bInterfaceNumber
0x00 bAlternateSetting
0x00 bNumEndPoints
0x01 bInterfaceClass (Audio Device Class)
0x02 bInterfaceSubClass (Audio Streaming Interface)
0x20 bInterfaceProtocol (Audio Protocol IP version 2.00)
0x00 iInterface

Interface Descriptor:

0x09 bLength
0x04 bDescriptorType
0x02 bInterfaceNumber
0x01 bAlternateSetting
0x02 bNumEndPoints
0x01 bInterfaceClass (Audio Device Class)
0x02 bInterfaceSubClass (Audio Streaming Interface)
0x20 bInterfaceProtocol (Audio Protocol IP version 2.00)
0x00 iInterface

AS Interface Descriptor:

0x10 bLength
0x24 bDescriptorType
0x01 bDescriptorSubtype
0x03 bTerminalLink
0x00 bmControls
0x01 bFormatType (FORMAT_TYPE_1)
0x00000001 bmFormats
PCM
0x02 bNrChannels (2 channels)
0x00000000 bmChannelConfig
0x00 iChannelNames

AS Format Type 1 Descriptor:

0x06 bLength
0x24 bDescriptorType
0x02 bDescriptorSubtype
0x01 bFormatType (FORMAT_TYPE_1)
0x02 bSubslotSize
0x10 bBitResolution (16 bits per sample)

Endpoint Descriptor:

0x07 bLength
0x05 bDescriptorType
0x03 bEndpointAddress (OUT endpoint 3)
0x05 bmAttributes (Transfer: Isochronous / Synch: Asynchronous / Usage: Data)
0x0400 wMaxPacketSize (1 x 1024 bytes)
0x01 bInterval (1 microframes)

AS Isochronous Data Endpoint Descriptor:

0x08 bLength
0x25 bDescriptorType
0x01 bDescriptorSubtype
0x00 bmAttributes
0x00 bmControls
0x00 bLockDelayUnits (undefined)
0x0000 wLockDelay

Endpoint Descriptor:

0x07 bLength
0x05 bDescriptorType
0x83 bEndpointAddress (IN endpoint 3)
0x11 bmAttributes (Transfer: Isochronous / Synch: None / Usage: Feedback)
0x0004 wMaxPacketSize (1 x 4 bytes)
0x01 bInterval (1 microframes)

Interface Descriptor:

0x09 bLength
0x04 bDescriptorType
0x03 bInterfaceNumber
0x00 bAlternateSetting
0x02 bNumEndPoints
0x01 bInterfaceClass (Audio Device Class)
0x03 bInterfaceSubClass (MIDI Streaming Interface)
0x00 bInterfaceProtocol (Audio Protocol undefined)
0x04 iInterface “Tracker Plus MIDI”

MS Interface Header Descriptor:

0x07 bLength
0x24 bDescriptorType
0x01 bDescriptorSubtype
0x0000 bcdMSC
0x0025 wTotalLength (37 bytes)

MS MIDI IN Jack Descriptor:

0x06 bLength
0x24 bDescriptorType
0x02 bDescriptorSubtype
0x01 bJackType
0x01 bJackID
0x00 iJack

MS MIDI IN Jack Descriptor:

0x06 bLength
0x24 bDescriptorType
0x02 bDescriptorSubtype
0x02 bJackType
0x02 bJackID
0x00 iJack

MS MIDI OUT Jack Descriptor:

0x09 bLength
0x24 bDescriptorType
0x03 bDescriptorSubtype
0x01 bJackType
0x03 bJackID
0x01 bNrInputPins
0x02 baSourceID(1)
0x01 baSourcePin(1)
0x00 iJack

MS MIDI OUT Jack Descriptor:

0x09 bLength
0x24 bDescriptorType
0x03 bDescriptorSubtype
0x02 bJackType
0x04 bJackID
0x01 bNrInputPins
0x01 baSourceID(1)
0x01 baSourcePin(1)
0x00 iJack

Endpoint Descriptor (Audio/MIDI 1.0):

0x09 bLength
0x05 bDescriptorType
0x01 bEndpointAddress (OUT endpoint 1)
0x02 bmAttributes (Transfer: Bulk / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (64 bytes)
0x00 bInterval
0x00 bRefresh
0x00 bSynchAddress
*** ERROR: Invalid wMaxPacketSize. Must be 512 bytes in high speed mode.

MS Bulk Data Endpoint Descriptor:

0x05 bLength
0x25 bDescriptorType
0x01 bDescriptorSubtype
0x01 bNumEmbMIDIJack
0x01 baAssocJackID(1)

Endpoint Descriptor (Audio/MIDI 1.0):

0x09 bLength
0x05 bDescriptorType
0x81 bEndpointAddress (IN endpoint 1)
0x02 bmAttributes (Transfer: Bulk / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (64 bytes)
0x00 bInterval
0x00 bRefresh
0x00 bSynchAddress
*** ERROR: Invalid wMaxPacketSize. Must be 512 bytes in high speed mode.

MS Bulk Data Endpoint Descriptor:

0x05 bLength
0x25 bDescriptorType
0x01 bDescriptorSubtype
0x01 bNumEmbMIDIJack
0x03 baAssocJackID(1)

Microsoft OS Descriptor is not available. Error code: 0x0000001F


String Descriptor Table

Index LANGID String
0x00 0x0000 0x0409
0x01 0x0409 “Polyend”
0x02 0x0409 “Tracker Plus”
0x04 0x0409 “Tracker Plus MIDI”
0x05 0x0409 “Tracker Plus AUDIO”


Connection path for device:
USB xHCI Compliant Host Controller
Root Hub
Tracker Plus (VID=0x16D0 PID=0x1119) Port: 1

Running on: Windows 10 or greater (Build Version 26200)

Brought to you by TDD v2.19.0, Dec 5 2023, 12:08:38