* Remove retry + proper identifier
* Update LibreHardwareMonitorLib.csproj
* Revert "Update LibreHardwareMonitorLib.csproj"
This reverts commit 185aa2dbd3d338da79aff8bfa9419f016d107e77.
* Add safer retry logic for MemoryGroup
* Move kernel driver assignation in instance ctor instead of static (one time) ctor, since Ring0 can get closed and reopened multiple times in the lifetime of an application.
* Add Task based retry logic with try catch + exception reporting + hardware changed event
* Update MemoryGroup.cs
* Update RAMSPDToolkitDriver.cs
* Update RAMSPDToolkitDriver.cs
* Mutate _hardware field to avoid enumeration exceptions
* Add Report + set configureAwait on the Delay.
* Add Support for MSI B840P PRO WIFI
* Rectify loop mathematical operator syntax
* Add support for two additional motherboards
Z890 Gaming Plus Wifi and Pro Z890-S Wifi Project Zero
* Add support for Asrock B450M Pro4 R2.0
* fixed indexes
Voltages are taken from the R1.0 board, since they all match up even tho some of them aren't shown in any other place (bios or other hw monitoring softwares), but I assume they are correct. Temperatures differ from the R1.0 ones, with only the motherboard one being correct while the other temperatures don't increase by much, or at all, even udner heavy load.
* Add DIMM Temperature to LHM.
* Remove RAMSPDToolkit as submodule and use nuget package instead.
Upgrade System.Management assembly (required for nuget package).
Implement retry mechanism for RAM detection due to possible issue at system boot.
* Change to static field.
* Driver now back in LHM.
Ring0 replaced with OLS implementation.
* Update package version.
* Undo most of changes.
Implement IDriver interface.
* Change package to new one.
* Review changes.
Explicitly set UseWMI (current default is also false).
* PR comments:
Now having one DimmMemory instance per RAM stick.
Separated memory sensors into two new classes.
* PR feedback
---------
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
* Add support for Gigabyte B360M H
Values are the same of similar gigabyte boards, just needed to identify temperature and fan sensors.
* fixed wrong indexes
* Minor refactoring for #1699
* Implemented storage update interval for the UI
* Revert "Implemented storage update interval for the UI"
This reverts commit 977ff2f5518d420e35cadad17054f4e69c260df1.
* Revert "Minor refactoring for #1699"
This reverts commit 923f6d6f636a2a10ff44b8c23f84e8985ccbf667.
* Made update interval configurable for storage devices
* Changed label text m to min for consistency
* Revised 8e6c669 as requested
* ATA Update interval defaults to 1s in the UI
* Simplified storage update interval menu
* Update LpcIO.cs
Add support for MSI MPG B850 EDGE TI WIFI (MS-7E62)
* Update Identification.cs
Add support for MSI MPG B850 EDGE TI WIFI (MS-7E62)
* Update Model.cs
Add support for MSI MPG B850 EDGE TI WIFI (MS-7E62)
* Fix Farbwerk sensor data out of date
* Add farbwerk 360 support
* Minor code change
* Fix file naming
* Standaarise the Temp sensor naming
* Standarize the sensor naming
* Fix Farbwerk sensor data out of date
* Add farbwerk 360 support
* Minor code change
* Fix file naming
* Standaarise the Temp sensor naming
* Standarize the sensor naming
* Fix Farbwerk sensor data out of date
* Add farbwerk 360 support
* Minor code change
* Fix file naming
* Standaarise the Temp sensor naming
* Standarize the sensor naming
* Add farbwerk 360 support
* Minor code change
* Fix file naming
* Add Identification Support for 15 new MSI AM5/LGA1851 Motherboards with the NCT6687D SIO Controller
* Create dummy chip entry NCT6687DR
* Assign NCT6687DR SIO to 15 newly added MSI AM5/LGA1851 Motherboards
This also requires passing Motherboard into DetectWinbondFintek() as we want to maintain prior compatibility while also assigning NCT6687DR to the new motherboards
* Add proper voltage, fan, and temperature sensor layouts for motherboards assigned the NCT6687DR controller
* Add support for NCT6687DR including dedicated fan control function for system fan manipulation
NCT6687DRFanCtrl() is only called when chip == NCT6687DR, otherwise legacy control is maintained. This function works by setting the 7-point fan curve of the system fans to the same requested value where the system fan has no choice but to comply
* Rectify code style in new functions to follow standards
* Update Nct677X.cs
---------
Co-authored-by: Alcolawl <tdean@live.esu.edu>
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
* Add support for a number of X870 and Z890 MSI Motherboards using NCT6687D chips
* Fixing labels and comments
* Update master.yml
Change name to allow nuget publish
* Update master.yml
Still fixing nuget api shit
* Update Identification.cs
Remove B650 Edge board, as it's fine with existing implementation.
* Added Gigabyte X870E Xtreme AI Top motherboard, based on the existing Gigabyte X870E motherboards already added.
* Removed a motherboard model that was accidentally duplicated during merge.
* More precise system utilization
* The current method usually indicates a load that is too low
* SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION idle time error in Windows11 22H2 is fixed
* consistent with Process Explorer, Hwinfo, SIV
* Add fix for old Windows 11 Versions 22H2 and 23H2
Source: https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/pull/1571
Additional error checks for load calculation
* Update CpuLoad.cs
---------
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
* Ryzen 9000 Core Frequency Bugfix
Zen5 (Ryzen 9000) has a changed register mapping for readout core frequency
* Update Ryzen 9000 and Core Clock
* fixed Package Power and Core power Calculation, use ESU for power scaling
* Changed DateTime.Now to UtcNow (better performance)
* Added Effective core clock
* Added Average Core clock and Average effective clock
* Remove Effective clock from SMU
Core effective clock is now calculated in Amd17Cpu/Core
* Fix Clock Ratio calculation.
Ratio > 1 is not possible
* Update Amd17Cpu.cs
---------
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
* Add Support For Asus ROG Strix X870E-E Fan Sensors And Control
* Add voltages and temperatures
---------
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
* Update SuperIOHardware.cs
The embedded switch on the model has no default and would break out of the manufacturer switch if the model wasn't Z790_Taichi.
* Fix the voltage registers for IT87
* Based on linux Hwmon
* Also go from 10 to 9 voltage readings, as no motherboard in LHM using IT87 has more than 9 voltage readings.
* Update SuperIOHardware.cs
* Update IT87XX.cs
* Initial commit based on existing pull request
Work done to support ROG STRIX X870E-E copied:
https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/pull/1523/files
* Update SuperIOHardware.cs
Update fan hierarchy for X870-P motherboard
Small typo fix
* Update SuperIOHardware.cs
* Update SuperIOHardware.cs
Fixed some existing voltages
Added some voltages
Added VRM temperature readout
Removed debug fan lines
* Update SuperIOHardware.cs
Change to more descriptive name
Hide VMISC -> Voltage #12 as can't be confirmed
* Revert CR change
* Add support for ASUS ROG Crosshair X870E Hero motherboard
* Fix a typo
* Add CPU Package temperature sensor.
* Cleanup code
* Aligning W_PUMP+ naming to others