Initial commit for the Corsair K60 Pro TKL keyboard

* Adding key layout and metadata to CorsairPeripheralV2Devices.cpp
* Adding new detector
* Resolves #3689
This commit is contained in:
Chris M 2023-10-25 06:54:44 +11:00
parent ce4dd7ff87
commit 759be39fc7
3 changed files with 52 additions and 0 deletions

View file

@ -60,6 +60,7 @@ void DetectCorsairV2SoftwareControllers(hid_device_info* info, const std::string
REGISTER_HID_DETECTOR_IP("Corsair K55 RGB PRO", DetectCorsairV2SoftwareControllers, CORSAIR_VID, CORSAIR_K55_RGB_PRO_PID, 1, 0xFF42);
REGISTER_HID_DETECTOR_IP("Corsair K60 RGB PRO", DetectCorsairV2SoftwareControllers, CORSAIR_VID, CORSAIR_K60_RGB_PRO_PID, 1, 0xFF42);
REGISTER_HID_DETECTOR_IP("Corsair K60 RGB PRO Low Profile", DetectCorsairV2SoftwareControllers, CORSAIR_VID, CORSAIR_K60_RGB_PRO_LP_PID, 1, 0xFF42);
REGISTER_HID_DETECTOR_IP("Corsair K60 RGB PRO TKL", DetectCorsairV2HardwareControllers, CORSAIR_VID, CORSAIR_K60_RGB_PRO_TKL_PID, 1, 0xFF42);
REGISTER_HID_DETECTOR_IP("Corsair K70 RGB TKL", DetectCorsairV2HardwareControllers, CORSAIR_VID, CORSAIR_K70_RGB_TKL_PID, 1, 0xFF42);
REGISTER_HID_DETECTOR_IP("Corsair K70 RGB TKL Champion Series", DetectCorsairV2HardwareControllers, CORSAIR_VID, CORSAIR_K70_RGB_TKL_CS_PID, 1, 0xFF42);

View file

@ -56,6 +56,23 @@ keyboard_keymap_overlay_values corsair_K60_layout
}
};
keyboard_keymap_overlay_values corsair_K60_tkl_layout
{
KEYBOARD_SIZE::KEYBOARD_SIZE_TKL,
{
corsair_tkl_values,
{
/* Add more regional layout fixes here */
}
},
{
/*---------------------------------------------------------------------------------------------------------*\
| Edit Keys |
| Zone, Row, Column, Value, Key, OpCode, |
\*---------------------------------------------------------------------------------------------------------*/
}
};
keyboard_keymap_overlay_values corsair_K70_TKL_cs_layout
{
KEYBOARD_SIZE::KEYBOARD_SIZE_TKL,
@ -424,6 +441,38 @@ static const corsair_v2_device k60_rgb_pro_lp_device =
&corsair_K60_layout
};
/*-------------------------------------------------------------*\
| Corsair K60 RGB Pro TKL 1B1C:1BC7 |
| |
| Zone "Keyboard" |
| Matrix |
| 6 Rows, 21 Columns |
\*-------------------------------------------------------------*/
static const corsair_v2_zone k60_rgb_pro_tkl_zone =
{
ZONE_EN_KEYBOARD,
ZONE_TYPE_MATRIX,
6,
21
};
static const corsair_v2_device k60_rgb_pro_tkl_device =
{
CORSAIR_K60_RGB_PRO_TKL_PID,
DEVICE_TYPE_KEYBOARD,
6,
21,
{
&k60_rgb_pro_lp_zone,
nullptr,
nullptr,
nullptr,
nullptr,
nullptr
},
&corsair_K60_tkl_layout
};
/*-------------------------------------------------------------*\
| Corsair K70 RGB TKL 1B1C:1B73 |
| |
@ -635,6 +684,7 @@ const corsair_v2_device* corsair_v2_device_list_data[] =
&k55_rgb_pro_device,
&k60_rgb_pro_device,
&k60_rgb_pro_lp_device,
&k60_rgb_pro_tkl_device,
&k70_rgb_tkl_device,
&k70_rgb_tkl_cs_device,

View file

@ -62,6 +62,7 @@ typedef struct
#define CORSAIR_K55_RGB_PRO_PID 0x1BA4
#define CORSAIR_K60_RGB_PRO_PID 0x1BA0
#define CORSAIR_K60_RGB_PRO_LP_PID 0x1BAD
#define CORSAIR_K60_RGB_PRO_TKL_PID 0x1BC7
#define CORSAIR_K70_RGB_TKL_PID 0x1B73
#define CORSAIR_K70_RGB_TKL_CS_PID 0x1BB9