I have a HID device (picoLCD monochrome display), that I open in a Windows program written in C#. I get 3 HID "instances" of my device with the following paths:
_devicePath = "\\\\?\\hid#vid_04d8&pid_c002&col01#7&12adec39&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
_devicePath = "\\\\?\\hid#vid_04d8&pid_c002&col02#7&12adec39&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}"
_devicePath = "\\\\?\\hid#vid_04d8&pid_c002&col03#7&12adec39&0&0002#{4d1e55b2-f16f-11cf-88cb-001111000030}"
They all have the same VID and PID, but different "col". What does this parameter mean? And why there are 3 device "descriptors" for one device?
UsbView shows only one physical device with 2 endpoints:
Device Descriptor:
bcdUSB: 0x0200
bDeviceClass: 0x00
bDeviceSubClass: 0x00
bDeviceProtocol: 0x00
bMaxPacketSize0: 0x08 (8)
idVendor: 0x04D8 (Microchip Technology Inc.)
idProduct: 0xC002
bcdDevice: 0x0002
iManufacturer: 0x01
iProduct: 0x02
iSerialNumber: 0x03
bNumConfigurations: 0x01
ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed: Full
Device Address: 0x05
Open Pipes: 2
Endpoint Descriptor:
bEndpointAddress: 0x81 IN
Transfer Type: Interrupt
wMaxPacketSize: 0x0040 (64)
bInterval: 0x01
Endpoint Descriptor:
bEndpointAddress: 0x01 OUT
Transfer Type: Interrupt
wMaxPacketSize: 0x0040 (64)
bInterval: 0x01
Looks like it some sort of collection id (for example HIDClass Hardware IDs for Top-Level Collections)