From f7f13a64088cb244ca312aa6edab390269d31cf0 Mon Sep 17 00:00:00 2001 From: Pablo Ramirez Date: Sat, 13 Nov 2021 00:05:27 -0600 Subject: [PATCH] Add Razer Seiren Emote Commits squashed and merge conflicts addressed by Adam Honse --- 60-openrgb.rules | 1 + .../RazerController/RazerController.cpp | 1 + .../RazerController/RazerControllerDetect.cpp | 1 + Controllers/RazerController/RazerDevices.h | 38 +++++++++++++++++++ 4 files changed, 41 insertions(+) diff --git a/60-openrgb.rules b/60-openrgb.rules index b6315c93c..e06be8718 100644 --- a/60-openrgb.rules +++ b/60-openrgb.rules @@ -664,6 +664,7 @@ SUBSYSTEMS=="usb", ATTR{idVendor}=="1532", ATTR{idProduct}=="007e", TAG+="uacces SUBSYSTEMS=="usb", ATTR{idVendor}=="1532", ATTR{idProduct}=="0517", TAG+="uaccess" SUBSYSTEMS=="usb", ATTR{idVendor}=="1532", ATTR{idProduct}=="0518", TAG+="uaccess" SUBSYSTEMS=="usb", ATTR{idVendor}=="1532", ATTR{idProduct}=="0f13", TAG+="uaccess", TAG+="O11_Dynamic_Razer_Ed" +SUBSYSTEMS=="usb", ATTR{idVendor}=="1532", ATTR{idProduct}=="0f1b", TAG+="uaccess", TAG+="Razer_Seiren_Emote" #---------------------------------------------------------------# # Roccat Devices # diff --git a/Controllers/RazerController/RazerController.cpp b/Controllers/RazerController/RazerController.cpp index b0dbfd23e..08b7a6935 100644 --- a/Controllers/RazerController/RazerController.cpp +++ b/Controllers/RazerController/RazerController.cpp @@ -238,6 +238,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_SEIREN_EMOTE_PID: case RAZER_TARTARUS_V2_PID: case RAZER_TIAMAT_71_V2_PID: case RAZER_VIPER_MINI_PID: diff --git a/Controllers/RazerController/RazerControllerDetect.cpp b/Controllers/RazerController/RazerControllerDetect.cpp index fe6084d4b..eab81ab9a 100644 --- a/Controllers/RazerController/RazerControllerDetect.cpp +++ b/Controllers/RazerController/RazerControllerDetect.cpp @@ -351,6 +351,7 @@ REGISTER_HID_DETECTOR_IPU("Razer Core X", Det REGISTER_HID_DETECTOR_IPU("Razer Mouse Bungee V3 Chroma", DetectRazerControllers, RAZER_VID, RAZER_MOUSE_BUNGEE_V3_CHROMA_PID, 0x00, 0x01, 0x02); REGISTER_HID_DETECTOR_IPU("Razer Mouse Dock Chroma", DetectRazerControllers, RAZER_VID, RAZER_MOUSE_DOCK_CHROMA_PID, 0x00, 0x01, 0x02); REGISTER_HID_DETECTOR_IPU("Lian Li O11 Dynamic - Razer Edition", DetectRazerControllers, RAZER_VID, RAZER_O11_DYNAMIC_PID, 0x02, 0x01, 0x02); +REGISTER_HID_DETECTOR_PU ("Razer Seiren Emote", DetectRazerControllers, RAZER_VID, RAZER_SEIREN_EMOTE_PID, 0x0C, 0x01 ); /*-----------------------------------------------------------------------------------------------------*\ | Nommo devices seem to have an issue where interface 1 doesn't show on Linux or MacOS. Due to the way | diff --git a/Controllers/RazerController/RazerDevices.h b/Controllers/RazerController/RazerDevices.h index 32978f49b..1228ff397 100644 --- a/Controllers/RazerController/RazerDevices.h +++ b/Controllers/RazerController/RazerDevices.h @@ -176,6 +176,7 @@ #define RAZER_NOMMO_CHROMA_PID 0x0517 #define RAZER_NOMMO_PRO_PID 0x0518 #define RAZER_O11_DYNAMIC_PID 0x0F13 +#define RAZER_SEIREN_EMOTE_PID 0x0F1B typedef struct { @@ -6817,6 +6818,42 @@ static const razer_device o11_dynamic_device = 0 }; +/*-------------------------------------------------------------*\ +| Razer Seiren Emote 1532:0F1B | +| | +| Zone "8-Bit LED Matrix" | +| Matrix | +| 64 LEDs | +| | +\*-------------------------------------------------------------*/ +static const razer_zone seiren_emote_zone = +{ + "8-Bit LED Matrix", + ZONE_TYPE_MATRIX, + 8, + 8 +}; + +static const razer_device seiren_emote_device = +{ + "Razer Seiren Emote", + RAZER_SEIREN_EMOTE_PID, + DEVICE_TYPE_UNKNOWN, + true, + 4, + 16, + { + &seiren_emote_zone, + NULL, + NULL, + NULL, + NULL, + NULL + }, + NULL, + 0 +}; + /*-------------------------------------------------------------------------*\ | DEVICE MASTER LIST | \*-------------------------------------------------------------------------*/ @@ -6962,4 +6999,5 @@ static const razer_device* device_list[] = &nommo_chroma_device, &nommo_pro_device, &o11_dynamic_device, + &seiren_emote_device, };