Initial commit for Razer Huntsman V3 Pro

* Adding PID 0x02A6 for the Huntsman V3 Pro
* Added metadata to RazerDevices.cpp
* Registered detectors
* Added capabilities to RazerController.cpp
* Resolves #4477
This commit is contained in:
Chris M 2024-12-21 15:27:00 +11:00
parent 1eb8ac2e19
commit 220f1e6d1f
4 changed files with 66 additions and 0 deletions

View file

@ -154,6 +154,7 @@ RazerController::RazerController(hid_device* dev_handle, hid_device* dev_argb_ha
case RAZER_HUNTSMAN_V2_ANALOG_PID:
case RAZER_HUNTSMAN_V2_TKL_PID:
case RAZER_HUNTSMAN_V2_PID:
case RAZER_HUNTSMAN_V3_PRO_PID:
case RAZER_HUNTSMAN_V3_PRO_TKL_WHITE_PID:
case RAZER_ORNATA_CHROMA_PID:
case RAZER_ORNATA_CHROMA_V2_PID:
@ -446,6 +447,7 @@ bool RazerController::SupportsWave()
case RAZER_HUNTSMAN_V2_ANALOG_PID:
case RAZER_HUNTSMAN_V2_TKL_PID:
case RAZER_HUNTSMAN_V2_PID:
case RAZER_HUNTSMAN_V3_PRO_PID:
case RAZER_HUNTSMAN_V3_PRO_TKL_WHITE_PID:
case RAZER_ORBWEAVER_CHROMA_PID:
case RAZER_TARTARUS_PRO_PID:

View file

@ -189,6 +189,7 @@ REGISTER_HID_DETECTOR_IPU("Razer Huntsman Tournament Edition", Det
REGISTER_HID_DETECTOR_IPU("Razer Huntsman V2 Analog", DetectRazerControllers, RAZER_VID, RAZER_HUNTSMAN_V2_ANALOG_PID, 0x03, 0x0C, 0x01);
REGISTER_HID_DETECTOR_IPU("Razer Huntsman V2 TKL", DetectRazerControllers, RAZER_VID, RAZER_HUNTSMAN_V2_TKL_PID, 0x03, 0x0C, 0x01);
REGISTER_HID_DETECTOR_IPU("Razer Huntsman V2", DetectRazerControllers, RAZER_VID, RAZER_HUNTSMAN_V2_PID, 0x03, 0x0C, 0x01);
REGISTER_HID_DETECTOR_IPU("Razer Huntsman V3 Pro", DetectRazerControllers, RAZER_VID, RAZER_HUNTSMAN_V3_PRO_PID, 0x03, 0x0C, 0x01);
REGISTER_HID_DETECTOR_IPU("Razer Huntsman V3 Pro TKL White", DetectRazerControllers, RAZER_VID, RAZER_HUNTSMAN_V3_PRO_TKL_WHITE_PID, 0x03, 0x0C, 0x01);
REGISTER_HID_DETECTOR_IPU("Razer Ornata Chroma", DetectRazerControllers, RAZER_VID, RAZER_ORNATA_CHROMA_PID, 0x02, 0x01, 0x02);
REGISTER_HID_DETECTOR_IPU("Razer Ornata Chroma V2", DetectRazerControllers, RAZER_VID, RAZER_ORNATA_CHROMA_V2_PID, 0x02, 0x01, 0x02);

View file

@ -980,6 +980,32 @@ keyboard_keymap_overlay_values razer_huntsman_v2_tkl_layout
}
};
keyboard_keymap_overlay_values razer_huntsman_v3_pro_layout
{
KEYBOARD_SIZE::KEYBOARD_SIZE_FULL,
{
{ /* ANSI Value set not used */ },
{
/* Add more regional layout fixes here */
}
},
{
/*---------------------------------------------------------------------------------------------------------*\
| Edit Keys |
| Zone, Row, Column, Value, Key, OpCode, |
\*---------------------------------------------------------------------------------------------------------*/
{ 0, 0, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, },
{ 0, 0, 18, 0, "Media group", KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, },
{ 0, 0, 20, 0, "Media: Volume Dial", KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, },
{ 0, 1, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, },
{ 0, 2, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, },
{ 0, 3, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, },
{ 0, 4, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, },
{ 0, 5, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, },
{ 0, 5, 17, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT, },
}
};
keyboard_keymap_overlay_values razer_huntsman_v3_pro_tkl_layout
{
KEYBOARD_SIZE::KEYBOARD_SIZE_TKL,
@ -2706,6 +2732,41 @@ static const razer_device huntsman_v2_device =
&razer_huntsman_v2_layout
};
/*-------------------------------------------------------------*\
| Razer Huntsman V3 Pro 1532:02A6 |
| |
| Zone "Keyboard" |
| Matrix |
| 6 Rows, 22 Columns |
\*-------------------------------------------------------------*/
static const razer_zone huntsman_v3_pro_keyboard_zone =
{
ZONE_EN_KEYBOARD,
ZONE_TYPE_MATRIX,
6,
22
};
static const razer_device huntsman_v3_pro_device =
{
"Razer Huntsman V3 Pro",
RAZER_HUNTSMAN_V3_PRO_PID,
DEVICE_TYPE_KEYBOARD,
RAZER_MATRIX_TYPE_EXTENDED,
0x3F,
6,
22,
{
&huntsman_v3_pro_keyboard_zone,
NULL,
NULL,
NULL,
NULL,
NULL
},
&razer_huntsman_v3_pro_layout
};
/*-------------------------------------------------------------*\
| Razer Huntsman V3 Pro TKL White 1532:02A7 |
| |
@ -8498,6 +8559,7 @@ const razer_device* razer_device_list[] =
&huntsman_v2_device,
&huntsman_v2_analog_device,
&huntsman_v2_tkl_device,
&huntsman_v3_pro_device,
&huntsman_v3_pro_tkl_device,
&ornata_chroma_device,
&ornata_chroma_v2_device,

View file

@ -114,6 +114,7 @@
#define RAZER_HUNTSMAN_V2_ANALOG_PID 0x0266
#define RAZER_HUNTSMAN_V2_TKL_PID 0x026B
#define RAZER_HUNTSMAN_V2_PID 0x026C
#define RAZER_HUNTSMAN_V3_PRO_PID 0x02A6
#define RAZER_HUNTSMAN_V3_PRO_TKL_WHITE_PID 0x02A7
#define RAZER_ORBWEAVER_CHROMA_PID 0x0207
#define RAZER_ORNATA_CHROMA_PID 0x021E