* Rename IT8795E to IT87952E IT8795E and IT87952E are distinct chips (with their own IC markings). The IT8795E, as the IT8791E and IT8792E, reports chip ID 0x8733 whereas the IT87952E identifies as 0x8695. * Gigabyte EC: Fix typo in LPC register restore When the AMD LPC Bridge registers are restored after configuring memory mapping, restore the correct value for the "Memory Address for LPC target cycles" register. * Add IT87952E fan control for Gigabyte boards IT87952E (ID 0x8695) has a third byte in SuperIO config space (LDN 0x0F) that determines more bits of the host address for LPC memory mapping. Also the base address for Gigabyte boards is 0xFC000000 instead of 0xFF000000 (as is the case with IT8790/1/2/5). This should make additional fan controls work on Gigabyte mainboards where the settings had no effect previously, e.g: X570S AORUS MASTER and X670E AORUS MASTER. (cf. Issue #251) It does not yet work for Intel boards as the LPC bridge requires different programming. * Update LpcIO.cs --------- Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
LibreHardwareMonitor
Libre Hardware Monitor, a fork of Open Hardware Monitor, is free software that can monitor the temperature sensors, fan speeds, voltages, load and clock speeds of your computer.
What's included?
What can it do?
You can read information from devices such as:
- Motherboards
- Intel and AMD processors
- NVIDIA and AMD graphics cards
- HDD, SSD and NVMe hard drives
- Network cards
Where can I download it?
You can download the latest release here.
Nightly builds
If you have a GitHub account, you can download nightly builds here. Otherwise, you can download the latest nightly build here.
How can I help improve it?
The LibreHardwareMonitor team welcomes feedback and contributions!
You can check if it works properly on your motherboard. For many manufacturers, the way of reading data differs a bit, so if you notice any inaccuracies, please send us a pull request. If you have any suggestions or improvements, don't hesitate to create an issue.
Developer information
Integrate the library in own application
- Add the LibreHardwareMonitorLib NuGet package to your application.
- Use the sample code below.
Sample code
public class UpdateVisitor : IVisitor
{
public void VisitComputer(IComputer computer)
{
computer.Traverse(this);
}
public void VisitHardware(IHardware hardware)
{
hardware.Update();
foreach (IHardware subHardware in hardware.SubHardware) subHardware.Accept(this);
}
public void VisitSensor(ISensor sensor) { }
public void VisitParameter(IParameter parameter) { }
}
public void Monitor()
{
Computer computer = new Computer
{
IsCpuEnabled = true,
IsGpuEnabled = true,
IsMemoryEnabled = true,
IsMotherboardEnabled = true,
IsControllerEnabled = true,
IsNetworkEnabled = true,
IsStorageEnabled = true
};
computer.Open();
computer.Accept(new UpdateVisitor());
foreach (IHardware hardware in computer.Hardware)
{
Console.WriteLine("Hardware: {0}", hardware.Name);
foreach (IHardware subhardware in hardware.SubHardware)
{
Console.WriteLine("\tSubhardware: {0}", subhardware.Name);
foreach (ISensor sensor in subhardware.Sensors)
{
Console.WriteLine("\t\tSensor: {0}, value: {1}", sensor.Name, sensor.Value);
}
}
foreach (ISensor sensor in hardware.Sensors)
{
Console.WriteLine("\tSensor: {0}, value: {1}", sensor.Name, sensor.Value);
}
}
computer.Close();
}
License
LibreHardwareMonitor is free and open source software licensed under MPL 2.0. You can use it in private and commercial projects. Keep in mind that you must include a copy of the license in your project.