Device Descriptor

This is the device descriptor of the mouse we are examining. The analyser is showing the significance of the 18 bytes which comprise the descriptor.

The device descriptor is the top level set of information which can be read from a device. It is the first item which the host will attempt to retrieve.

The first two bytes show the length and descriptor type, as with any descriptor. This is followed by a word which says the device conforms to USB specification V1.1.

The next three bytes describe the device class. In the case of a mouse which is a Human Interface Device class, the class is not defined here, but defined for each interface in the device in the interface descriptor(s). (We will see that our mouse has one interface.)

bMaxPacketSize0 specifies that the maximum input and output packet size for endpoint 0 is 8 bytes.

The next three words specify the exact identification of the device. We can see who made it, what it is, and which version it is.

The next three items define indexes to strings which the device may or may not specify. This device has a manufacturer string (which the host never asked for, so we don't know what it is), a product string (shown here because the analyser noted what it contains when it was asked for later), but no serial number string.

A mouse does not usually have a serial number.

Finally we are told that this device has just 1 configuration, which in practice is the most common number of configurations for a device to have.