]> git.donarmstrong.com Git - kiibohd-controller.git/commitdiff
Fixing NKRO for Windows.
authorJacob Alexander <haata@kiibohd.com>
Wed, 1 Oct 2014 07:16:14 +0000 (00:16 -0700)
committerJacob Alexander <haata@kiibohd.com>
Wed, 1 Oct 2014 07:16:14 +0000 (00:16 -0700)
CMakeLists.txt
Lib/_buildvars.h
Output/pjrcUSB/arm/usb_desc.c
Output/pjrcUSB/arm/usb_desc.h
Output/pjrcUSB/avr/usb_keyboard_serial.h

index 020f210891fbddb33eee21ab74512f69d93a077a..f20e44af8d1cb9d191fdf835eab59f7b431f83c0 100644 (file)
@@ -92,7 +92,8 @@ set(     BaseMap "defaultMap" )
 
 ##| Layer additonal .kll maps on the BaseMap, layers are in order from 1st to nth
 ##| Can be set to ""
-set(  DefaultMap "colemak stdFuncMap" )
+set(  DefaultMap "stdFuncMap" )
+#set(  DefaultMap "colemak stdFuncMap" )
 
 ##| ParitalMaps available on top of the BaseMap. See above for syntax on specifying multiple layers vs. layering
 ##| Can be set to ""
index 18a3f4f9b76ef53e63553ffabc9a6d98b86bdcaa..2a2f502127d8518920986f9ecf8e16b57d48cd64 100644 (file)
@@ -29,8 +29,8 @@
 // ----- Defines -----
 
 // You can change these to give your code its own name.
-#define STR_MANUFACTURER       L"@MANUFACTURER@"
-#define STR_PRODUCT            L"Keyboard - @ScanModule@ @MacroModule@ @OutputModule@ @DebugModule@"
+#define STR_MANUFACTURER        L"@MANUFACTURER@"
+#define STR_PRODUCT             L"Keyboard - @ScanModule@ @MacroModule@ @OutputModule@ @DebugModule@"
 #define STR_SERIAL              L"@GitLastCommitDate@"
 
 
index 7ac7547174ccb5c4d9d2634241313eb58f403b09..2549ce9b91ceaddb593e62028ae87f99b51603dd 100644 (file)
@@ -75,7 +75,7 @@ static uint8_t device_qualifier_descriptor[] = {
         DEVICE_SUBCLASS,                        // bDeviceSubClass
         DEVICE_PROTOCOL,                        // bDeviceProtocol
         EP0_SIZE,                               // bMaxPacketSize0
-       1,                                      // bNumOtherSpeedConfigurations
+       0,                                      // bNumOtherSpeedConfigurations
        0                                       // bReserved
        */
 };
@@ -311,7 +311,7 @@ static uint8_t config_descriptor[CONFIG_DESC_SIZE] = {
         NUM_INTERFACE,                          // bNumInterfaces
         1,                                      // bConfigurationValue
         0,                                      // iConfiguration
-        0xC0,                                   // bmAttributes
+        0xA0,                                   // bmAttributes
         250,                                    // bMaxPower
 
 // --- Keyboard HID --- Boot Mode Keyboard Interface
@@ -386,7 +386,7 @@ static uint8_t config_descriptor[CONFIG_DESC_SIZE] = {
         0x02,                                   // bFunctionClass
         0x02,                                   // bFunctionSubClass
         0x01,                                   // bFunctionProtocol
-        4,                                      // iFunction
+        0,                                      // iFunction
 
 // --- Serial CDC --- CDC Data Interface
 // - 9 bytes -
index 259bc30bdb2e8b51034bdd6390a9af35b2a5b46b..c85923ecc96e9f84635337b0aab86b628282dcf6 100644 (file)
@@ -51,7 +51,7 @@
 #define ENDPOINT_TRANSMIT_AND_RECEIVE  0x1D
 
 
-#define DEVICE_CLASS            0x03 // 0x03 = HID Class
+#define DEVICE_CLASS            0x00 // Keep 0x00 to indicate each sub device will indicate what it is
 #define DEVICE_SUBCLASS         0x00
 #define DEVICE_PROTOCOL         0x00
 #define EP0_SIZE                64
index 7b2c7209cb86b1e3b612b9e1b455574a9ee137a7..8f70827b92cd54e783200a3254edaef350a1462c 100644 (file)
@@ -260,7 +260,7 @@ static const uint8_t PROGMEM device_descriptor[] = {
        18,                                     // bLength
        1,                                      // bDescriptorType
        0x00, 0x02,                             // bcdUSB
-       0x03,                                   // bDeviceClass - 0x03 = HID Class
+       0x00,                                   // bDeviceClass - Composite device, 0x00 is required for Windows
        0,                                      // bDeviceSubClass
        0,                                      // bDeviceProtocol
        ENDPOINT0_SIZE,                         // bMaxPacketSize0