Added support for ASUS MAXIMUS Z790 DARK HERO (#1450)

* Asus Maximus Z790 DARK HERO - added model, added names for NCT6798D and sensors for Asus EC

* Fixed VRM temps and added voltages.

* Add names for VCCSA and VCCIN_AUX

* Update SuperIOHardware.cs

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
This commit is contained in:
Jędrzej Szczepaniak
2024-09-20 10:25:10 +02:00
committed by GitHub
co-authored by PhyxionNL
parent 23207acb09
commit 9840bd09ef
4 changed files with 56 additions and 13 deletions
@@ -547,6 +547,8 @@ internal class Identification
return Model.X670E_Valkyrie;
case var _ when name.Equals("ROG MAXIMUS Z790 HERO", StringComparison.OrdinalIgnoreCase):
return Model.ROG_MAXIMUS_Z790_HERO;
case var _ when name.Equals("ROG MAXIMUS Z790 DARK HERO", StringComparison.OrdinalIgnoreCase):
return Model.ROG_MAXIMUS_Z790_DARK_HERO;
case var _ when name.Equals("PRIME Z690-A", StringComparison.OrdinalIgnoreCase):
return Model.PRIME_Z690_A;
case var _ when name.Equals("Z690 Steel Legend WiFi 6E", StringComparison.OrdinalIgnoreCase):
@@ -232,6 +232,14 @@ public abstract class EmbeddedController : Hardware
ECSensor.TempWaterIn,
ECSensor.TempWaterOut,
ECSensor.FanWaterFlow),
new(Model.ROG_MAXIMUS_Z790_DARK_HERO,
BoardFamily.Intel700,
ECSensor.TempVrm,
ECSensor.FanCPUOpt,
ECSensor.TempTSensor,
ECSensor.TempWaterIn,
ECSensor.TempWaterOut,
ECSensor.FanWaterFlow),
new(Model.Z170_A,
BoardFamily.Intel100,
ECSensor.TempTSensor,
@@ -360,6 +368,8 @@ public abstract class EmbeddedController : Hardware
{
BoardFamily.Intel700, new Dictionary<ECSensor, EmbeddedControllerSource>
{
{ ECSensor.TempVrm, new EmbeddedControllerSource("VRM", SensorType.Temperature, 0x0033) },
{ ECSensor.FanCPUOpt, new EmbeddedControllerSource("CPU Optional Fan", SensorType.Fan, 0x00b0, 2) },
{ ECSensor.TempTSensor, new EmbeddedControllerSource("T Sensor", SensorType.Temperature, 0x0109, blank: -40) },
{ ECSensor.TempTSensor2, new EmbeddedControllerSource("T Sensor 2", SensorType.Temperature, 0x105, blank: -40) },
{ ECSensor.TempWaterIn, new EmbeddedControllerSource("Water In", SensorType.Temperature, 0x0100, blank: -40) },
@@ -104,6 +104,7 @@ public enum Model
TUF_GAMING_X570_PLUS_WIFI,
TUF_GAMING_B550M_PLUS_WIFI,
ROG_MAXIMUS_Z790_HERO,
ROG_MAXIMUS_Z790_DARK_HERO,
PRIME_Z690_A,
ROG_MAXIMUS_Z790_FORMULA,
ROG_MAXIMUS_XII_HERO_WIFI,
@@ -3623,7 +3623,7 @@ internal sealed class SuperIOHardware : Hardware
v.Add(new Voltage("+3V Standby", 7, 34, 34));
v.Add(new Voltage("CMOS Battery", 8, 34, 34));
v.Add(new Voltage("CPU Termination", 9, 1, 1));
v.Add(new Voltage("Voltage #11", 10));
v.Add(new Voltage("Voltage #10", 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));
@@ -3726,19 +3726,7 @@ internal sealed class SuperIOHardware : Hardware
t.Add(new Temperature("Temperature #5", 5));
t.Add(new Temperature("Temperature #6", 6));
t.Add(new Temperature("Temperature #7", 7));
//t.Add(new Temperature("Temperature 08", 8));
//t.Add(new Temperature("Temperature 09", 9));
//t.Add(new Temperature("Temperature 10", 10));
//t.Add(new Temperature("Temperature 11", 11));
t.Add(new Temperature("PCH", 12));
//t.Add(new Temperature("Temperature 13", 13));
//t.Add(new Temperature("Temperature 14", 14));
//t.Add(new Temperature("Temperature 15", 15));
//t.Add(new Temperature("Temperature 16", 16));
//t.Add(new Temperature("Temperature 17", 17));
//t.Add(new Temperature("Temperature 18", 18));
//t.Add(new Temperature("Temperature 19", 19));
//t.Add(new Temperature("Temperature 20", 20));
t.Add(new Temperature("Temperature #9", 21));
fanControlNames = new[] { "Chassis Fan 1", "CPU Fan", "Radiator Fan 1", "Radiator Fan 2", "Chassis Fan 2", "Water Pump 1", "Water Pump 2" };
@@ -3788,6 +3776,48 @@ internal sealed class SuperIOHardware : Hardware
break;
case Model.ROG_MAXIMUS_Z790_DARK_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 #6", 6));
v.Add(new Voltage("+3V Standby", 7, 34, 34));
v.Add(new Voltage("CMOS Battery", 8, 34, 34));
v.Add(new Voltage("CPU Termination", 9, 1, 1));
v.Add(new Voltage("Voltage #11", 10, 1, 1));
v.Add(new Voltage("IVR Atom L2 Cluster #0", 11, 1, 1));
v.Add(new Voltage("PCH", 12));
v.Add(new Voltage("CPU System Agent", 13, 1, 1));
v.Add(new Voltage("CPU Input Auxiliary", 14, 1, 1));
v.Add(new Voltage("Voltage #15", 15));
t.Add(new Temperature("CPU Package", 0));
t.Add(new Temperature("Motherboard", 2));
t.Add(new Temperature("Chipset", 12));
t.Add(new Temperature("PCH", 13));
t.Add(new Temperature("CPU", 22));
f.Add(new Fan("Chassis Fan #1", 0));
f.Add(new Fan("CPU Fan", 1));
f.Add(new Fan("Chassis Fan #2", 2));
f.Add(new Fan("Chassis Fan #3", 3));
f.Add(new Fan("Chassis Fan #4", 4));
f.Add(new Fan("Water Pump", 5));
f.Add(new Fan("AIO Pump", 6));
c.Add(new Control("Chassis Fan #1", 0));
c.Add(new Control("CPU Fan", 1));
c.Add(new Control("Chassis Fan #2", 2));
c.Add(new Control("Chassis Fan #3", 3));
c.Add(new Control("Chassis Fan #4", 4));
c.Add(new Control("Water Pump", 5));
c.Add(new Control("AIO Pump", 6));
break;
case Model.ROG_STRIX_B550_I_GAMING: //NCT6798D
v.Add(new Voltage("Vcore", 0, 10, 10));
v.Add(new Voltage("+5V", 1, 4, 1)); //Probably not updating properly