From 9fbea0a3d31305206fa02835dc3d98ca0970e91f Mon Sep 17 00:00:00 2001 From: IceStormNG Date: Thu, 17 Aug 2023 14:23:55 +0200 Subject: [PATCH 1/2] Fixes crash when DPI was not read yet. --- app/AsusMouseSettings.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/AsusMouseSettings.cs b/app/AsusMouseSettings.cs index 7d71966d..3687b9be 100644 --- a/app/AsusMouseSettings.cs +++ b/app/AsusMouseSettings.cs @@ -797,6 +797,10 @@ namespace GHelper private void VisualizeCurrentDPIProfile() { AsusMouseDPI dpi = mouse.DpiSettings[mouse.DpiProfile - 1]; + if (dpi is null) + { + return; + } sliderDPI.Value = (int)dpi.DPI; pictureDPIColor.BackColor = dpi.Color; } From c82ec8a005c234a08c84468857b923055826e49d Mon Sep 17 00:00:00 2001 From: IceStormNG Date: Thu, 17 Aug 2023 14:25:31 +0200 Subject: [PATCH 2/2] Adds ROG Keris Wireless Aimpoint (P709_Wireless) --- .../Mouse/Models/KerisWirelssAimpoint.cs | 106 ++++++++++++++++++ app/Peripherals/PeripheralsProvider.cs | 2 + 2 files changed, 108 insertions(+) create mode 100644 app/Peripherals/Mouse/Models/KerisWirelssAimpoint.cs diff --git a/app/Peripherals/Mouse/Models/KerisWirelssAimpoint.cs b/app/Peripherals/Mouse/Models/KerisWirelssAimpoint.cs new file mode 100644 index 00000000..da3e741d --- /dev/null +++ b/app/Peripherals/Mouse/Models/KerisWirelssAimpoint.cs @@ -0,0 +1,106 @@ +namespace GHelper.Peripherals.Mouse.Models +{ + //P709_Wireless + public class KerisWirelssAimpoint : AsusMouse + { + public KerisWirelssAimpoint() : base(0x0B05, 0x1A68, "mi_00", true) + { + } + + protected KerisWirelssAimpoint(ushort vendorId, bool wireless) : base(0x0B05, vendorId, "mi_00", wireless) + { + } + + public override int DPIProfileCount() + { + return 4; + } + + public override string GetDisplayName() + { + return "ROG Keris Wireless Aimpoint (Wireless)"; + } + + + public override PollingRate[] SupportedPollingrates() + { + return new PollingRate[] { + PollingRate.PR125Hz, + PollingRate.PR250Hz, + PollingRate.PR500Hz, + PollingRate.PR1000Hz + }; + } + + public override int ProfileCount() + { + return 5; + } + public override int MaxDPI() + { + return 36_000; + } + + public override bool HasXYDPI() + { + return true; + } + + public override bool HasDebounceSetting() + { + return true; + } + + public override bool HasLiftOffSetting() + { + return true; + } + + public override bool HasRGB() + { + return true; + } + + public override LightingZone[] SupportedLightingZones() + { + return new LightingZone[] { LightingZone.Logo }; + } + + public override bool HasAutoPowerOff() + { + return true; + } + + public override bool HasAngleSnapping() + { + return true; + } + + public override bool HasAngleTuning() + { + return true; + } + + public override bool HasLowBatteryWarning() + { + return true; + } + + public override bool HasDPIColors() + { + return true; + } + } + + public class KerisWirelssAimpointWired : KerisWirelssAimpoint + { + public KerisWirelssAimpointWired() : base(0x1A66, false) + { + } + + public override string GetDisplayName() + { + return "ROG Keris Wireless Aimpoint (Wired)"; + } + } +} diff --git a/app/Peripherals/PeripheralsProvider.cs b/app/Peripherals/PeripheralsProvider.cs index 9ad0b1df..4e3305d9 100644 --- a/app/Peripherals/PeripheralsProvider.cs +++ b/app/Peripherals/PeripheralsProvider.cs @@ -197,6 +197,8 @@ namespace GHelper.Peripherals DetectMouse(new GladiusIII()); DetectMouse(new GladiusIIIWired()); DetectMouse(new TUFM3()); + DetectMouse(new KerisWirelssAimpoint()); + DetectMouse(new KerisWirelssAimpointWired()); } public static void DetectMouse(AsusMouse am)