1# sensor_monitoring 2 3## Description 4 5Defines how to read the sensors for a voltage rail, such as voltage output, 6current output, and temperature. Sensor values are measured, actual values 7rather than target values. 8 9Sensors will be read once per second. The sensor values will be stored on D-Bus 10on the BMC, making them available to external interfaces like Redfish. 11 12The [pmbus_read_sensor](pmbus_read_sensor.md) action is used to read one sensor. 13To read multiple sensors, multiple "pmbus_read_sensor" actions need to be 14executed. 15 16The "pmbus_read_sensor" actions can be specified in two ways: 17 18- Use the "rule_id" property to specify a standard rule to run. 19- Use the "actions" property to specify an array of actions that are unique to 20 this device. 21 22## Properties 23 24| Name | Required | Type | Description | 25| :------- | :-----------------: | :---------------------------- | :---------------------------------------------------------- | 26| comments | no | array of strings | One or more comment lines describing the sensor monitoring. | 27| rule_id | see [notes](#notes) | string | Unique ID of the [rule](rule.md) to execute. | 28| actions | see [notes](#notes) | array of [actions](action.md) | One or more actions to execute. | 29 30### Notes 31 32- You must specify either "rule_id" or "actions". 33 34## Examples 35 36``` 37{ 38 "comments": [ "Read all sensors supported by the IR35221 regulator" ], 39 "rule_id": "read_ir35221_sensors_rule" 40} 41 42{ 43 "comments": [ "Only read sensors if version register 0x75 contains 2.", 44 "Earlier versions produced invalid sensor values." ], 45 "actions": [ 46 { 47 "if": { 48 "condition": { 49 "i2c_compare_byte": { "register": "0x75", "value": "0x02" } 50 }, 51 "then": [ 52 { "run_rule": "read_sensors_rule" } 53 ] 54 } 55 } 56 ] 57} 58``` 59