
Spinpoint M9TU-USB 3.0 Product Manual REV 1.0
74
USB INTERFACE AND USB COMMANDS
6.4.2 Standard Descriptors
The device shall support the following standard USB descriptors:
•
Device
. Each USB device has one device descriptor (per
USB Specification
).
•
Configuration
. Each USB device has one default configuration descriptor, which supports at least one
interface.
•
Interface
. The device shall support at least one interface, known herein as the Bulk-Only Data Interface. Some
devices
may
support additional interfaces, to provide other capabilities.
•
Endpoint
. The device shall support the following endpoints, in addition to the default pipe that is required of
all USB devices:
(a) Bulk-In endpoint
(b) Bulk-Out endpoint
Some devices
may
support additional endpoints, to provide other capabilities. The host shall use the first
reported Bulk-In and Bulk-Out endpoints for the selected interface.
•
String
. The device shall supply a unique serial number.
The rest of this section describes the standard USB device, configuration, interface, endpoint, and string
descriptors for the device.
6.4.2.1
Device Descriptor
Each USB device has one device descriptor (per
USB Specification
). The device shall specify the device class
and subclass codes in the interface descriptor, and not in the device descriptor. (Table 6-20)
Table 6-20: Bulk Only Transport Device Descriptor
The
iSerialNumber
field shall be set to the index of the string descriptor that contains the serial number. The
serial number shall contain at least 12 valid digits, represented as a UNICODE string. The last 12 digits of the
serial number shall be unique to each USB
idVendor
and
idProduct
pair.
The host
may
generate a globally unique identifier by concatenating the 16 bit
idVendor,
the 16 bit
idProduct
and the value represented by the last 12 characters of the string descriptor indexed by
iSerialNumber.
The field
iSerialNumber
is an index to a string descriptor and does not contain the string itself. An example format for the
String descriptor is shown below. (Table 6-21)
Table 6-21: Example Serial Number Format