- add temperature sensors for high/low/critical limits
- change thermal sensor index to 0
- adjust sensor indices accordingly
Storage:
- add Free Space sensor
- add Total Space sensor
- change temperature sensors indices to start from 0
- remove temperature sensor 1 as the non numbered sensor is the same
* 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
Additionally sync with upstream
* Add support for B850M Gaming Plus WIFI and Z890 Unify-X
Also removes duplicate model identification case for B850M GAMING PLUS WIFI6E
* 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>
* Add Intel Arc VRAM sensors support
- Implement BDF-based device matching for Intel discrete GPUs
- Add VRAM sensors (total, used, free, load percentage)
- Use D3D device enumeration with fallback logic
- Enable Windows-specific VRAM monitoring for Intel Arc GPUs
- Fix device identification to distinguish between multiple identical GPUs
Resolves issue where both Intel Arc GPUs showed identical VRAM values.
Now each GPU displays unique, accurate memory usage statistics.
* Add defensive validation to GetBdfFromDeviceIdentifier
- Add null/empty check for deviceIdentifier parameter
- Return false explicitly when LastIndexOf('#') returns -1
- Add DEVPROPTYPE.DEVPROP_TYPE_UINT32 validation after property queries
- Use sizeof(uint) instead of hardcoded 4 for buffer sizes
- Apply PCI spec bit masks (5-bit device, 3-bit function)
- Add bus range validation (0-255)
* Revert to Windows DEVPKEY_Device_Address spec masks
Use 0xFFFF masks as per Windows documentation instead of PCI spec
bit widths. The Windows API uses full 16-bit fields for device and
function numbers.
* Update IntelDiscreteGpu.cs
* Update NativeMethods.txt
---------
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
* 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 GPU Memory Total, Used, Free sensors (SmallData type, in MB)
- Add GPU Memory load sensor (percentage)
- Add GPU Memory Read/Write bandwidth sensors (Throughput type, in B/s)
- Use D3DDisplayDevice API to query VRAM usage via Windows kernel
- Match Intel discrete GPUs using PCI vendor/device IDs
- Include fallback detection for Intel GPUs if initial matching fails
- Bandwidth sensors read from Intel GCL telemetry with unit conversion