LibreHardwareMonitor/LibreHardwareMonitor
50.4
Weak · 23 September 2026
52.2k
lines of production code
C#
primary language
5
measurements over time
What this system is
LibreHardwareMonitor is a hardware monitoring application that detects and reports telemetry from CPUs, GPUs, memory, storage, and various peripheral controllers. It provides detailed sensor data such as temperatures, fan speeds, voltages, and power consumption, while also offering control capabilities for compatible cooling devices and power supplies. The system supports multiple operating systems, including Windows and Linux, and exposes this information through a local web interface.
How it got here
2010 — Project restructuring and legacy cleanup
14 changes.
The project was renamed to LibreHardwareMonitor and underwent a comprehensive structural overhaul, migrating to modern .NET SDK project formats and updating the build infrastructure. This period involved the removal of legacy GUI components, old hardware abstraction layers, and deprecated driver support for various hardware types to streamline the codebase.
2019 — Hardware abstraction and subsystem refactoring
12 changes.
This period focused on a comprehensive restructuring of the LibreHardwareMonitorLib core to introduce a cleaner hardware abstraction model with standardized interfaces for computers, hardware, and controls. Major subsystems including CPU, GPU, memory, motherboard, and storage monitoring were rewritten to improve accuracy, support modern architectures like Intel hybrid cores and DDR5, and expand Linux compatibility. The work also involved migrating low-level interop to CsWin32 for better type safety and adding new capabilities such as network interface monitoring and T-Balancer controller support.
2020–2026 — Hardware support expansion and driver migration
15 changes.
This period focused on significantly expanding hardware compatibility by adding controllers for numerous cooling, power, and peripheral devices from brands like NZXT, Corsair, and Aqua Computer. Concurrently, the project modernized its low-level infrastructure by migrating from WinRing0 to the PawnIO driver and introducing ARM64 support, while also establishing a modular architecture for Embedded Controller access.
Features
Add Windows Forms UI and embedded web server resources
The LibreHardwareMonitor.Windows.Forms project now includes the application entry point (Program.cs) which validates required DLLs at startup, and a complete set of embedded resources for the built-in web server. This adds the web interface HTML, Knockout.js and jQuery scripts, and CSS themes (including jQuery UI and treeTable styles) required to render the remote monitoring dashboard.
LibreHardwareMonitor.Windows.Forms · high confidence
Add battery monitoring support for Windows
LibreHardwareMonitor now detects and monitors laptop batteries on Windows, exposing sensors for charge level, remaining capacity, voltage, temperature, charge/discharge rate, and estimated remaining time. The implementation uses Windows Win32 APIs to query battery status and correctly handles tag invalidation to ensure reliable updates.
LibreHardwareMonitorLib/Hardware/Battery · high confidence
Add internal support for Thermal Grizzly WireView Pro 2 device communication
This change introduces the internal interop layer required to communicate with the Thermal Grizzly WireView Pro 2 power monitor. It adds the necessary data structures (DeviceData, various ConfigStruct versions), enumerations for device capabilities and UI themes, and helper classes for finding the correct COM port and converting configuration data between firmware versions. This enables the application to detect, connect to, and read sensor data from the WireView Pro 2 hardware.
LibreHardwareMonitorLib/Interop/PowerMonitor · high confidence
Add operating system information helper class
A new static class, OperatingSystem, has been added to provide runtime detection of system properties. It exposes read-only properties indicating whether the system is 64-bit, Unix-based, or running Windows 8 or later, with values computed once during static initialization.
LibreHardwareMonitorLib/Software · high confidence
Add support for ARCTIC USB Fan Controllers
Users can now monitor and control ARCTIC USB fan controllers (VID 0x3904, PID 0xF001) via a new driver. The system detects compatible HID devices and exposes ten individual fan sensors for RPM monitoring and ten control sensors for setting PWM duty cycles (0–100%). The controller handles background polling for RPM updates and applies software-controlled fan speeds in real-time.
LibreHardwareMonitorLib/Hardware/Controller/Arctic · high confidence
Add support for AeroCool P7-H1 cooler
Users with AeroCool P7-H1 cooling devices can now have their fan speeds monitored. This change introduces a new hardware controller that detects compatible devices via HID, reads fan RPM data from up to five fans, and exposes them as sensors within LibreHardwareMonitor.
LibreHardwareMonitorLib/Hardware/Controller/AeroCool · high confidence
Add support for Corsair HXi and RMi series power supplies
Users with Corsair HXi (including HX550i through HX1500i and Rev2) and RMi (RM550i through RM1000i) power supplies can now monitor hardware telemetry. The application detects these devices via USB HID and exposes sensors for temperatures, fan speed, input voltage/current, per-rail voltages, currents, and power consumption, along with total output power and uptime.
LibreHardwareMonitorLib/Hardware/Psu/Corsair · high confidence
Add support for MSI CoreLiquid AIO coolers
LibreHardwareMonitor now detects and monitors MSI CoreLiquid all-in-one liquid coolers (including S280, S360, S360 MEG, X360, X240, D360, and D240 models). The new MSI controller exposes fan speeds, inlet and outlet liquid temperatures, and additional temperature sensor readings, and allows users to control fan curves and modes (Silent, Bios, Game, Custom, Smart) directly through the application.
LibreHardwareMonitorLib/Hardware/Controller/MSI · high confidence
Add support for Razer PWM PC Fan Controller
Users can now monitor and control fan speeds on the Razer PWM PC Fan Controller (Product ID 0x0F3C). The application detects the device via HID, reads its firmware version, and exposes eight individual fan channels for RPM monitoring and percentage-based speed control. A status indicator warns if the connected firmware version differs from the tested 1.01.00 release.
LibreHardwareMonitorLib/Hardware/Controller/Razer · high confidence
Add support for Thermal Grizzly WireView Pro II power monitor
Users can now monitor power and fan data from the Thermal Grizzly WireView Pro II device. This change introduces a new hardware driver (WireViewPro2) that automatically detects the device via USB, reads sensor values, and exposes them as standard sensors within LibreHardwareMonitor. It also includes a shared serial port implementation to manage concurrent access to the device's communication port.
LibreHardwareMonitorLib/Hardware/PowerMonitor · high confidence
Added support for NZXT GRID+ V3, Kraken X, Kraken Z, and Kraken Elite liquid coolers
This change introduces new hardware controllers for the NZXT GRID+ V3 fan controller, as well as the Kraken X (V2), Kraken Z (V3), and Kraken Elite (V3) liquid cooling systems. The implementation adds specific driver classes (GridV3, KrakenV2, KrakenV3) that handle HID communication to monitor temperatures, fan/pump RPMs, and allow software-based speed control. A new NzxtGroup class aggregates these devices, scanning for their specific USB product IDs to instantiate the correct controller and expose their sensors to the application.
LibreHardwareMonitorLib/Hardware/Controller/Nzxt · high confidence
Added support for T-Balancer bigNG and miniNG cooling controllers
LibreHardwareMonitor now detects and monitors T-Balancer bigNG and miniNG devices via the FTDI Ftd2xx driver. Users with these specific cooling controllers will see new sensors for digital and analog temperatures, fan speeds, fan channel controls, and flowmeter readings automatically discovered and exposed in the hardware list.
LibreHardwareMonitorLib/Hardware/Controller/TBalancer · high confidence
Expanded support for Aqua Computer hardware via HidSharp
The Aqua Computer controller subsystem has been restructured to use the HidSharp library for USB HID communication, replacing the previous implementation. This change introduces a new AquaComputerGroup discovery component that automatically detects and initializes a wider range of devices, including the D5Next pump, Aquastream XT and Ultimate, MPS, Quadro, Octo, High Flow NEXT, and Farbwerk/Farbwerk 360 controllers. Users will now see these specific devices recognized with their respective firmware versions and detailed sensor data (temperatures, fan speeds, voltages, currents, power, and flow) exposed to the application.
LibreHardwareMonitorLib/Hardware/Controller/AquaComputer · high confidence
Initial release of Aga.Controls tree view and utility components
This change introduces the Aga.Controls library, providing a comprehensive tree view control (TreeViewAdv) with features such as incremental search, column reordering, and variable row height layouts. The package also includes supporting utilities like a GIF decoder, a numeric text box with input validation, a high-resolution performance analyzer, and a thread-safe abortable thread pool.
Aga.Controls · high confidence
Library core restructured with new hardware abstraction and controller support
The LibreHardwareMonitorLib core has been reorganized to introduce a cleaner hardware abstraction model, including new base classes and interfaces such as IComputer, IHardware, IGroup, and IControl, which standardize how devices are discovered, grouped, and controlled. This refactor adds native support for multiple fan and AIO controllers (AeroCool, Aqua Computer, Arctic, MSI, NZXT, Razer, and Heatmaster) via dedicated driver implementations and groups, and introduces a CompositeSensor to aggregate multiple sensor values. Additionally, the library now exposes D3D display device information for improved GPU sensor identification and adds a CoreType enum to distinguish between Performance and Efficient CPU cores.
LibreHardwareMonitorLib/Hardware · high confidence
New network interface monitoring sensors
LibreHardwareMonitor now includes hardware sensors for network interfaces, reporting Data Uploaded, Data Downloaded, Upload Speed, Download Speed, and Network Utilization. The new NetworkGroup component detects network interface changes (such as plugging in or out) and updates the sensor values accordingly, handling interface resets and availability changes gracefully.
LibreHardwareMonitorLib/Hardware/Network · high confidence
New per-DIMM memory sensors and cross-platform memory monitoring
The memory monitoring subsystem has been rewritten to provide detailed per-DIMM information and support for Linux. Users can now see individual DIMM modules with specific sensors for capacity, timing parameters (such as CAS latency and refresh times), and thermal data (temperature, limits) for DDR4 and DDR5 RAM, powered by the RAMSPDToolkit. Additionally, total physical and virtual memory usage metrics are now available on Linux by reading /proc/meminfo, whereas previously this functionality was Windows-only.
LibreHardwareMonitorLib/Hardware/Memory · high confidence
Removals
Removal of ATI GPU hardware monitoring support
The ATI GPU hardware monitoring implementation has been removed from the application. The source files for the AMD Display Library (ADL) interface, the GPU hardware class, and the hardware group enumerator have been deleted, meaning the software will no longer detect, read, or display temperature, fan, clock, or voltage data for ATI/AMD graphics cards.
Hardware/ATI · high confidence
Removal of legacy CPU hardware implementations
The legacy \AMD10CPU\, \CPUGroup\, and \IntelCPU\ classes have been removed from the \Hardware/CPU\ directory. This deletion eliminates the previous direct hardware access logic for AMD Family 10h processors and older Intel Core architectures, indicating a shift to a refactored or updated hardware detection and monitoring system.
Hardware/CPU · high confidence
Removal of legacy HDD temperature monitoring code
The legacy HDD monitoring implementation, including the HDD, HDDGroup, and SMART classes, has been removed from the codebase. This deletion eliminates the previous mechanism for reading and displaying hard drive temperatures via S.M.A.R.T. data, which is being replaced by a refactored hardware monitoring system.
Hardware/HDD · high confidence
Removal of legacy T-Balancer hardware support
The legacy T-Balancer hardware driver has been removed from the application. This change deletes the \TBalancer\ and \TBalancerGroup\ classes, which previously handled communication with T-Balancer bigNG devices via the \System.IO.Ports.SerialPort\ class. Users will no longer be able to monitor or control T-Balancer fan controllers or their associated temperature sensors through this specific legacy implementation.
Hardware/TBalancer · high confidence
Removal of legacy Utilities classes
The Configuration, CrashReport, EmbeddedResources, and PInvokeDelegateFactory classes have been removed from the Utilities namespace. This eliminates the previous application settings storage, manual crash logging, embedded image retrieval, and dynamic P/Invoke delegate generation mechanisms, indicating a shift in how the application handles configuration, error reporting, resources, and native interop.
Utilities · high confidence
Removed SMBIOSGroup class and WMI-based SMBIOS parsing
The SMBIOSGroup class, which previously retrieved raw SMBIOS data via WMI (MSSMBios\_RawSMBiosTables) and parsed BIOS and BaseBoard information, has been deleted from the codebase. This removes the specific capability to report SMBIOS-derived hardware details (such as BIOS vendor/version and mainboard manufacturer/product name) through this component.
Hardware/SMBIOS · high confidence
Removed legacy AssemblyInfo.cs file
The Properties/AssemblyInfo.cs file, which previously defined assembly metadata such as version (0.1.0.0), copyright, and GUIDs, has been deleted. This indicates that assembly identity and versioning are now managed through a different mechanism (such as project-level properties or source-generated attributes) rather than the traditional static assembly info file.
Properties · high confidence
Removed legacy GUI components and tree-view implementation
The legacy GUI implementation has been removed, deleting the main form, about box, plot panel, and the tree-view node classes (HardwareNode, SensorNode, TypeNode) that previously rendered the hardware hierarchy and sensor data. This eliminates the old tree-based UI and its associated designer files, indicating a shift away from the previous visual structure for displaying hardware information.
GUI · high confidence
Removed legacy LPC Super I/O chip support
The legacy hardware monitoring implementation for LPC Super I/O chips has been removed. This change deletes the \Chip\ enumeration, the \IT87\ driver class, the \W83627DHG\ driver class, and the \LPCGroup\ detection logic, effectively eliminating support for older ITE IT87 and Winbond W83627 series chips from the application.
Hardware/LPC · high confidence
Removed legacy NVAPI-based NVIDIA GPU driver support
The NVIDIA hardware monitoring implementation located in Hardware/Nvidia has been completely removed. This deletes the NVAPI wrapper (NVAPI.cs), the GPU class (NvidiaGPU.cs), and the group enumerator (NvidiaGroup.cs), eliminating the ability to monitor NVIDIA GPUs via the NVAPI interface.
Hardware/Nvidia · high confidence
Architecture
Refactored Embedded Controller architecture with new ChromeOS support
The Embedded Controller (EC) implementation has been restructured into a modular, interface-driven design. The new architecture introduces an IEmbeddedControllerIO abstraction, enabling distinct implementations for Windows (WindowsEmbeddedControllerIO) and ChromeOS (ChromeOSEmbeddedControllerIO) environments, with the latter adding support for reading temperature and fan sensors via the EC memory map. The previous monolithic logic has been replaced by a base EmbeddedController class that manages board-specific sensor mappings (such as VRM, CPU, and T-Sensor data for various ASUS ROG and Prime models) and delegates hardware access to the appropriate IO interface, improving code maintainability and platform separation.
LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/EC · high confidence
Behavioural changes
9 commits (3 fixes) modifying External
A change to existing behaviour in External — 9 commits (3 fixs), 6 files.
External · medium confidence · unverified
Expanded hardware detection and multi-platform support
LibreHardwareMonitorLib now supports ARM64 builds and includes detection logic for Intel Skylake Integrated Memory Controller (IMC) via the new RAMSPDToolkitDriver. The library has also replaced the WinRing0 driver with PawnIO for SMBus access and added a new native methods definition file to support these low-level hardware interactions.
LibreHardwareMonitorLib · high confidence
GPU monitoring rewritten with new vendor-specific implementations
The GPU monitoring subsystem in LibreHardwareMonitorLib has been completely refactored to use new, dedicated classes for each vendor, replacing the previous monolithic or legacy implementations. AMD GPUs are now handled by AmdGpu and AmdGpuGroup, leveraging the ADL library for sensors like temperature, clock, load, and power, with support for PMLog on newer architectures. NVIDIA GPUs are managed by NvidiaGpu and NvidiaGroup, utilizing NvAPI and NVML for detailed telemetry including thermal zones, memory junction temps, and fan control, with added support for ASUS Astral subsystems. Intel GPUs are split into IntelDiscreteGpu (using Intel GCL for discrete cards) and IntelIntegratedGpu (using D3D and MSR for integrated graphics), providing memory bandwidth, power, and node usage sensors. A new GenericGpu base class standardizes the interface for these implementations.
LibreHardwareMonitorLib/Hardware/Gpu · high confidence
Hardware access now uses the PawnIO driver
LibreHardwareMonitor has replaced its previous low-level I/O mechanisms (such as WinRing0) with the PawnIO driver. This change introduces a new \PawnIo\ subsystem that loads specific binary modules (e.g., \AMDFamily0F.bin\, \IntelMSR.bin\, \Nvidia.bin\) via IOCTLs to read MSRs, thermal channels, and Super I/O data. Users must have the PawnIO driver installed on their system for hardware monitoring to function correctly.
LibreHardwareMonitorLib/PawnIo · high confidence
LPC hardware monitoring stack migrated to PawnIO with new Gigabyte controller support
The LPC hardware monitoring subsystem has been refactored to replace the previous WinRing0 dependency with PawnIO for low-level I/O access, improving stability and reducing external driver requirements. This change introduces a new \Chip\ enumeration and \ISuperIO\ interface to standardize sensor detection across ITE (IT87XX, IT86XX), Nuvoton (NCT67xx), Fintek (F718XX), and Winbond chips. Additionally, support for Gigabyte's custom fan controllers has been added via \IsaBridgeGigabyteController\ and \EcioPortGigabyteController\, allowing the application to disable proprietary EC firmware to enable direct fan control. Linux support is also expanded through a new \LMSensors\ implementation that reads from \/sys/class/hwmon/\.
LibreHardwareMonitorLib/Hardware/Motherboard/Lpc · high confidence
Project renamed to LibreHardwareMonitor with MPL 2.0 license and modernized build infrastructure
The project has been renamed from OpenHardwareMonitor to LibreHardwareMonitor, and the license has been changed to the Mozilla Public License 2.0. The solution file has been updated to Visual Studio 2022 (Format Version 12.00), adding support for ARM64, x64, and x86 platforms, and replacing the old solution with a new structure including \LibreHardwareMonitorLib\, \LibreHardwareMonitor.Windows.Forms\, and \Aga.Controls\. A new \.editorconfig\ file enforces consistent C\# coding styles, and a \Directory.Build.props\ file sets the default version to 0.9.6. The old \OpenHardwareMonitor.sln\ and \Program.cs\ entry point have been removed.
(repo-wide) · high confidence
Re-structured motherboard hardware detection and sensor configuration
The motherboard hardware detection logic has been re-structured to use a new internal model for identifying manufacturers and specific board models, replacing the previous inline string matching. This change introduces dedicated data classes for sensor definitions (Voltage, Temperature, Fan, Control) and a new SuperIOHardware implementation that applies board-specific configurations for sensors and controls. Users will benefit from more accurate motherboard identification and consistent sensor naming across supported hardware, while the underlying detection mechanism is now modularized for easier maintenance.
LibreHardwareMonitorLib/Hardware/Motherboard · high confidence
Removal of legacy hardware interfaces and WinRing0 dependency
The Hardware module has removed several core interface files (IGroup, IHardware, ISensor) and the WinRing0 wrapper class. This eliminates the previous hardware abstraction layer and the external WinRing0 driver dependency, indicating a shift to a new internal implementation for hardware enumeration and sensor access.
Hardware · high confidence
Replaced legacy interop wrappers with CsWin32-generated P/Invoke bindings
The interop layer for AMD (AtiAdlxx), NVIDIA (NvApi, NvidiaML), Intel (IntelGcl), FTDI (Ftd2xx), and IPMI drivers has been rewritten using CsWin32 source generators. This migration replaces manual, error-prone DllImport declarations with compiler-generated bindings, improving type safety and reducing the risk of memory corruption or access violations during hardware sensor queries.
LibreHardwareMonitorLib/Interop · high confidence
Rewritten CPU hardware detection and sensor reporting engine
The CPU monitoring subsystem has been completely rewritten to improve accuracy and support modern architectures. The new \CpuGroup\ factory now instantiates specific processor classes (such as \Amd17Cpu\ for Ryzen and \IntelCpu\ for Intel) based on CPUID data, replacing the previous generic logic. This change introduces per-core load sensors, refined temperature offset calculations for newer AMD Zen processors, and accurate clock speed reporting via the PawnIO library. It also adds support for Intel's hybrid Performance/Efficient core topology and improves Linux compatibility by reading CPU load from /proc/stat.
LibreHardwareMonitorLib/Hardware/Cpu · high confidence
Storage monitoring now uses DiskInfoToolkit
The storage subsystem has been replaced with a new implementation based on the DiskInfoToolkit library. This change introduces new internal components (ISmart, SmartAttribute, StorageDevice, StorageDeviceSensor, StorageGroup) to handle disk detection, SMART attribute reading, and sensor updates. Users will see improved reliability in storage data collection, including better handling of device wake-up states via the new ForceWakeup property and more accurate performance metrics.
LibreHardwareMonitorLib/Hardware/Storage · high confidence
Updated PawnIO modules to version 0.2.11
The embedded PawnIO modules have been updated to version 0.2.11, bringing in the latest signed binaries from the official repository. This update ensures compatibility with the latest hardware detection logic and security standards provided by the PawnIO project.
LibreHardwareMonitorLib/Resources/PawnIo · high confidence
Dependencies
Migrate to modern .NET SDK project format and upgrade dependencies
The project has replaced the legacy Visual Studio 2008-style OpenHardwareMonitor.csproj with modern SDK-style project files (Aga.Controls, LibreHardwareMonitorLib, and LibreHardwareMonitor.Windows.Forms). This migration updates the target frameworks to include .NET 10.0 alongside .NET 4.7.2, adds ARM64 platform support, and upgrades core dependencies such as System.IO.Ports, System.Management, and System.Resources.Extensions to version 10.0.12. The new structure also enables Native AOT compatibility and trimming for modern .NET targets.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 53 → 50 (-2.6)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 97 → 97 (-0.2)
- Architecture 91 → 92 (+1.2)
- Maturity 50 → 42 (-7.7)
- Readiness 41 → 41 (-0.0)
- Security 70 → 65 (-5.1)
- Performance 70 → 70 (+0.0)
Resolved (13)
- Bounded contexts not declared
- Duplicated block (6 lines × 2) (Aga.Controls/Tree/NodeControls/NodeIcon.cs)
- Further orphaned files (smaller)
- Hotspot: LibreHardwareMonitor.Windows.Forms/Utilities/HttpServer.cs (LibreHardwareMonitor.Windows.Forms/Utilities/HttpServer.cs)
- Low cohesion: EditableControl (LCOM4 4) (Aga.Controls/Tree/NodeControls/EditableControl.cs)
- Low cohesion: NodeComboBox (LCOM4 5) (Aga.Controls/Tree/NodeControls/NodeComboBox.cs)
- Low cohesion: NodePlusMinus (LCOM4 4) (Aga.Controls/Tree/NodeControls/NodePlusMinus.cs)
- Low cohesion: TreeColumn (LCOM4 5) (Aga.Controls/Tree/TreeColumn.cs)
- Low cohesion: TreeViewAdv (LCOM4 8) (Aga.Controls/Tree/TreeViewAdv.cs)
- No exposed public API
- Off-boarding risk: anonymized user #1
- Orphaned knowledge (Aga.Controls/Tree/TreeViewAdv.cs)
- Split LibreHardwareMonitorLib
New (19)
- CommentedOutCode (Aga.Controls/Tree/TreeViewAdv.Editor.cs)
- Documentation: no architecture or design documentation (README.md)
- Duplicated block (13 lines × 2) (Aga.Controls/Tree/Node.cs)
- Duplicated block (6 lines × 2) (Aga.Controls/Tree/NodeControls/NodeIcon.cs)
- High secret: WD-SECRET-0003 (External/OxyPlot/OxyPlot.WindowsForms/OxyPlot.WindowsForms.snk)
- High secret: WD-SECRET-0003 (External/OxyPlot/OxyPlot/OxyPlot.snk)
- High: security finding (details withheld)
- High: security finding (details withheld)
- Hotspot: LibreHardwareMonitorLib/Hardware/Motherboard/Identification.cs (LibreHardwareMonitorLib/Hardware/Motherboard/Identification.cs)
- Hotspot: LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/IT87XX.cs (LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/IT87XX.cs)
- Hotspot: LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/LpcIO.cs (LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/LpcIO.cs)
- Hotspot: LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/Nct677X.cs (LibreHardwareMonitorLib/Hardware/Motherboard/Lpc/Nct677X.cs)
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- Off-boarding risk: anonymized user #1
- Outdated: Microsoft.Windows.CsWin32
- Projects may be oversized for their cohesion
- Rotate the exposed credentials — git history can't be un-committed
- WriteOnlyPrivateField (Aga.Controls/GifDecoder.cs)
Changes since last survey
- 25 commits — 20 feature/other, 5 fixes
By area
- LibreHardwareMonitorLib/Hardware — 18 commits
- LibreHardwareMonitorLib/LibreHardwareMonitorLib.csproj — 3 commits
- Aga.Controls/Aga.Controls.csproj — 2 commits
- .github/workflows — 1 commit
- LibreHardwareMonitorLib/Resources — 1 commit
Notable commits
- fix: Fix Intel 700 series water flow EC register and factor (#2497)
- fix: Fix NCT6701D + add three mainboards. (#2417)
- fix: Fix cleanup of StorageGroup and enable Storages for Linux. (#2484)
- fix: Fix restore logic for NCT6683D/NCT6686D/NCT6687D (#2527)
- fix: Fix sensor definitions for Gigabyte X870 AORUS Elite WIFI7 (#2517)
- change: Add ASRock B650M-HDV/M.2 (#2525)
- change: Add EC sensors for ASUS ROG CROSSHAIR X870E HERO (#2510)
- change: Add EC sensors for ASUS ROG CROSSHAIR X870E HERO BTF (#2479)
- change: Add EC sensors for ASUS ROG STRIX Z890-E GAMING WIFI (#2526)
- change: Add IT8772E support and workflow_dispatch trigger (#2505)
- change: Add X870E GODLIKE X EDITION. (#2416)
- change: Add hotspot sensor for NVIDIA GPUs. (#2467)
- change: Add support for MSI MEG X870E UNIFY-X MAX motherboard (#2502)
- change: Add support to Asrock B850I lightning (#2330)
- change: Bump System.IO.Ports and 4 others (#2518)
- change: Bump the all-dependencies group with 1 update (#2493)
- change: Bump the all-dependencies group with 1 update (#2509)
- change: Bump the all-dependencies group with 5 updates (#2490)
- change: Distinguish between CPU and Chassis fans on the ASRock B450 Pro4 (#2439)
- change: IT87XX _initialFanOutputModeEnabled use the right bit, not the whole byte (#2528)
- …and 5 more
Architecture
- Unchanged — 2 containers · 0 contexts · 0 edges
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
LibreHardwareMonitor/LibreHardwareMonitor was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 23 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit dc51e75bd97b15ce17ded0885e67bad47be0765b — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-955b9cee9818.