Here is an overview of the micro-OSC device descriptor.
The VendorID/ProductID used is by permission from Microchip Technology Inc. under a sublicense agreement. This VID/PID may only be used with Microchip products.
The "Serial Number String" section of the descriptor is automatically populated with a random number, but can be changed by using the /device/id message. This data can be used to search the USB enumeration table to locate a specific micro-OSC device connected to the computer (e.g., on Mac OSX this is possible using IOKit to detect the connection of a specific USB device).
-----
Full Speed device
Communication device: "uOSC.PIC"
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 2 (Communication)
Device Subclass: 0
Device Protocol: 0
Device MaxPacketSize: 8
Device VendorID/ProductID: 0x04D8/0xFE3A (Microchip Technology Inc.)
Device Version Number: 0x0100
Number of Configurations: 1
Manufacturer String: 1 "cnmat.berkeley.edu"
Product String: 2 "uOSC.PIC"
Serial Number String: 3 "r16-5a30"
Configuration Descriptor
Number of Interfaces: 2
Configuration Value: 1
Attributes: 0x80 (bus-powered)
MaxPower: 500 ma
Interface #0 - Communications-Control
Number of Endpoints 1
Interface Class: 2 (Communications-Control)
Address: 0x82 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 8
Polling Interval: 2 ms
Interface #1 - Communications-Data/Unknown Comm Class Model
Number of Endpoints 2
Interface Class: 10 (Communications-Data)
Endpoint 0x03 - Bulk Output
Address: 0x03 (OUT)
Attributes: 0x02 (Bulk no synchronization data endpoint)
Max Packet Size: 64
Polling Interval: 0 ms
Endpoint 0x83 - Bulk Input
Address: 0x83 (IN)
Attributes: 0x02 (Bulk no synchronization data endpoint)
Max Packet Size: 64
Polling Interval: 0 ms