LUFA Library
USB_Descriptor_Device_t Struct Reference

Standard USB Device Descriptor (LUFA naming conventions). More...

#include <StdDescriptors.h>

Data Fields

uint8_t Class
 
uint8_t Endpoint0Size
 
USB_Descriptor_Header_t Header
 
uint8_t ManufacturerStrIndex
 
uint8_t NumberOfConfigurations
 
uint16_t ProductID
 
uint8_t ProductStrIndex
 
uint8_t Protocol
 
uint16_t ReleaseNumber
 
uint8_t SerialNumStrIndex
 
uint8_t SubClass
 
uint16_t USBSpecification
 
uint16_t VendorID
 

Detailed Description

Type define for a standard Device Descriptor. This structure uses LUFA-specific element names to make each element's purpose clearer.

See also
USB_StdDescriptor_Device_t for the version of this type with standard element names.
Note
Regardless of CPU architecture, these values should be stored as little endian.

Field Documentation

◆ Class

uint8_t USB_Descriptor_Device_t::Class

USB device class.

◆ Endpoint0Size

uint8_t USB_Descriptor_Device_t::Endpoint0Size

Size of the control (address 0) endpoint's bank in bytes.

◆ Header

USB_Descriptor_Header_t USB_Descriptor_Device_t::Header

Descriptor header, including type and size.

◆ ManufacturerStrIndex

uint8_t USB_Descriptor_Device_t::ManufacturerStrIndex

String index for the manufacturer's name. The host will request this string via a separate control request for the string descriptor.

Note
If no string supplied, use NO_DESCRIPTOR.

◆ NumberOfConfigurations

uint8_t USB_Descriptor_Device_t::NumberOfConfigurations

Total number of configurations supported by the device.

◆ ProductID

uint16_t USB_Descriptor_Device_t::ProductID

Unique product ID for the USB product.

◆ ProductStrIndex

uint8_t USB_Descriptor_Device_t::ProductStrIndex

String index for the product name/details.

See also
ManufacturerStrIndex structure entry.

◆ Protocol

uint8_t USB_Descriptor_Device_t::Protocol

USB device protocol.

◆ ReleaseNumber

uint16_t USB_Descriptor_Device_t::ReleaseNumber

Product release (version) number.

See also
VERSION_BCD() utility macro.

◆ SerialNumStrIndex

uint8_t USB_Descriptor_Device_t::SerialNumStrIndex

String index for the product's globally unique hexadecimal serial number, in uppercase Unicode ASCII.

Note
On some microcontroller models, there is an embedded serial number in the chip which can be used for the device serial number. To use this serial number, set this to USE_INTERNAL_SERIAL. On unsupported devices, this will evaluate to NO_DESCRIPTOR and will cause the host to generate a pseudo-unique value for the device upon insertion.
See also
ManufacturerStrIndex structure entry.

◆ SubClass

uint8_t USB_Descriptor_Device_t::SubClass

USB device subclass.

◆ USBSpecification

uint16_t USB_Descriptor_Device_t::USBSpecification

BCD of the supported USB specification.

See also
VERSION_BCD() utility macro.

◆ VendorID

uint16_t USB_Descriptor_Device_t::VendorID

Vendor ID for the USB product.


The documentation for this struct was generated from the following file: