From d22c9b41137b7ab40331d599ff56625c40f96400 Mon Sep 17 00:00:00 2001 From: Shadotty <69601357+Shadotty@users.noreply.github.com> Date: Fri, 19 Jul 2024 18:54:26 +0200 Subject: [PATCH] Add EC support for Z490 ROG MAXIMUS XII HERO (WI-FI) (#1351) * Add EC support for Z490 ROG MAXIMUS XII HERO (WI-FI) * Update EmbeddedController.cs Removed the broken line * Update EmbeddedController.cs Added the line back * Update EmbeddedController.cs Removed comment * Update EmbeddedController.cs Sorted by sensor address --- .../Hardware/Motherboard/Identification.cs | 2 ++ .../Motherboard/Lpc/EC/EmbeddedController.cs | 24 +++++++++++++++++++ .../Hardware/Motherboard/Model.cs | 1 + 3 files changed, 27 insertions(+) diff --git a/LibreHardwareMonitorLib/Hardware/Motherboard/Identification.cs b/LibreHardwareMonitorLib/Hardware/Motherboard/Identification.cs index 6d89414..5c3798c 100644 --- a/LibreHardwareMonitorLib/Hardware/Motherboard/Identification.cs +++ b/LibreHardwareMonitorLib/Hardware/Motherboard/Identification.cs @@ -499,6 +499,8 @@ internal class Identification return Model.X570_Gaming_Plus; case var _ when name.Equals("ROG MAXIMUS Z790 FORMULA", StringComparison.OrdinalIgnoreCase): return Model.ROG_MAXIMUS_Z790_FORMULA; + case var _ when name.Equals("ROG MAXIMUS XII HERO (WI-FI)", StringComparison.OrdinalIgnoreCase): + return Model.ROG_MAXIMUS_XII_HERO_WIFI; case var _ when name.Equals("Base Board Product Name", StringComparison.OrdinalIgnoreCase): case var _ when name.Equals("To be filled by O.E.M.", StringComparison.OrdinalIgnoreCase): return Model.Unknown; diff --git a/LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/EC/EmbeddedController.cs b/LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/EC/EmbeddedController.cs index dc3399a..81474f8 100644 --- a/LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/EC/EmbeddedController.cs +++ b/LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/EC/EmbeddedController.cs @@ -233,6 +233,16 @@ public abstract class EmbeddedController : Hardware BoardFamily.Intel700, ECSensor.TempWaterIn, ECSensor.TempWaterOut), + new(Model.ROG_MAXIMUS_XII_HERO_WIFI, + BoardFamily.Intel400, + ECSensor.TempTSensor, + ECSensor.TempChipset, + ECSensor.TempVrm, + ECSensor.TempWaterIn, + ECSensor.TempWaterOut, + ECSensor.CurrCPU, + ECSensor.FanCPUOpt, + ECSensor.FanWaterFlow), }; private static readonly Dictionary> _knownSensors = new() @@ -302,6 +312,19 @@ public abstract class EmbeddedController : Hardware { ECSensor.FanCPUOpt, new EmbeddedControllerSource("CPU Optional Fan", SensorType.Fan, 0x00b0, 2) } } }, + { + BoardFamily.Intel400, new Dictionary + { + { ECSensor.TempChipset, new EmbeddedControllerSource("Chipset", SensorType.Temperature, 0x003a) }, + { ECSensor.TempTSensor, new EmbeddedControllerSource("T Sensor", SensorType.Temperature, 0x003d, blank: -40) }, + { ECSensor.TempVrm, new EmbeddedControllerSource("VRM", SensorType.Temperature, 0x003e) }, + { ECSensor.FanCPUOpt, new EmbeddedControllerSource("CPU Optional Fan", SensorType.Fan, 0x00b0, 2) }, + { ECSensor.FanWaterFlow, new EmbeddedControllerSource("Water Flow", SensorType.Flow, 0x00be, 2, factor: 1.0f / 42f * 60f) } // todo: need validation for this calculation + { ECSensor.CurrCPU, new EmbeddedControllerSource("CPU", SensorType.Current, 0x00f4) }, + { ECSensor.TempWaterIn, new EmbeddedControllerSource("Water In", SensorType.Temperature, 0x0100, blank: -40) }, + { ECSensor.TempWaterOut, new EmbeddedControllerSource("Water Out", SensorType.Temperature, 0x0101, blank: -40) }, + } + }, { BoardFamily.Intel600, new Dictionary { @@ -523,6 +546,7 @@ public abstract class EmbeddedController : Hardware Amd600, Intel100, Intel300, + Intel400, Intel600, Intel700 } diff --git a/LibreHardwareMonitorLib/Hardware/Motherboard/Model.cs b/LibreHardwareMonitorLib/Hardware/Motherboard/Model.cs index 5748aee..a1c0b3d 100644 --- a/LibreHardwareMonitorLib/Hardware/Motherboard/Model.cs +++ b/LibreHardwareMonitorLib/Hardware/Motherboard/Model.cs @@ -100,6 +100,7 @@ public enum Model ROG_MAXIMUS_Z790_HERO, PRIME_Z690_A, ROG_MAXIMUS_Z790_FORMULA, + ROG_MAXIMUS_XII_HERO_WIFI, //BIOSTAR B660GTN,