]> git.donarmstrong.com Git - kiibohd-controller.git/commitdiff
Fixing descriptor bugs
authorJacob Alexander <haata@kiibohd.com>
Sun, 28 Sep 2014 23:42:43 +0000 (16:42 -0700)
committerJacob Alexander <haata@kiibohd.com>
Sun, 28 Sep 2014 23:42:43 +0000 (16:42 -0700)
- Missing device qualifier descriptor
- Missing USB Debug descriptor (used by lsusb)

Output/pjrcUSB/avr/usb_keyboard_serial.c
Output/pjrcUSB/avr/usb_keyboard_serial.h

index e61cc6d0bb9f572241c505c15b35592d9982c35e..63a8f7288cb51e9a35f71a9f9a08671c0780c830 100644 (file)
@@ -865,7 +865,7 @@ ISR( USB_COM_vect )
                                        USBKeys_Idle_Config = (wValue >> 8);
                                        USBKeys_Idle_Count = 0;
                                        usb_send_in();
-                                       print("HID IDLE");
+                                       //print("HID IDLE");
                                        return;
                                }
                                if ( bRequest == HID_SET_PROTOCOL )
@@ -873,7 +873,7 @@ ISR( USB_COM_vect )
                                        usb_wait_in_ready();
                                        USBKeys_Protocol = wValue; // 0 - Boot Mode, 1 - NKRO Mode
                                        usb_send_in();
-                                       print("HID SET");
+                                       //print("HID SET");
                                        return;
                                }
                        }
index ae9e1348a59899b33d5fb262fcfc19983613ed8c..7b2c7209cb86b1e3b612b9e1b455574a9ee137a7 100644 (file)
@@ -273,6 +273,16 @@ static const uint8_t PROGMEM device_descriptor[] = {
        1                                       // bNumConfigurations
 };
 
+// Specify only a single USB speed
+static const uint8_t PROGMEM device_qualifier_descriptor[] = {
+       0
+};
+
+// Disable USB debug descriptor
+static const uint8_t PROGMEM usb_debug_descriptor[] = {
+       0
+};
+
 // Keyboard Protocol 1, HID 1.11 spec, Appendix B, page 59-60
 static const uint8_t PROGMEM keyboard_hid_report_desc[] = {
        // Keyboard Collection
@@ -500,7 +510,7 @@ static const uint8_t PROGMEM config1_descriptor[CONFIG1_DESC_SIZE] = {
        9,                                      // bLength
        0x21,                                   // bDescriptorType
        0x11, 0x01,                             // bcdHID
-       33,                                     // bCountryCode - Setting to 0/Undefined
+       0,                                      // bCountryCode - Setting to 0/Undefined
        1,                                      // bNumDescriptors
        0x22,                                   // bDescriptorType
                                                // wDescriptorLength
@@ -638,6 +648,8 @@ static const struct descriptor_list_struct {
 } PROGMEM descriptor_list[] = {
        {0x0100, 0x0000, device_descriptor, sizeof(device_descriptor)},
        {0x0200, 0x0000, config1_descriptor, sizeof(config1_descriptor)},
+       {0x0600, 0x0000, device_qualifier_descriptor, sizeof(device_qualifier_descriptor)},
+       {0x0A00, 0x0000, usb_debug_descriptor, sizeof(usb_debug_descriptor)},
        {0x2200, KEYBOARD_INTERFACE, keyboard_hid_report_desc, sizeof(keyboard_hid_report_desc)},
        {0x2100, KEYBOARD_INTERFACE, config1_descriptor + KEYBOARD_HID_DESC_OFFSET, 9},
        {0x2200, KEYBOARD_NKRO_INTERFACE, keyboard_nkro_hid_report_desc, sizeof(keyboard_nkro_hid_report_desc)},