From 3146d8def492badcd93b09d806765ace9a5dbb20 Mon Sep 17 00:00:00 2001 From: roycwc Date: Thu, 27 Oct 2022 22:39:57 +0800 Subject: [PATCH] Add Razer Ornata V3 --- .../RazerController/RazerController.cpp | 4 ++ .../RazerController/RazerControllerDetect.cpp | 2 +- Controllers/RazerController/RazerDevices.cpp | 38 +++++++++++++++++++ Controllers/RazerController/RazerDevices.h | 1 + 4 files changed, 44 insertions(+), 1 deletion(-) diff --git a/Controllers/RazerController/RazerController.cpp b/Controllers/RazerController/RazerController.cpp index dc19496e4..9f06f0b6f 100644 --- a/Controllers/RazerController/RazerController.cpp +++ b/Controllers/RazerController/RazerController.cpp @@ -54,6 +54,7 @@ RazerController::RazerController(hid_device* dev_handle, hid_device* dev_argb_ha case RAZER_BLADE_2021_BASE_V2_PID: case RAZER_CYNOSA_V2_PID: case RAZER_ORNATA_CHROMA_V2_PID: + case RAZER_ORNATA_V3_PID: case RAZER_TARTARUS_CHROMA_PID: case RAZER_TARTARUS_PRO_PID: case RAZER_TARTARUS_V2_PID: @@ -166,6 +167,7 @@ RazerController::RazerController(hid_device* dev_handle, hid_device* dev_argb_ha case RAZER_HUNTSMAN_V2_PID: case RAZER_ORNATA_CHROMA_PID: case RAZER_ORNATA_CHROMA_V2_PID: + case RAZER_ORNATA_V3_PID: case RAZER_CORE_PID: case RAZER_FIREFLY_PID: default: @@ -287,6 +289,7 @@ RazerController::RazerController(hid_device* dev_handle, hid_device* dev_argb_ha case RAZER_O11_DYNAMIC_PID: case RAZER_ORNATA_CHROMA_PID: case RAZER_ORNATA_CHROMA_V2_PID: + case RAZER_ORNATA_V3_PID: case RAZER_SEIREN_EMOTE_PID: case RAZER_STRIDER_CHROMA_PID: case RAZER_TARTARUS_PRO_PID: @@ -575,6 +578,7 @@ bool RazerController::SupportsWave() case RAZER_DEATHSTALKER_CHROMA_PID: case RAZER_ORNATA_CHROMA_PID: case RAZER_ORNATA_CHROMA_V2_PID: + case RAZER_ORNATA_V3_PID: case RAZER_HUNTSMAN_PID: case RAZER_HUNTSMAN_ELITE_PID: case RAZER_HUNTSMAN_MINI_PID: diff --git a/Controllers/RazerController/RazerControllerDetect.cpp b/Controllers/RazerController/RazerControllerDetect.cpp index afcd1fcbe..722f50c96 100644 --- a/Controllers/RazerController/RazerControllerDetect.cpp +++ b/Controllers/RazerController/RazerControllerDetect.cpp @@ -269,7 +269,7 @@ REGISTER_HID_DETECTOR_IPU("Razer Huntsman V2 TKL", Det REGISTER_HID_DETECTOR_IPU("Razer Huntsman V2", DetectRazerControllers, RAZER_VID, RAZER_HUNTSMAN_V2_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); - +REGISTER_HID_DETECTOR_IPU("Razer Ornata V3", DetectRazerControllers, RAZER_VID, RAZER_ORNATA_V3_PID, 0x02, 0x01, 0x02); /*-----------------------------------------------------------------------------------------------------*\ | Laptops | \*-----------------------------------------------------------------------------------------------------*/ diff --git a/Controllers/RazerController/RazerDevices.cpp b/Controllers/RazerController/RazerDevices.cpp index d8ec36684..867aa8618 100644 --- a/Controllers/RazerController/RazerDevices.cpp +++ b/Controllers/RazerController/RazerDevices.cpp @@ -3140,6 +3140,43 @@ static const razer_device ornata_chroma_device = ORNATA_CHROMA_KEYMAP_SIZE }; + +/*-------------------------------------------------------------*\ +| Razer Ornata V3 | +| | +| Zone "Keyboard" | +| Linear | +| 10 LEDs | +\*-------------------------------------------------------------*/ +static const razer_zone ornata_v3_zone = +{ + ZONE_EN_KEYBOARD, + ZONE_TYPE_LINEAR, + 1, + 10 +}; + +static const razer_device ornata_v3_device = +{ + "Razer Ornata V3", + RAZER_ORNATA_V3_PID, + DEVICE_TYPE_KEYBOARD, + false, + 1, + 10, + { + &ornata_v3_zone, + NULL, + NULL, + NULL, + NULL, + NULL + }, + NULL, + 0 +}; + + /*-------------------------------------------------------------*\ | Razer DeathStalker Chroma | | | @@ -8116,6 +8153,7 @@ const razer_device* razer_device_list[] = &huntsman_v2_analog_device, &huntsman_v2_tkl_device, &ornata_chroma_device, + &ornata_v3_device, /*-----------------------------------------------------------------*\ | LAPTOPS | \*-----------------------------------------------------------------*/ diff --git a/Controllers/RazerController/RazerDevices.h b/Controllers/RazerController/RazerDevices.h index 70f3250d9..c865fa95e 100644 --- a/Controllers/RazerController/RazerDevices.h +++ b/Controllers/RazerController/RazerDevices.h @@ -97,6 +97,7 @@ #define RAZER_ORBWEAVER_CHROMA_PID 0x0207 #define RAZER_ORNATA_CHROMA_PID 0x021E #define RAZER_ORNATA_CHROMA_V2_PID 0x025D +#define RAZER_ORNATA_V3_PID 0x028F #define RAZER_TARTARUS_CHROMA_PID 0x0208 #define RAZER_TARTARUS_PRO_PID 0x0244 #define RAZER_TARTARUS_V2_PID 0x022B