Added ASUS ROG Maximus Z690 Hero - SuperIO sensors (#974)

This commit is contained in:
WinFinn
2023-02-15 10:53:20 +01:00
committed by GitHub
parent 62ffe8922e
commit 50f2d6073c
3 changed files with 46 additions and 0 deletions
@@ -361,6 +361,8 @@ internal class Identification
return Model.ROG_STRIX_Z690_A_GAMING_WIFI_D4;
case var _ when name.Equals("ROG MAXIMUS Z690 FORMULA", StringComparison.OrdinalIgnoreCase):
return Model.ROG_MAXIMUS_Z690_FORMULA;
case var _ when name.Equals("ROG MAXIMUS Z690 HERO", StringComparison.OrdinalIgnoreCase):
return Model.ROG_MAXIMUS_Z690_HERO;
case var _ when name.Equals("ROG MAXIMUS Z690 EXTREME GLACIAL", StringComparison.OrdinalIgnoreCase):
return Model.ROG_MAXIMUS_Z690_EXTREME_GLACIAL;
case var _ when name.Equals("B660GTN", StringComparison.OrdinalIgnoreCase):
@@ -51,6 +51,7 @@ internal enum Model
ROG_STRIX_B550_I_GAMING,
ROG_STRIX_Z690_A_GAMING_WIFI_D4,
ROG_MAXIMUS_Z690_FORMULA,
ROG_MAXIMUS_Z690_HERO,
ROG_MAXIMUS_Z690_EXTREME_GLACIAL,
M2N_SLI_Deluxe,
M4A79XTD_EVO,
@@ -2579,6 +2579,49 @@ internal sealed class SuperIOHardware : Hardware
c.Add(new Ctrl(fanControlNames[i], i));
break;
case Model.ROG_MAXIMUS_Z690_HERO: //NCT6798D
v.Add(new Voltage("Vcore", 0));
v.Add(new Voltage("+5V", 1, 4, 1));
v.Add(new Voltage("AVSB", 2, 34, 34));
v.Add(new Voltage("3VCC", 3, 34, 34));
v.Add(new Voltage("+12V", 4, 11, 1));
v.Add(new Voltage("IVR Atom L2 Cluster #1", 5));
v.Add(new Voltage("Voltage #7", 6));
v.Add(new Voltage("3VSB", 7, 34, 34));
v.Add(new Voltage("VBat", 8, 34, 34));
v.Add(new Voltage("VTT", 9, 1, 1));
v.Add(new Voltage("Voltage #11", 10));
v.Add(new Voltage("IVR Atom L2 Cluster #0", 11, 1, 1));
v.Add(new Voltage("PCH", 12));
v.Add(new Voltage("Voltage #14 ", 13));
v.Add(new Voltage("Voltage #15", 14));
t.Add(new Temperature("CPU Package", 0)); // Matches CPU Package in HWinfo & Armoury Crate.
t.Add(new Temperature("CPU Weighted", 1)); // Unsure about this one. HWinfo & Armoury Crate doesn't have anything that match my values. Varies from 34 (idle) to 42C (under load). Hwinfo is 31-32C for same.
t.Add(new Temperature("Motherboard", 2)); // Matches MB in HWinfo & Armoury Crate.
//t.Add(new Temperature("Temperature #4", 4)); // Constant at 15C
//t.Add(new Temperature("Temperature #5", 5)); // Varies from 15C to 123C. Probably bogus
//t.Add(new Temperature("Temperature #6", 6)); // Constant at 32C
//t.Add(new Temperature("Temperature #7", 7)); // Varies from 14C to 124C. Probably bogus
t.Add(new Temperature("PCH", 12)); // Chipset. Match HWinfo & Armoury Crate
t.Add(new Temperature("CPU", 21)); // Matches CPU in HWinfo & Armoury Crate.
// note that CPU Opt Fan is on the ASUS EC controller. Together with VRM, T_Sensor, WaterIn, WaterOut and WaterFlow + additional sensors.
fanControlNames = new[] { "Chassis Fan 1", "CPU Fan", "Chassis Fan 2", "Chassis Fan 3", "Chassis Fan 4", "Waterpump", "AIO Pump" };
System.Diagnostics.Debug.Assert(fanControlNames.Length == superIO.Fans.Length,
$"Expected {fanControlNames.Length} fan register in the SuperIO chip");
System.Diagnostics.Debug.Assert(superIO.Fans.Length == superIO.Controls.Length,
"Expected counts of cans controls and fan speed registers to be equal");
for (int i = 0; i < fanControlNames.Length; i++)
f.Add(new Fan(fanControlNames[i], i));
for (int i = 0; i < fanControlNames.Length; i++)
c.Add(new Ctrl(fanControlNames[i], i));
break;
case Model.ROG_MAXIMUS_Z690_EXTREME_GLACIAL: //NCT6798D
v.Add(new Voltage("Vcore", 0));