Skip to content

Commit 8499043

Browse files
committed
support for asus tuf k3 gen2
# Conflicts: # Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/AsusAuraTUFKeyboardController.cpp # Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/AsusAuraTUFKeyboardController.h # Controllers/AsusAuraUSBController/AsusAuraUSBControllerDetect.cpp
1 parent d0d9f04 commit 8499043

5 files changed

Lines changed: 147 additions & 0 deletions

File tree

Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/AsusAuraTUFKeyboardController.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ std::string AuraTUFKeyboardController::GetVersion()
100100
case AURA_ROG_AZOTH_USB_PID:
101101
case AURA_ROG_AZOTH_2_4_PID:
102102
case AURA_TUF_K3_GAMING_PID:
103+
case AURA_TUF_K3_GAMING_GEN_II_PID:
103104
case AURA_TUF_K3_GAMING_GEN2_PID:
104105
case AURA_ROG_STRIX_FLARE_II_ANIMATE_PID:
105106
case AURA_ROG_STRIX_SCOPE_NX_WIRELESS_DELUXE_USB_PID:

Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/AsusAuraTUFKeyboardController.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ enum
5555
AURA_ROG_STRIX_SCOPE_II_96_RX_WIRELESS_USB_PID = 0x1B78,
5656
AURA_TUF_K1_GAMING_PID = 0x1945,
5757
AURA_TUF_K3_GAMING_PID = 0x194B,
58+
AURA_TUF_K3_GAMING_GEN_II_PID = 0x1B30,
5859
AURA_TUF_K3_GAMING_GEN2_PID = 0x1B30,
5960
AURA_TUF_K5_GAMING_PID = 0x1899,
6061
AURA_TUF_K7_GAMING_PID = 0x18AA,

Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/AsusAuraTUFKeyboardLayouts.h

Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -325,6 +325,16 @@ static unsigned int ASUS_TUF_K1_LAYOUT_KEYS[1][5] =
325325
{ 0, 1, 2, 3, 4 },
326326
};
327327

328+
static unsigned int ASUS_TUF_K3_GAMING_GEN_II_LAYOUT_KEYS_ANSI[6][19] =
329+
{
330+
{ 0, NA, 8, 14, 19, 24, NA, 34, 39, 44, 49, 55, 61, 66, 71, 75, 81, 87, 93 },
331+
{ 1, 6, 9, 15, 20, 25, 29, 35, 40, 45, 50, 56, 62, 67, NA, 76, 82, 88, 94 },
332+
{ 2, NA, 10, 16, 21, 26, 30, 36, 41, 46, 51, 57, 63, 68, 72, 77, 83, 89, 95 },
333+
{ 3, NA, 11, 17, 22, 27, 31, 37, 42, 47, 52, 58, 64, 69, NA, 78, 84, 90, NA },
334+
{ 4, NA, 12, 18, 23, 28, 32, 38, 43, 48, 53, 59, 65, NA, 73, 79, 85, 91, 96 },
335+
{ 5, 7, 13, NA, NA, NA, 33, NA, NA, NA, 54, 60, NA, 70, 74, 80, 86, 92, NA }
336+
};
337+
328338
static std::map<int,layout_info> AsusTUFK7Layouts =
329339
{
330340
{
@@ -3735,3 +3745,133 @@ static std::map<int,layout_info> AsusTufK1Layouts =
37353745
}
37363746
},
37373747
};
3748+
3749+
static std::map<int,layout_info> AsusTUFK3GamingGen2Layouts =
3750+
{
3751+
{
3752+
ASUS_TUF_K7_LAYOUT_US,
3753+
{
3754+
*ASUS_TUF_K3_GAMING_GEN_II_LAYOUT_KEYS_ANSI,
3755+
97,
3756+
6,
3757+
19,
3758+
{
3759+
{ KEY_EN_ESCAPE, 0x00 },
3760+
{ KEY_EN_BACK_TICK, 0x01 },
3761+
{ KEY_EN_TAB, 0x02 },
3762+
{ KEY_EN_CAPS_LOCK, 0x03 },
3763+
{ KEY_EN_LEFT_SHIFT, 0x04 },
3764+
{ KEY_EN_LEFT_CONTROL, 0x05 },
3765+
3766+
{ KEY_EN_1, 0x09 },
3767+
{ KEY_EN_LEFT_WINDOWS, 0x0D },
3768+
3769+
{ KEY_EN_F1, 0x10 },
3770+
{ KEY_EN_2, 0x11 },
3771+
{ KEY_EN_Q, 0x0A },
3772+
{ KEY_EN_A, 0x0B },
3773+
{ KEY_EN_Z, 0x14 },
3774+
{ KEY_EN_LEFT_ALT, 0x15 },
3775+
3776+
{ KEY_EN_F2, 0x18 },
3777+
{ KEY_EN_3, 0x19 },
3778+
{ KEY_EN_W, 0x12 },
3779+
{ KEY_EN_S, 0x13 },
3780+
{ KEY_EN_X, 0x1C },
3781+
3782+
{ KEY_EN_F3, 0x20 },
3783+
{ KEY_EN_4, 0x21 },
3784+
{ KEY_EN_E, 0x1A },
3785+
{ KEY_EN_D, 0x1B },
3786+
{ KEY_EN_C, 0x24 },
3787+
3788+
{ KEY_EN_F4, 0x28 },
3789+
{ KEY_EN_5, 0x29 },
3790+
{ KEY_EN_R, 0x22 },
3791+
{ KEY_EN_F, 0x23 },
3792+
{ KEY_EN_V, 0x2C },
3793+
3794+
{ KEY_EN_6, 0x31 },
3795+
{ KEY_EN_T, 0x2A },
3796+
{ KEY_EN_G, 0x2B },
3797+
{ KEY_EN_B, 0x34 },
3798+
{ KEY_EN_SPACE, 0x35 },
3799+
3800+
{ KEY_EN_F5, 0x30 },
3801+
{ KEY_EN_7, 0x39 },
3802+
{ KEY_EN_Y, 0x32 },
3803+
{ KEY_EN_H, 0x33 },
3804+
{ KEY_EN_N, 0x3C },
3805+
3806+
{ KEY_EN_F6, 0x38 },
3807+
{ KEY_EN_8, 0x41 },
3808+
{ KEY_EN_U, 0x3A },
3809+
{ KEY_EN_J, 0x3B },
3810+
{ KEY_EN_M, 0x44 },
3811+
3812+
{ KEY_EN_F7, 0x40 },
3813+
{ KEY_EN_9, 0x49 },
3814+
{ KEY_EN_I, 0x42 },
3815+
{ KEY_EN_K, 0x43 },
3816+
{ KEY_EN_COMMA, 0x4C },
3817+
3818+
{ KEY_EN_F8, 0x48 },
3819+
{ KEY_EN_0, 0x51 },
3820+
{ KEY_EN_O, 0x4A },
3821+
{ KEY_EN_L, 0x4B },
3822+
{ KEY_EN_PERIOD, 0x54 },
3823+
{ KEY_EN_RIGHT_FUNCTION, 0x55 },
3824+
3825+
{ KEY_EN_F9, 0x58 },
3826+
{ KEY_EN_MINUS, 0x59 },
3827+
{ KEY_EN_P, 0x52 },
3828+
{ KEY_EN_SEMICOLON, 0x53 },
3829+
{ KEY_EN_FORWARD_SLASH, 0x5C },
3830+
{ KEY_EN_RIGHT_CONTROL, 0x5D },
3831+
3832+
{ KEY_EN_F10, 0x60 },
3833+
{ KEY_EN_EQUALS, 0x61 },
3834+
{ KEY_EN_LEFT_BRACKET, 0x5A },
3835+
{ KEY_EN_QUOTE, 0x5B },
3836+
{ KEY_EN_RIGHT_SHIFT, 0x6C },
3837+
3838+
{ KEY_EN_F11, 0x68 },
3839+
{ KEY_EN_BACKSPACE, 0x71 },
3840+
{ KEY_EN_RIGHT_BRACKET, 0x62 },
3841+
{ KEY_EN_ANSI_ENTER, 0x73 },
3842+
{ KEY_EN_LEFT_ARROW, 0x6D },
3843+
3844+
{ KEY_EN_F12, 0x70 },
3845+
{ KEY_EN_ANSI_BACK_SLASH, 0x72 },
3846+
{ KEY_EN_UP_ARROW, 0x74 },
3847+
{ KEY_EN_DOWN_ARROW, 0x75 },
3848+
3849+
{ KEY_EN_DELETE, 0x80 },
3850+
{ KEY_EN_NUMPAD_LOCK, 0x79 },
3851+
{ KEY_EN_NUMPAD_7, 0x7A },
3852+
{ KEY_EN_NUMPAD_4, 0x7B },
3853+
{ KEY_EN_NUMPAD_1, 0x7C },
3854+
{ KEY_EN_RIGHT_ARROW, 0x7D },
3855+
3856+
{ KEY_EN_INSERT, 0x78 },
3857+
{ KEY_EN_NUMPAD_DIVIDE, 0x81 },
3858+
{ KEY_EN_NUMPAD_8, 0x82 },
3859+
{ KEY_EN_NUMPAD_5, 0x83 },
3860+
{ KEY_EN_NUMPAD_2, 0x84 },
3861+
{ KEY_EN_NUMPAD_0, 0x85 },
3862+
3863+
{ KEY_EN_PAGE_UP, 0x88 },
3864+
{ KEY_EN_NUMPAD_TIMES, 0x89 },
3865+
{ KEY_EN_NUMPAD_9, 0x8A },
3866+
{ KEY_EN_NUMPAD_6, 0x8B },
3867+
{ KEY_EN_NUMPAD_3, 0x8C },
3868+
{ KEY_EN_NUMPAD_PERIOD, 0x8D },
3869+
3870+
{ KEY_EN_PAGE_DOWN, 0x90 },
3871+
{ KEY_EN_NUMPAD_MINUS, 0x91 },
3872+
{ KEY_EN_NUMPAD_PLUS, 0x92 },
3873+
{ KEY_EN_NUMPAD_ENTER, 0x94 }
3874+
}
3875+
}
3876+
}
3877+
};

Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/RGBController_AsusAuraTUFKeyboard.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -484,6 +484,9 @@ void RGBController_AuraTUFKeyboard::SetupZones()
484484
case AURA_TUF_K5_GAMING_PID:
485485
keyboard_ptr = &AsusTufK1Layouts;
486486
break;
487+
case AURA_TUF_K3_GAMING_GEN_II_PID:
488+
keyboard_ptr = &AsusTUFK3GamingGen2Layouts;
489+
break;
487490
default:
488491
keyboard_ptr = &AsusTUFK7Layouts;
489492
}

Controllers/AsusAuraUSBController/AsusAuraUSBControllerDetect.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@
8080
#define AURA_TUF_K1_GAMING_PID 0x1945
8181
#define AURA_TUF_K3_GAMING_PID 0x194B
8282
#define AURA_TUF_K3_GAMING_GEN2_PID 0x1B30
83+
#define AURA_TUF_K3_GAMING_GEN_II_PID 0x1B30
8384
#define AURA_TUF_K5_GAMING_PID 0x1899
8485
#define AURA_TUF_K7_GAMING_PID 0x18AA
8586
#define AURA_TUF_K3_GENII_MIKU_EDITION_PID 0x1C5E
@@ -378,6 +379,7 @@ REGISTER_HID_DETECTOR_IP("ASUS ROG Strix Scope II 96 RX Wireless USB", Dete
378379
REGISTER_HID_DETECTOR_IP("ASUS TUF Gaming K1", DetectAsusAuraTUFUSBKeyboard, AURA_USB_VID, AURA_TUF_K1_GAMING_PID, 2, 0xFF00);
379380
REGISTER_HID_DETECTOR_IP("ASUS TUF Gaming K3", DetectAsusAuraTUFUSBKeyboard, AURA_USB_VID, AURA_TUF_K3_GAMING_PID, 1, 0xFF00);
380381
REGISTER_HID_DETECTOR_IP("ASUS TUF Gaming K3 GEN II", DetectAsusAuraTUFUSBKeyboard, AURA_USB_VID, AURA_TUF_K3_GAMING_GEN2_PID, 1, 0xFF00);
382+
REGISTER_HID_DETECTOR_IP("ASUS TUF Gaming K3 GEN II", DetectAsusAuraTUFUSBKeyboard, AURA_USB_VID, AURA_TUF_K3_GAMING_GEN_II_PID, 1, 0xFF00);
381383
REGISTER_HID_DETECTOR_IP("ASUS TUF Gaming K5", DetectAsusAuraTUFUSBKeyboard, AURA_USB_VID, AURA_TUF_K5_GAMING_PID, 2, 0xFF00);
382384
REGISTER_HID_DETECTOR_IP("ASUS TUF Gaming K7", DetectAsusAuraTUFUSBKeyboard, AURA_USB_VID, AURA_TUF_K7_GAMING_PID, 1, 0xFF00);
383385
REGISTER_HID_DETECTOR_IP("ASUS TUF Gaming K3 GEN II MIKU EDITION", DetectAsusAuraTUFUSBKeyboard, AURA_USB_VID, AURA_TUF_K3_GENII_MIKU_EDITION_PID, 1, 0xFF00);

0 commit comments

Comments
 (0)