Commit Graph
148 Commits
Author SHA1 Message Date
bloom 60197b6f92 Gadget Styling (Background Color) (#2282)
* Add background tinting and color picker to gadget

-Replaced barblue.png and gadget.png with desaturated versions.
-Added background tinting support (_backTinted, _backgroundColor, _backgroundDirty), switched _barFore to use bar.png, and dispose tinted background resources during cleanup.
-Reworked font color selection UX and mirrored the same chooser flow for background color.

* Fix Gadget bars and HSV color picker UI + Icon

-Fixed gadget bars to tint with selected background color
-Updated color picker flow with a themed, resizable HSV picker.
-Applied LibreHardwareMonitor icon and current app theme to the picker window.

* Hex values and finalize color tinting

-Added Copy/Paste to hex value field.
-Fixed color tinting to respect true grayscale/dark hex values (e.g. #000000) .
-Utilization bars now follow font color tinting.

* Utilization bars fix

-Fixed utilization bar tinting to follow the selected font color directly

* Github Copilot Suggestions

-Forced grayscale-safe background tint behavior, switched background tint processing to LockBits.
-Preserved custom bar override images by skipping tint on user-provided bar assets.
-Fixed PArgb premultiplication in tint output to remove edge halo artifacts.

* Restrict workingSource to Format32bppArgb

-Normalized CreateBackgroundTint sources to Format32bppArgb before LockBits so premultiplied PArgb images are not processed with non-premultiplied ARGB tint math.

* Windows accessibility text scaling

-Adjusted picker layout to scale correctly when Windows Text Size is increased in Accessibility settings.
2026-04-02 10:36:44 +02:00
PhyxionNL 516c90c7be Update deps 2026-03-15 11:05:29 +01:00
Blacktempel a0392ad4fc Add StorageDevice.ForceWakeup property. (#2252) 2026-03-02 19:16:01 +01:00
Blacktempel 5690f8f62b Remove formatting from raw values. (#2254) 2026-03-02 19:14:29 +01:00
Blacktempel f5479cdbf0 Update DiskInfoToolkit & add Force Drive Wakeup option (#2245)
* Update DiskInfoToolkit.
Add option for Force Drive Wakeup.

* Change default value

* Replace name
2026-02-27 16:26:30 +01:00
Sab44andPhyxionNL 8cc452c31a Add application version to root node of data.json (#2240)
* Add version to root node of data.json

* Formatting

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2026-02-27 14:27:45 +01:00
Blacktempel e2e0d1c9ad Updates for TG WVP2 (#2215)
* Implement Fan control for TG WVP2.
Calculate approximate fan speed.

Catch two exceptions.
Remove leftover close in ReadConfig.

* Support for multi device detection

* Add more data to report

* Add group for power monitors and remove from GenericGpu.

* Move files.
Add option for Power Monitor in Computer + UI.
2026-02-13 18:15:24 +01:00
Blacktempel 7caca88771 Fix for new PawnIO release. (#2222)
Add new binary.
2026-02-13 17:30:03 +01:00
PhyxionNL e4d804bd77 Upgrade package versions in csproj file
Updated System.Management and System.Resources.Extensions package versions to 10.0.3.
2026-02-12 17:27:41 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 4ab6fa1617 Bump System.Text.Json from 10.0.2 to 10.0.3 (#2214)
---
updated-dependencies:
- dependency-name: System.Text.Json
  dependency-version: 10.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-12 15:33:03 +01:00
Blacktempel fb1012d2f9 Save expanded state also for: (#2173)
- Expand all nodes
- Collapse all nodes
2026-01-20 17:12:38 +01:00
Cristobal E.andPhyxionNL 07791a4ae4 Added query parameters to the /metrics endpoint (#2151)
* Added query parameters to the /metrics endpoint

* Fixed a Typo and Some Style corrections

* Update HttpServer.cs

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2026-01-16 12:42:58 +01:00
PhyxionNL 55ace674a7 Update System.Resources.Extensions to version 10.0.2 2026-01-14 18:04:12 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 97222473a5 Bump System.Text.Json from 10.0.1 to 10.0.2 (#2163)
---
updated-dependencies:
- dependency-name: System.Text.Json
  dependency-version: 10.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-14 17:56:15 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> e06f141299 Bump System.Management from 10.0.1 to 10.0.2 (#2160)
---
updated-dependencies:
- dependency-name: System.Management
  dependency-version: 10.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-14 17:55:51 +01:00
PhyxionNL aaf65f5e0f Add .NET 10 build
Also drops WMI provider as this is no longer working with .NET 10.
2025-12-20 14:33:56 +01:00
K900 df244186fb Prometheus: use correct timestamp resolution (#2110)
The spec says it must be milliseconds.
2025-12-16 23:08:09 +01:00
PhyxionNL a1b5fcfa15 Update deps
Closes #2100, #2099
2025-12-15 11:45:40 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 1518849dcc Bump System.Text.Json from 10.0.0 to 10.0.1 (#2102)
---
updated-dependencies:
- dependency-name: System.Text.Json
  dependency-version: 10.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-14 15:06:19 +01:00
Cristobal E.andPhyxionNL 2ee84226ce Prometheus bugfixes (#1982)
* Bug fixes and Distinctive aliases
Fixed an exception when a Type was not registered in the dictionary
Added distinctive aliases for hardware and sensors to prevent confusion due to duplicated names
Reviewed units and factors

* Skip null values as per #1979

* On prometheus null value show full tagName if possible

* Using Dictionaries to keep track of hardware and sensor's names

* Fixing some logic errors.

* Bugfix: Typo in message

* Report up to 5 values per sensor.

* Renamed variables for clarity
Modified labels as requested

* Removed unused variables
Fixed error in dictionary key

* Fixed a logic error

* Removed remote debug

* Replaced alilas logic for a simpler `name (id)`

* Bugfix: Prometheus requires a colon here
Specially in strict mode and in victoriametrics.

* Forcing invariant locale conversion of numbers.

* Minor Code formatting

* Bug fixes and Distinctive aliases
Fixed an exception when a Type was not registered in the dictionary
Added distinctive aliases for hardware and sensors to prevent confusion due to duplicated names
Reviewed units and factors

* Skip null values as per #1979

* On prometheus null value show full tagName if possible

* Using Dictionaries to keep track of hardware and sensor's names

* Fixing some logic errors.

* Bugfix: Typo in message

* Report up to 5 values per sensor.

* Renamed variables for clarity
Modified labels as requested

* Removed unused variables
Fixed error in dictionary key

* Fixed a logic error

* Removed remote debug

* Replaced alilas logic for a simpler `name (id)`

* Bugfix: Prometheus requires a colon here
Specially in strict mode and in victoriametrics.

* Forcing invariant locale conversion of numbers.

* Minor Code formatting

* Misc

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-12-08 17:07:47 +01:00
PhyxionNL 018c0899b3 Remove Prometheus metrics support from HttpServer
Removed Prometheus metrics handling from the HTTP server.
2025-12-05 22:21:41 +01:00
Blacktempel 5a1a40a549 Fix warnings. (#2072) 2025-11-24 16:39:42 +01:00
CopilotPhyxionNLcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
9463c45277 Add .NET 10 target framework and update System.* packages to 10.0.0 (#2035)
* Initial plan

* Add .NET 10 support and update System.* packages to 10.0.0

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>

* Add .NET 10 SDK setup to GitHub workflows

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-11-12 10:53:47 +01:00
Blacktempel 43e728f1de Fix Nodes auto-closing right after expanding via Right key. (#2021)
Fix Nodes not saving Expanded when opening or closing via Left and Right key.
2025-11-09 13:30:30 +01:00
Blacktempel c542e856d4 Replace Storage implementation with CrystalDiskInfo based implementation (#2015)
* Replace Storage implementation with CrystalDiskInfo based implementation.

* Formatting.

* Code review.

* Code review.

* Increase space for attribute name in report.

* Implement dynamic disk handling for usage sensor.

Disable unused warnings.

* Further cleanup in NativeMethods.txt and referenced.
2025-11-08 10:53:43 +01:00
Abel G. Perez 313e076aeb Update SensorGadget.cs (#1788)
-Added Extremely Large font size to SensorGadget
-Added menu item "Hide/Show Main Window" to SensorGadget
2025-10-31 10:38:32 +01:00
Cristobal E. 1ce022562f Experimental Prometheus support (#1943)
* Experimental Prometheus support
Refactors text response to accept responseType
Generates a plaintext output in prometheus format using standard units and factors
Only called if and when endpoint (/metrics) is accessed
Exceptions are reported in the text output
This tries to minimize changes and uses no extra dependencies

* Changed strings to interpolation and raw literals to improve readability

* Fixed a typo

* Adding the Async HttpServer from Master

* Added back the http headers to SendResponseAsync

* Adding no-cache to sensor and prometheus
2025-10-19 13:36:41 +02:00
st7105 7063f5e0ae HttpServer.cs: fix #1855 (#1969)
* HttpServer.cs: fix #1855

Changed HTTP server to asynchronous tasks.

* HttpServer.cs: reformat

* HttpServer.cs: fix
2025-10-18 13:54:08 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 3fc1f542f0 Bump System.Text.Json from 9.0.9 to 9.0.10 (#1966)
---
updated-dependencies:
- dependency-name: System.Text.Json
  dependency-version: 9.0.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-15 18:06:05 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> d669c14e21 Bump System.Resources.Extensions from 9.0.9 to 9.0.10 (#1964)
---
updated-dependencies:
- dependency-name: System.Resources.Extensions
  dependency-version: 9.0.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Resources.Extensions
  dependency-version: 9.0.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-15 17:53:23 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 3188e90904 Bump System.Management from 9.0.9 to 9.0.10 (#1963)
---
updated-dependencies:
- dependency-name: System.Management
  dependency-version: 9.0.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-15 17:52:30 +02:00
Teemu Korhonen 06dba04104 Fix mistake on previous workflow edits (#1950)
* Fix restore command on workflows.

- Correct path when restoring application packages.
- Add --no-restore for application build.

* Add RuntimeIdentifiers.

So restore knows what packages to pick.
2025-10-09 13:05:55 +02:00
Taiizor ceaf074758 Add ARM64 platform support to build and projects (#1941)
* Add ARM64 platform support to build and projects

Added ARM64 as a supported platform in project files and solution configuration. Updated GitHub Actions workflows to build and publish ARM64 libraries. This enables building and distributing ARM64 binaries alongside x64 and x86.

* Add ARM64 support to NuGet packaging

Updated main.nuget.target to include ARM64 DLL and XML files in the NuGet package, enabling multi-platform support for win-arm64 in addition to x64 and x86.

* Fix ARM64 configuration mappings in solution file

Corrects the Debug and Release configuration mappings for ARM64 targets in LibreHardwareMonitor.sln, ensuring ARM64 builds use the proper platform instead of x64.
2025-10-07 11:58:44 +02:00
PhyxionNL 4093b276c6 Add x86 target 2025-10-01 12:03:50 +02:00
PhyxionNLandCopilot ee60348eac Use CsWin32 (#1912)
* Use CsWin32

* Update LibreHardwareMonitorLib/Hardware/Cpu/CpuLoad.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update LibreHardwareMonitorLib/Hardware/Battery/BatteryGroup.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update pull requests.yml

* Update pull requests.yml

* Update master.yml

* A couple more to CsWin32

* Restore PawnIO defaults

Fixes #1910

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-29 18:48:00 +02:00
Teemu KorhonenandPhyxionNL c56cf3f042 Use PawnIO driver directly in LibreHardwareMonitorLib (#1908)
* Use PawnIO driver directly.

- Implemented PawnIO library in C#
- Builds in AnyCPU, x64 and x86
- Fixes #1895

* Implement review changes for PawnIO.

- Use existing Kernel32.CreateFile import.
- Move new DeviceIOControl to Kernel32.
- Replace Lazy Version loading with static property.
- Remove bin resource cache.
- Add constant for function name length.

* More review changes for PawnIO.

- Replace redundant internal checks with IsLoaded.
- Convert Win32 error code to HRESULT before returning it in
  ExecuteHR()

* Drop KernelDriver

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-09-29 16:41:57 +02:00
Sab44andPhyxionNL be647cce78 Provide fixed unit for sensors in data.json (#1876)
* Remove redundant second null check for sensor value

* Add base formatted raw values to data.json for consistent units

* Update HttpServer.cs

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-09-23 10:46:06 +02:00
PhyxionNL efda62dbee Drop Newtonsoft.Json 2025-09-17 16:18:42 +02:00
Sab44andPhyxionNL 3c75e8e676 Add HardwareId property to hardware devices in data.json (#1868)
* add HardwareId property to hardware in data.json

* Rename 'id' key to 'Id' in JSON node generation

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-09-17 16:04:09 +02:00
namazsoandPhyxionNL eb5e1a20be Swap WinRing0 to PawnIO (#1857)
* Replace WinRing0 with PawnIO

* Update RAMSPDToolkit

* Add install check + cleanup

* Move folder + formatting

* Add back missing TryLoadDll

* Update PawnIo.cs

* Add third party notices file

* Remove the how to apply section

* Drop silent

* Don't crash if PawnIO isn't installed

* Formatting

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-09-16 11:58:31 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 133d1b78a8 Bump System.Resources.Extensions from 9.0.8 to 9.0.9 (#1852)
---
updated-dependencies:
- dependency-name: System.Resources.Extensions
  dependency-version: 9.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Resources.Extensions
  dependency-version: 9.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-10 16:56:06 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 3b7555b579 Bump System.Management from 9.0.8 to 9.0.9 (#1851)
---
updated-dependencies:
- dependency-name: System.Management
  dependency-version: 9.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-10 16:55:57 +02:00
Blacktempel 3f8294898d RAMSPDToolkit Update + timings added (#1835)
* Workaround for page changing on DDR5 systems with SPD Write Protection active has been implemented in new version of RAMSPDToolkit.

Code for LHM has been adjusted accordingly.

Added more sensors (timings).

* Move abbreviation of timings to start of string.

* Simplify names for timings.

* Update version.

* Remove extra padding.
2025-09-08 13:14:32 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> dfc5446836 Bump System.Resources.Extensions from 8.0.0 to 9.0.8 (#1838)
---
updated-dependencies:
- dependency-name: System.Resources.Extensions
  dependency-version: 9.0.8
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: System.Resources.Extensions
  dependency-version: 9.0.8
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-04 20:13:12 +02:00
Tolga YILDIRIMandPhyxionNL cb39938143 Persist “File rotation method” across Windows reboot + SDK9 build fix (#1823)
* Fix .NET SDK 9 resource build errors (System.Resources.Extensions)

* Persist file rotation method across Windows reboot

* Update MainForm.cs

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-08-29 10:42:42 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 91f046c7d5 Bump System.IO.Ports and System.Management (#1815)
Bumps System.IO.Ports from 9.0.7 to 9.0.8
Bumps System.Management to 9.0.8

---
updated-dependencies:
- dependency-name: System.IO.Ports
  dependency-version: 9.0.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-06 16:52:04 +02:00
Abel G. Perez 90f601650d Main form GUI tweaks (#1804)
- Added Expand All Nodes menu
- Added Collapse All Nodes menu
2025-07-28 15:11:12 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> f8b198a7d4 Bump System.IO.Ports, System.Management and TaskScheduler (#1782)
Bumps System.IO.Ports to 9.0.6, 9.0.7
Bumps System.Management to 9.0.6, 9.0.7
Bumps TaskScheduler from 2.12.1 to 2.12.2

---
updated-dependencies:
- dependency-name: System.IO.Ports
  dependency-version: 9.0.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.IO.Ports
  dependency-version: 9.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: TaskScheduler
  dependency-version: 2.12.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-09 23:23:42 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> f15064eb09 Bump System.IO.Ports and System.Management (#1759)
Bumps System.IO.Ports to 9.0.5, 9.0.6
Bumps System.Management to 9.0.5, 9.0.6

---
updated-dependencies:
- dependency-name: System.IO.Ports
  dependency-version: 9.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.IO.Ports
  dependency-version: 9.0.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-13 16:11:11 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 48266b0add Bump System.IO.Ports and System.Management (#1751)
Bumps System.IO.Ports to 9.0.4, 9.0.5
Bumps System.Management to 9.0.4, 9.0.5

---
updated-dependencies:
- dependency-name: System.IO.Ports
  dependency-version: 9.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.IO.Ports
  dependency-version: 9.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Management
  dependency-version: 9.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-08 16:30:39 +02:00