hardcoded median function in phosphor-virtual-sensor

Matt Spinler mspinler at linux.ibm.com
Tue Jan 5 04:48:31 AEDT 2021


Hi,

Just putting on the list what was decided after some lengthy discussions 
on discord.

I need a median of some sensor values, where this median sensor has 
threshold interfaces
whose values must be defined in entity-manager.  Since exprtk 
expressions are not allowed in
entity-manager, I cannot just port the PVS's JSON config into an 
entity-manager config.

Instead, I will make a new entity-manager config that will have the 
component sensors
along  with the thresholds to use, with a subtype of median, vaguely 
something like:

{

Type: "VirtualSensor"

Name: "MySensorName"

Subtype: "Median"

Sensors: [ "Sensor1", "Sensor2", .... ]

ThresholdsWithHysteresis [ ]

minInput: 0

maxInput: 100

}


The minInput/maxInput are needed so we don't use garbage sensor readings 
in the median
algorithm.  PVS will look for this config to be provided on D-Bus by 
entity-manager, and if
it's there it will calculate the median (in C++, not exprtk) and use it 
as the virtual sensor value.

Thanks,
Matt



More information about the openbmc mailing list