From d6386c397742cfb3919719c43ef22c7cff098212 Mon Sep 17 00:00:00 2001 From: IceStormNG Date: Thu, 1 Feb 2024 13:37:23 +0100 Subject: [PATCH] Support for ROG Strix Impact III (P518) (#2012) * Support for Strix Carry (P508) * Fixes polling rate, angle snapping and debounce for Gladius II Origin. * The Gen2 version of the TuF M3 uses 0-100 for brightness. * Adds support for ROG Strix Impact III (P518) --- .../Mouse/Models/StrixImpactIII.cs | 77 +++++++++++++++++++ app/Peripherals/PeripheralsProvider.cs | 1 + 2 files changed, 78 insertions(+) create mode 100644 app/Peripherals/Mouse/Models/StrixImpactIII.cs diff --git a/app/Peripherals/Mouse/Models/StrixImpactIII.cs b/app/Peripherals/Mouse/Models/StrixImpactIII.cs new file mode 100644 index 00000000..95df3de3 --- /dev/null +++ b/app/Peripherals/Mouse/Models/StrixImpactIII.cs @@ -0,0 +1,77 @@ +namespace GHelper.Peripherals.Mouse.Models +{ + //P518 + public class StrixImpactIII : AsusMouse + { + public StrixImpactIII() : base(0x0B05, 0x1A88, "mi_00", false) + { + } + + + public override int DPIProfileCount() + { + return 4; + } + + public override string GetDisplayName() + { + return "ROG Strix Impact III"; + } + + + public override PollingRate[] SupportedPollingrates() + { + return new PollingRate[] { + PollingRate.PR125Hz, + PollingRate.PR250Hz, + PollingRate.PR500Hz, + PollingRate.PR1000Hz + }; + } + + public override int ProfileCount() + { + return 3; + } + + public override int MaxDPI() + { + return 12_000; + } + + public override bool HasRGB() + { + return true; + } + + public override LightingZone[] SupportedLightingZones() + { + return new LightingZone[] { LightingZone.Logo, LightingZone.Scrollwheel }; + } + + public override bool IsLightingModeSupported(LightingMode lightingMode) + { + return lightingMode == LightingMode.Static + || lightingMode == LightingMode.Breathing + || lightingMode == LightingMode.ColorCycle + || lightingMode == LightingMode.React + || lightingMode == LightingMode.Off; + } + + + public override bool HasBattery() + { + return false; + } + + public override bool HasAngleSnapping() + { + return true; + } + + public override bool HasLowBatteryWarning() + { + return false; + } + } +} diff --git a/app/Peripherals/PeripheralsProvider.cs b/app/Peripherals/PeripheralsProvider.cs index 28b5c3af..bfef7896 100644 --- a/app/Peripherals/PeripheralsProvider.cs +++ b/app/Peripherals/PeripheralsProvider.cs @@ -214,6 +214,7 @@ namespace GHelper.Peripherals DetectMouse(new ChakramCore()); DetectMouse(new SpathaX()); DetectMouse(new StrixCarry()); + DetectMouse(new StrixImpactIII()); } public static void DetectMouse(AsusMouse am)