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