Clone this repo:

Branches

  1. 9358f6b Add fan_pwm to the possible sensors by Konstantin Aladyshev · 6 weeks ago master
  2. 96439f1 meson: adjust nlohmann-json dependency by Patrick Williams · 5 months ago
  3. f2e9422 UpdateVirtualSensor uses information from signals by Tao Lin · 6 months ago
  4. ae10c52 clang-format: copy latest and re-format by Patrick Williams · 6 months ago
  5. 14ef874 Add UT cases for exprtk functions related to nan by Lei YU · 7 months ago

phosphor-virtual-sensor

phosphor-virtual-sensor reads the configuration file virtual_sensor_config.json from one of three locations:

  1. The current directory.
  2. /var/lib/phosphor-virtual-sensor
  3. /usr/share/phosphor-virtual-sensor

By default the repository will install a sample config into (3).

There are two types of data in this file.

virtual sensor configuration information

See virtual_sensor_config.json in this repository for an example. Sensors added this way can use any expression that is accepted by exprtk.

information to get a virtual sensor configuraton from D-Bus

For example:

{
  "Desc": {
    "Config": "D-Bus",
    "Type": "ModifiedMedian"
  }
}

Sensors added this way can only use a set of restricted calculations. Currently the only type supported is modifiedMedian.

The virtual sensor configuration information needs to be added into the relevant hardware configuration file in entity-manager. This method of adding a virtual sensor allows a recipe that builds for different hardware configurations to have different virtual sensors for each configuration.

The virtual sensor configuration in entity manager follows a different format to the JSON in virtual_sensor_config.json (specified in entity-manager/schemas/VirtualSensor.json).