Skip to content

Commit cd673ba

Browse files
committed
Add support for MSI PRO B850M-A Project Zero
Support for 10 new MSI motherboards with NCT6687D-R SIO controller Support for newly established fan and control register structure WILL ABSOLUTELY BREAK FAN CONTROL CONFIGS FOR NCT6687DR USERS. This introduces Support for 16 System Fans and Controls, including EZ-Connect, Pump Fan 2, and System Fan 7. Also improved the logic for nct6687dr control. Add support for X870E Tomahawk WIFI, fix B850 Gaming Plus WIFI PZ identification Add support for B850M Gaming Plus WIFI and Z890 Unify-X Also removes duplicate model identification case for B850M GAMING PLUS WIFI6E Rename temperature sensor to proper name for X870E Carbon Wifi and GODLIKE motherboards Add support for MSI PRO B850M-A Project Zero (MS-7E78) Rename 'T_Sensor' to 'Temperature Sensor' for clarity T Sensor > Temperature Sensor Rename Temperature Sensors to Thermistor Sensors
1 parent a943439 commit cd673ba

4 files changed

Lines changed: 23 additions & 19 deletions

File tree

OpenHardwareMonitorLib/Hardware/Motherboard/Identification.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -685,6 +685,8 @@ public static Model GetModel(string name)
685685
return Model.B850S_PRO_WIFI6E;
686686
case var _ when name.Equals("PRO B850M-A WIFI (MS-7E66)", StringComparison.OrdinalIgnoreCase):
687687
return Model.B850MA_PRO_WIFI;
688+
case var _ when name.Equals("PRO B850M-A WIFI PZ (MS-7E78)", StringComparison.OrdinalIgnoreCase):
689+
return Model.B850MA_PRO_WIFI_PZ;
688690
case var _ when name.Equals("PRO B850M-P WIFI (MS-7E71)", StringComparison.OrdinalIgnoreCase):
689691
return Model.B850MP_PRO_WIFI;
690692
case var _ when name.Equals("B850 GAMING PLUS WIFI (MS-7E56)", StringComparison.OrdinalIgnoreCase):

OpenHardwareMonitorLib/Hardware/Motherboard/Lpc/LpcIO.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -403,6 +403,7 @@ private bool DetectWinbondFintek(LpcPort port, Motherboard motherboard)
403403
case Model.B850M_GAMING_PLUS_WIFI6E:
404404
case Model.B850P_PRO_WIFI:
405405
case Model.B850MA_PRO_WIFI:
406+
case Model.B850MA_PRO_WIFI_PZ:
406407
case Model.B850MP_PRO_WIFI:
407408
case Model.B850M_MORTAR:
408409
case Model.B850M_MORTAR_WIFI:

OpenHardwareMonitorLib/Hardware/Motherboard/Model.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ public enum Model
159159
B650M_PROJECT_ZERO,
160160
B850P_PRO_WIFI,
161161
B850MA_PRO_WIFI,
162+
B850MA_PRO_WIFI_PZ,
162163
B850MP_PRO_WIFI,
163164
B850_EDGE_TI_WIFI,
164165
B850I_EDGE_TI_WIFI,

OpenHardwareMonitorLib/Hardware/Motherboard/SuperIOHardware.cs

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -549,8 +549,8 @@ private static void GetBoardSpecificConfiguration
549549
t.Add(new Temperature("VRM MOS", 2));
550550
t.Add(new Temperature("PCH", 3));
551551
t.Add(new Temperature("CPU Socket", 4));
552-
t.Add(new Temperature("Temperature Sensor 1", 5));
553-
t.Add(new Temperature("Temperature Sensor 2", 6));
552+
t.Add(new Temperature("Thermistor Sensor 1", 5));
553+
t.Add(new Temperature("Thermistor Sensor 2", 6));
554554
t.Add(new Temperature("PCIe #1", 7));
555555
t.Add(new Temperature("PCIe #2", 8));
556556
t.Add(new Temperature("M2 #1", 9));
@@ -700,7 +700,7 @@ private static void GetBoardSpecificConfiguration
700700
v.Add(new Voltage("CMOS Battery", 13));
701701

702702
t.Add(new Temperature("PCIe x1", 5));
703-
t.Add(new Temperature("M2 #1", 6));
703+
t.Add(new Temperature("Thermistor Sensor", 6));
704704

705705
break;
706706

@@ -1447,7 +1447,7 @@ private static void GetIteConfigurationsB(ISuperIO superIO, Manufacturer manufac
14471447
v.Add(new Voltage("CMOS Battery", 8, 10, 10));
14481448
t.Add(new Temperature("CPU", 0));
14491449
t.Add(new Temperature("Motherboard", 1));
1450-
t.Add(new Temperature("T_Sensor", 2));
1450+
t.Add(new Temperature("Thermistor Sensor", 2));
14511451
t.Add(new Temperature("PCIe x16", 3));
14521452
t.Add(new Temperature("VRM", 4));
14531453
t.Add(new Temperature("Temperature #6", 5));
@@ -3940,7 +3940,7 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
39403940
t.Add(new Temperature("CPU", 1));
39413941
t.Add(new Temperature("Motherboard", 2));
39423942
t.Add(new Temperature("PCH TS10", 9));
3943-
t.Add(new Temperature("T_Sensor", 24));
3943+
t.Add(new Temperature("Thermistor Sensor", 24));
39443944

39453945
f.Add(new Fan("CPU Fan #1", 1)); // CPU_FAN1
39463946
f.Add(new Fan("CPU Fan #2 / Pump", 0)); // CPU_FAN2/PUMP
@@ -3970,9 +3970,9 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
39703970
t.Add(new Temperature("Auxiliary", 3));
39713971
t.Add(new Temperature("Auxiliary Index #1", 4));
39723972

3973-
t.Add(new Temperature("Thermistor Sensor #1", 5)); // T_SENSOR 1
3974-
t.Add(new Temperature("Thermistor Sensor #2", 6)); // T_SENSOR 2
3975-
t.Add(new Temperature("Thermistor Sensor #3", 8)); // T_SENSOR 3
3973+
t.Add(new Temperature("Thermistor Sensor #1", 5)); // Thermistor Sensor 1
3974+
t.Add(new Temperature("Thermistor Sensor #2", 6)); // Thermistor Sensor 2
3975+
t.Add(new Temperature("Thermistor Sensor #3", 8)); // Thermistor Sensor 3
39763976

39773977
f.Add(new Fan("CPU Fan #1", 1)); // CPU_FAN1
39783978
f.Add(new Fan("CPU Fan #2", 2)); // CPU_FAN2
@@ -4011,10 +4011,10 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
40114011
t.Add(new Temperature("Motherboard", 1)); // SYSTIN
40124012
t.Add(new Temperature("Auxiliary #0", 2)); // AUXTIN0
40134013
t.Add(new Temperature("Auxiliary #1", 3)); // AUXTIN1
4014-
t.Add(new Temperature("Thermistor Sensor #1", 4)); // AUXTIN2 (T_SENSOR1)
4015-
t.Add(new Temperature("Thermistor Sensor #2", 5)); // AUXTIN3 (T_SENSOR2)
4014+
t.Add(new Temperature("Thermistor Sensor #1", 4)); // AUXTIN2 (Thermistor Sensor1)
4015+
t.Add(new Temperature("Thermistor Sensor #2", 5)); // AUXTIN3 (Thermistor Sensor2)
40164016
t.Add(new Temperature("Auxiliary #4", 6)); // AUXTIN4
4017-
t.Add(new Temperature("Thermistor Sensor #3", 7)); // AUXTIN5 (T_SENSOR3)
4017+
t.Add(new Temperature("Thermistor Sensor #3", 7)); // AUXTIN5 (Thermistor Sensor3)
40184018
t.Add(new Temperature("CPU Core", 8)); // SMBUSMASTER0 (CPU Core)
40194019
t.Add(new Temperature("CPU (PECI)", 9)); // CPU (PECI)
40204020
t.Add(new Temperature("Virtual", 10)); // VIRTUAL_TEMP
@@ -4576,7 +4576,7 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
45764576
t.Add(new Temperature("PCH", 12)); // Chipset. Match HWinfo & Armoury Crate
45774577
t.Add(new Temperature("CPU", 21)); // Matches CPU in HWinfo & Armoury Crate.
45784578

4579-
// note that CPU Opt Fan is on the ASUS EC controller. Together with VRM, T_Sensor, WaterIn, WaterOut and WaterFlow + additional sensors.
4579+
// note that CPU Opt Fan is on the ASUS EC controller. Together with VRM, Temperature Sensor, WaterIn, WaterOut and WaterFlow + additional sensors.
45804580
fanControlNames = ["Chassis Fan 1", "CPU Fan", "Chassis Fan 2", "Chassis Fan 3", "Chassis Fan 4", "Waterpump", "AIO Pump"];
45814581

45824582
System.Diagnostics.Debug.Assert(fanControlNames.Length == superIO.Fans.Length,
@@ -4732,8 +4732,8 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
47324732
t.Add(new Temperature("CPU Package", 0));
47334733
t.Add(new Temperature("CPU", 1));
47344734
t.Add(new Temperature("Motherboard", 2));
4735-
t.Add(new Temperature("VRM Thermistor", 3));
4736-
t.Add(new Temperature("T Sensor", 8));
4735+
t.Add(new Temperature("VRM", 3));
4736+
t.Add(new Temperature("Thermistor Sensor", 8));
47374737
t.Add(new Temperature("PCH", 13));
47384738
t.Add(new Temperature("CPU Calibrated", 22));
47394739

@@ -5030,7 +5030,7 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
50305030
t.Add(new Temperature("Temperature #6", 6)); // No matching temp value
50315031
t.Add(new Temperature("Temperature #7", 8)); // Matches MB in HWinfo
50325032
t.Add(new Temperature("CPU", 22)); // Matches MB in HWinfo
5033-
t.Add(new Temperature("T Sensor", 24));
5033+
t.Add(new Temperature("Thermistor Sensor", 24));
50345034

50355035
for (int i = 0; i < superIO.Fans.Length; i++)
50365036
f.Add(new Fan("Fan #" + (i + 1), i));
@@ -5065,7 +5065,7 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
50655065
t.Add(new Temperature("Temperature #4", 4)); // No matching temp value
50665066
t.Add(new Temperature("Temperature #5", 5)); // No matching temp value
50675067
t.Add(new Temperature("Temperature #6", 6)); // No matching temp value
5068-
t.Add(new Temperature("T Sensor", 24)); // Aligned with Armoury Crate ROG_STRIX_X670E_E_GAMING_WIFI
5068+
t.Add(new Temperature("Thermistor Sensor", 24)); // Aligned with Armoury Crate ROG_STRIX_X670E_E_GAMING_WIFI
50695069

50705070
for (int i = 0; i < superIO.Fans.Length; i++)
50715071
f.Add(new Fan("Fan #" + (i + 1), i));
@@ -5115,7 +5115,7 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
51155115
//v.Add(new Voltage("CPU Termination", 9)); // This is wrong
51165116
t.Add(new Temperature("CPU", 22));
51175117
t.Add(new Temperature("Motherboard", 2));
5118-
t.Add(new Temperature("T_Sensor", 24)); // Aligned with Armoury Crate
5118+
t.Add(new Temperature("Thermistor Sensor", 24)); // Aligned with Armoury Crate
51195119
t.Add(new Temperature("Temperature #1", 1)); // Unknown, Possibly VRM with 23 offset
51205120

51215121
for (int i = 0; i < superIO.Fans.Length; i++)
@@ -5322,7 +5322,7 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
53225322
t.Add(new Temperature("CPU Package", 0)); // PECI_0, CPU Package
53235323
t.Add(new Temperature("CPU", 1)); // CPUTIN, CPU
53245324
t.Add(new Temperature("Motherboard", 2)); // SYSTIN, MOTHERBOARD
5325-
t.Add(new Temperature("T Sensor", 8)); // TSENSOR
5325+
t.Add(new Temperature("Thermistor Sensor", 8)); // TSENSOR
53265326
t.Add(new Temperature("PCH", 13)); // PCH_CHIP_TEMP
53275327
t.Add(new Temperature("PECI 0 Calibrated", 22)); // PECI_0_CAL, CPU
53285328

@@ -5655,7 +5655,7 @@ private static void GetNuvotonConfigurationD(ISuperIO superIO, Manufacturer manu
56555655
t.Add(new Temperature("VRM MOS", 3)); // AUXTIN0, CPUMOSTIN, 10k at left side of cpu vrm
56565656
t.Add(new Temperature("Chipset", 5)); // AUXTIN2, 10k at back side of the chipset
56575657
t.Add(new Temperature("CPU", 24));
5658-
// Add temperature sensors for voltage inputs that are marked ad
5658+
// Add Thermistor Sensors for voltage inputs that are marked ad
56595659
t.Add(new Temperature("MOS CPU", 24)); // (VIN 4 Voltage) NTC Near MOSFET CPU VRM
56605660
t.Add(new Temperature("PCH", 25)); // (Voltage #6) X570 Platform Control HUB TEMP (NTC On Bottom of PCB)
56615661

0 commit comments

Comments
 (0)