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 Step, it does not report any errors in the descriptor. For the record, here is its output:
Information for device SEQ (VID=0x1FC9 PID=0x815B):
Connection Information:
Device current bus speed: FullSpeed
Device supports USB 1.1 specification
Device supports USB 2.0 specification
Device address: 0x002F
Current configuration value: 0x01
Number of open pipes: 7
Device Descriptor:
0x12 bLength
0x01 bDescriptorType
0x0101 bcdUSB
0x00 bDeviceClass
0x00 bDeviceSubClass
0x00 bDeviceProtocol
0x40 bMaxPacketSize0 (64 bytes)
0x1FC9 idVendor
0x815B idProduct
0x0200 bcdDevice
0x01 iManufacturer
0x02 iProduct
0x03 iSerialNumber
0x01 bNumConfigurations
Configuration Descriptor:
0x09 bLength
0x02 bDescriptorType
0x00B5 wTotalLength (181 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
0x02 bInterfaceCount
0x02 bFunctionClass (Communication Device Class)
0x02 bFunctionSubClass (Abstract Control Model - ACM)
0x01 bFunctionProtocol (ITU-T V.250)
0x04 iFunction
Interface Descriptor:
0x09 bLength
0x04 bDescriptorType
0x00 bInterfaceNumber
0x00 bAlternateSetting
0x01 bNumEndPoints
0x02 bInterfaceClass (Communication Device Class)
0x02 bInterfaceSubClass (Abstract Control Model - ACM)
0x01 bInterfaceProtocol (ITU-T V.250)
0x00 iInterface
CDC Header Functional Descriptor:
0x05 bFunctionalLength
0x24 bDescriptorType
0x00 bDescriptorSubtype
0x0110 bcdCDC
CDC Call Management Functional Descriptor:
0x05 bFunctionalLength
0x24 bDescriptorType
0x01 bDescriptorSubtype
0x01 bmCapabilities
0x01 bDataInterface
CDC Abstract Control Management Functional Descriptor:
0x04 bFunctionalLength
0x24 bDescriptorType
0x02 bDescriptorSubtype
0x06 bmCapabilities
CDC Union Functional Descriptor:
0x05 bFunctionalLength
0x24 bDescriptorType
0x06 bDescriptorSubtype
0x00 bControlInterface
0x01 bSubordinateInterface(0)
Endpoint Descriptor:
0x07 bLength
0x05 bDescriptorType
0x87 bEndpointAddress (IN endpoint 7)
0x03 bmAttributes (Transfer: Interrupt / Synch: None / Usage: Data)
0x0010 wMaxPacketSize (1 x 16 bytes)
0x40 bInterval (64 frames)
Interface Descriptor:
0x09 bLength
0x04 bDescriptorType
0x01 bInterfaceNumber
0x00 bAlternateSetting
0x02 bNumEndPoints
0x0A bInterfaceClass (CDC Data)
0x00 bInterfaceSubClass
0x00 bInterfaceProtocol
0x00 iInterface
Endpoint Descriptor:
0x07 bLength
0x05 bDescriptorType
0x04 bEndpointAddress (OUT endpoint 4)
0x02 bmAttributes (Transfer: Bulk / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (64 bytes)
0x00 bInterval
Endpoint Descriptor:
0x07 bLength
0x05 bDescriptorType
0x83 bEndpointAddress (IN endpoint 3)
0x02 bmAttributes (Transfer: Bulk / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (64 bytes)
0x00 bInterval
Interface Descriptor:
0x09 bLength
0x04 bDescriptorType
0x02 bInterfaceNumber
0x00 bAlternateSetting
0x02 bNumEndPoints
0x01 bInterfaceClass (Audio Device Class)
0x03 bInterfaceSubClass (MIDI Streaming Interface)
0x00 bInterfaceProtocol (Audio Protocol undefined)
0x00 iInterface
MS Interface Header Descriptor:
0x07 bLength
0x24 bDescriptorType
0x01 bDescriptorSubtype
0x0100 bcdMSC
0x0041 wTotalLength (65 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
0x06 bEndpointAddress (OUT endpoint 6)
0x02 bmAttributes (Transfer: Bulk / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (64 bytes)
0x00 bInterval
0x00 bRefresh
0x00 bSynchAddress
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
0x85 bEndpointAddress (IN endpoint 5)
0x02 bmAttributes (Transfer: Bulk / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (64 bytes)
0x00 bInterval
0x00 bRefresh
0x00 bSynchAddress
MS Bulk Data Endpoint Descriptor:
0x05 bLength
0x25 bDescriptorType
0x01 bDescriptorSubtype
0x01 bNumEmbMIDIJack
0x03 baAssocJackID(1)
Interface Descriptor:
0x09 bLength
0x04 bDescriptorType
0x03 bInterfaceNumber
0x00 bAlternateSetting
0x02 bNumEndPoints
0x03 bInterfaceClass (Human Interface Device Class)
0x00 bInterfaceSubClass
0x00 bInterfaceProtocol
0x00 iInterface
HID Descriptor:
0x09 bLength
0x21 bDescriptorType
0x0111 bcdHID
0x00 bCountryCode
0x01 bNumDescriptors
0x22 bDescriptorType (Report descriptor)
0x001C bDescriptorLength
Endpoint Descriptor:
0x07 bLength
0x05 bDescriptorType
0x81 bEndpointAddress (IN endpoint 1)
0x03 bmAttributes (Transfer: Interrupt / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (1 x 64 bytes)
0x01 bInterval (1 frames)
Endpoint Descriptor:
0x07 bLength
0x05 bDescriptorType
0x02 bEndpointAddress (OUT endpoint 2)
0x03 bmAttributes (Transfer: Interrupt / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (1 x 64 bytes)
0x01 bInterval (1 frames)
Microsoft OS Descriptor is not available. Error code: 0x0000001F
String Descriptor Table
Index LANGID String
0x00 0x0000
0x01 0x0000 “Polyend”
0x02 0x0000 “SEQ”
0x03 0x0000 “4294967295”
0x04 0x0000 Request failed with 0x0000001F
Connection path for device:
USB xHCI Compliant Host Controller
Root Hub
SEQ (VID=0x1FC9 PID=0x815B) Port: 5
Running on: Windows 10 or greater (Build Version 26200)
Brought to you by TDD v2.19.0, Dec 5 2023, 12:08:38