1description: >
2    Implement to provide sensor readings.  Objects implementing
3    Sensor.Value must be instantiated in the correct
4    hierarchy within the sensors namespace.  The following sensor
5    hierarchies are recognized:
6      airflow
7      altitude
8      current
9      energy
10      fan_tach
11      humidity
12      power
13      pressure
14      temperature
15      utilization
16      voltage
17
18    Any service implementing Sensor.Value on one or more objects must
19    implement org.freedesktop.DBus.ObjectManager on the sensors namespace root.
20
21    All Sensor.Value properties are read-only.
22
23properties:
24    - name: Value
25      type: double
26      description: >
27          The sensor reading.
28    - name: MaxValue
29      type: double
30      default: infinity
31      description: >
32          The Maximum supported sensor reading.
33    - name: MinValue
34      type: double
35      default: -infinity
36      description: >
37          The Minimum supported sensor reading.
38    - name: Unit
39      type: enum[self.Unit]
40      description: >
41          The unit of the reading.  Immutable once set for a sensor.
42          For objects in the airflow namespace, Unit must be "CFM"
43          For objects in the altitude namespace, Unit must be "Meters".
44          For objects in the current namespace, Unit must be "Amperes".
45          For objects in the energy namespace, Unit must be "Joules".
46          For objects in the fan_tach namespace, Unit must be "RPMS".
47          For objects in the humidity namespace, Unit must be "PercentRH"
48          For objects in the power namespace, Unit must be "Watts".
49          For objects in the pressure namespace, Unit must be "Pascals"
50          For objects in the temperature namespace, Unit must be "DegreesC".
51          For objects in the utilization namespace, Unit must be "Percent"
52          For objects in the voltage namespace, Unit must be "Volts".
53
54enumerations:
55    - name: Unit
56      description: >
57        A sensor reading unit.
58      values:
59        - name: Amperes
60          description: >
61            Electrical charge flow rate as Amperes.
62        - name: CFM
63          description: >
64            To calculate Air Flow in Cubic Feet per Minute
65        - name: DegreesC
66          description: >
67            Temperature as degrees Celsius.
68        - name: Joules
69          description: >
70            Energy transfer as Joules.
71        - name: Meters
72          description: >
73            Length as meters.
74        - name: Percent
75          description: >
76            Resource utilization as a percentage.
77        - name: PercentRH
78          description: >
79            Relative humidity as a percentage.
80        - name: Pascals
81          description: >
82            Pressure as pascals.
83        - name: RPMS
84          description: >
85            Frequency of rotation as revolutions per minute.
86        - name: Volts
87          description: >
88            Electomotive force as volts.
89        - name: Watts
90          description: >
91            Rate of energy transfer as Watts.
92