Adds serial number string to USB descriptors (#1996)
* add serial number string to usb descriptors * better name for serial number
This commit is contained in:
		| @@ -275,7 +275,7 @@ const USB_Descriptor_Device_t PROGMEM DeviceDescriptor = | ||||
|  | ||||
|     .ManufacturerStrIndex   = 0x01, | ||||
|     .ProductStrIndex        = 0x02, | ||||
|     .SerialNumStrIndex      = NO_DESCRIPTOR, | ||||
|     .SerialNumStrIndex      = 0x03, | ||||
|  | ||||
|     .NumberOfConfigurations = FIXED_NUM_CONFIGURATIONS | ||||
| }; | ||||
| @@ -860,6 +860,18 @@ const USB_Descriptor_String_t PROGMEM ProductString = | ||||
|     .UnicodeString          = LSTR(PRODUCT) | ||||
| }; | ||||
|  | ||||
| #ifndef SERIAL_NUMBER | ||||
|     #define SERIAL_NUMBER 0 | ||||
| #endif | ||||
|  | ||||
| const USB_Descriptor_String_t PROGMEM SerialNumberString = | ||||
| { | ||||
|     /* subtract 1 for null terminator */ | ||||
|     .Header                 = {.Size = USB_STRING_LEN(sizeof(STR(SERIAL_NUMBER))-1), .Type = DTYPE_String}, | ||||
|  | ||||
|     .UnicodeString          = LSTR(SERIAL_NUMBER) | ||||
| }; | ||||
|  | ||||
|  | ||||
| /** This function is called by the library when in device mode, and must be overridden (see library "USB Descriptors" | ||||
|  *  documentation) by the application code so that the address and size of a requested descriptor can be given | ||||
| @@ -902,6 +914,10 @@ uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue, | ||||
|                     Address = &ProductString; | ||||
|                     Size    = pgm_read_byte(&ProductString.Header.Size); | ||||
|                     break; | ||||
|                 case 0x03: | ||||
|                     Address = &SerialNumberString; | ||||
|                     Size    = pgm_read_byte(&SerialNumberString.Header.Size); | ||||
|                     break; | ||||
|             } | ||||
|             break; | ||||
|         case HID_DTYPE_HID: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user