Custom user sensors in HWiNFO

Martin

HWiNFO Author
Staff member
HWiNFO since version 6.10 introduces a new feature - ability to display custom user sensors in the sensors window.
This feature allows users with basic programming skills to show any sensor values. This might be useful in case of custom-made devices, or sensor values not implemented in HWiNFO by default (i.e. clock time).
The interface used to provide data to HWiNFO is Windows Registry. Users wishing to publish data into sensors will need to create a few specific keys and values in the registry.
Format of the required registry is following.

Main registry node for custom sensors must reside under: HKEY_CURRENT_USER\Software\HWiNFO64\Sensors\Custom
Under this node, up to 64 custom keys can be placed, each of them representing an unique sensor instance. Name of the key is used as the sensor name. Example: HKEY_CURRENT_USER\Software\HWiNFO64\Sensors\Custom\My Device1

Under each of the custom sensor keys, a set of defined sensor value keys shall be located. These keys must use one of the following names in order to be properly recognized:
Key Name​
Description​
TempXA temperature value in degrees of Celsius
VoltXA voltage value in Volts
FanXA fan value in RPM
CurrentXA current value in Amperes
PowerXA power value in Watts
ClockXA clock value in MHz
UsageXA usage value in %
OtherXOther value in custom units
The "X" represents a sequence number starting from 0, for example the first temperature value shall be named as Temp0.

Under each of the above keys the following registry values must be present:
Value Name​
Accepted Value Type​
Description​
NameREG_SZA string describing the name of the value.
ValueREG_DWORD, REG_QWORD, REG_SZThe resulting value from the sensor readout.
Use REG_DWORD or REG_QWORD for integer values, REG_SZ as a string for floating-point values.
UnitREG_SZUsed for the "Other" value type only to describe the custom unit name.

Following is an example of registry values:
CustomSensor.png
used to show the following sensor:
CustomSensor2.png

UPDATE: Version 6.21-4055 Beta introduces the ability to use simple formulas
This new feature allows to create custom sensor values using simple math operations including combinations of existing sensor values.
The entire formula has to be specified in the Value registry field, which needs to be of string (REG_SZ) type.
The formula can contain simple math operations with an integer or floating-point number or the value of an existing sensor. Currently the following operations are supported:
Operator​
Description​
+Add
-Subtract
*Multiply
/Divide
min(a, b, ...)Minimum value
max(a, b, ...)Maximum value

If a value of an existing sensor is required, it has to be specified inside quotation marks and is case-sensitive (e.g. "Core 0 Clock"). The value name string has to be present in the sensors list and it should be unique. If there are multiple sensors with the same name, rename the desired sensor value in the sensors window to make it unique (using the F2 key or via sensor settings).
Multiple math operations can be specified, but operator precedence is not evaluated. The formula is evaluated in the order it's defined (serially); using parentheses to define precedence is not supported and a multiplication doesn't take precedence over addition.

Some examples of simple formulas:
  • To show the average value of four core VID values, use:
    "Core 0 VID" + "Core 1 VID" + "Core 2 VID" + "Core 3 VID" / 4

  • To show the maximum value of two core clocks use:
    max("Core 0 Clock", "Core 1 Clock")

I hope this feature will be useful.
Feel free to post your experience and your custom applications in this thread.
 
Last edited:

MintyMods

Minty
Hi Martin,

Will these custom sensor results be available via the standard shared memory support or is this new feature limited to showing these custom readings within the HWiNFO sensor window only?

Cheers
Minty
 

MintyMods

Minty
Thanks, sounds like a very useful addition. I assume there are no changes to the actual SHM API for this change?
 

Bri

New Member
So we can't add actual sensors to HWiNFO, this just adds a value that gets reported as a sensor? For example, I have a laptop and the software that came with it can see fan speeds, but HWiNFO can't see them. This wouldn't allow me to have HWiNFO monitor those fan speeds, would it?
 

Martin

HWiNFO Author
Staff member
If you know how to read fan speeds for that laptop, you can write an application that will export those values to HWiNFO.
 

flep

New Member
Nice feature!

Question, is there a simple way to add a sensor to show RAM physical usage by a specific software, like we see on Task Manager for exemple?
This would be super useful on some games that use a lot of RAM.

Or that will also require to write a custom app to export those values?

Thanks!
 

Martin

HWiNFO Author
Staff member
Adding custom sensors to HWiNFO will always require writing some specific application or a script at least to place the values in required structure into registry.
 
Top