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