Adding Turtle Beach Vulcan II support

This commit is contained in:
Lobo Tommy 2024-11-07 14:45:14 +00:00 committed by Adam Honse
parent 2a8fdc486b
commit 986b21e02b
4 changed files with 9 additions and 0 deletions

View file

@ -33,6 +33,7 @@
#include <unordered_set>
#define ROCCAT_VID 0x1E7D
#define TURTLE_BEACH_VID 0x10F5
/*--------------------------------------------------------------------------------*\
| KEYBOARDS |
@ -119,6 +120,7 @@ void DetectRoccatVulcanKeyboardControllers(hid_device_info* info, const std::str
case ROCCAT_MAGMA_PID:
case ROCCAT_MAGMA_MINI_PID:
case ROCCAT_VULCAN_II_PID:
case TURTLE_BEACH_VULCAN_II_PID:
dev_led_page = 0xFF00;
dev_ctrl_page = 0xFF01;
break;
@ -320,6 +322,7 @@ REGISTER_HID_DETECTOR_IP ("Roccat Vulcan 120-Series Aimo", DetectRoccatVulcanKe
REGISTER_HID_DETECTOR_IP ("Roccat Vulcan TKL", DetectRoccatVulcanKeyboardControllers, ROCCAT_VID, ROCCAT_VULCAN_TKL_PID, 1, 11);
REGISTER_HID_DETECTOR_IP ("Roccat Vulcan Pro", DetectRoccatVulcanKeyboardControllers, ROCCAT_VID, ROCCAT_VULCAN_PRO_PID, 1, 0xFF01);
REGISTER_HID_DETECTOR_IP ("Roccat Vulcan II", DetectRoccatVulcanKeyboardControllers, ROCCAT_VID, ROCCAT_VULCAN_II_PID, 1, 0xFF01);
REGISTER_HID_DETECTOR_IP ("Turtle Beach Vulcan II", DetectRoccatVulcanKeyboardControllers, TURTLE_BEACH_VID, TURTLE_BEACH_VULCAN_II_PID, 1, 0xFF01);
/*-----------------------------------------------------------------*\
| MICE |

View file

@ -119,6 +119,7 @@ void RGBController_RoccatVulcanKeyboard::SetupZones()
keyboard_ptr = &RoccatPyroLayouts;
break;
case ROCCAT_VULCAN_II_PID:
case TURTLE_BEACH_VULCAN_II_PID:
keyboard_ptr = &RoccatVulcanIILayouts;
break;
case ROCCAT_MAGMA_PID:

View file

@ -63,6 +63,7 @@ device_info RoccatVulcanKeyboardController::InitDeviceInfo()
case ROCCAT_MAGMA_MINI_PID:
case ROCCAT_VULCAN_PRO_PID:
case ROCCAT_VULCAN_II_PID:
case TURTLE_BEACH_VULCAN_II_PID:
packet_length = 9;
report_id = 0x09;
break;
@ -117,6 +118,7 @@ void RoccatVulcanKeyboardController::EnableDirect(bool on_off_switch)
case ROCCAT_MAGMA_MINI_PID:
case ROCCAT_VULCAN_PRO_PID:
case ROCCAT_VULCAN_II_PID:
case TURTLE_BEACH_VULCAN_II_PID:
buf = new uint8_t[5] { 0x0E, 0x05, on_off_switch, 0x00, 0x00 };
hid_send_feature_report(dev_ctrl, buf, 5);
break;
@ -152,6 +154,7 @@ void RoccatVulcanKeyboardController::SendColors(std::vector<led_color> colors)
protocol_version = 2;
break;
case ROCCAT_VULCAN_II_PID:
case TURTLE_BEACH_VULCAN_II_PID:
packet_length = 396;
column_length = 1;
protocol_version = 2;
@ -285,6 +288,7 @@ void RoccatVulcanKeyboardController::SendMode(unsigned int mode, unsigned int sp
column_length = 12;
break;
case ROCCAT_VULCAN_II_PID:
case TURTLE_BEACH_VULCAN_II_PID:
protocol_version = 2;
packet_length = 377;
column_length = 1;

View file

@ -28,6 +28,7 @@
#define ROCCAT_PYRO_PID 0x314C
#define ROCCAT_MAGMA_PID 0x3124
#define ROCCAT_MAGMA_MINI_PID 0x69A0
#define TURTLE_BEACH_VULCAN_II_PID 0x501B
enum
{