Kernel driver lm73Âķ
Supported chips:
Texas Instruments LM73
Prefix: âlm73â
Addresses scanned: I2C 0x48, 0x49, 0x4a, 0x4c, 0x4d, and 0x4e
Datasheet: Publicly available at the Texas Instruments website
Author: Guillaume Ligneul <guillaume.ligneul@gmail.com>
Documentation: Chris Verges <kg4ysn@gmail.com>
DescriptionÂķ
The LM73 is a digital temperature sensor. All temperature values are given in degrees Celsius.
Measurement Resolution SupportÂķ
The LM73 supports four resolutions, defined in terms of degrees C per LSB: 0.25, 0.125, 0.0625, and 0.3125. Changing the resolution mode affects the conversion time of the LM73âs analog-to-digital converter. From userspace, the desired resolution can be specified as a function of conversion time via the âupdate_intervalâ sysfs attribute for the device. This attribute will normalize ranges of input values to the maximum times defined for the resolution in the datasheet.
Resolution
Conv. Time
Input Range
(C/LSB)
(msec)
(msec)
0.25
14
0..14
0.125
28
15..28
0.0625
56
29..56
0.03125
112
57..infinity
The following examples show how the âupdate_intervalâ attribute can be used to change the conversion time:
$ echo 0 > update_interval
$ cat update_interval
14
$ cat temp1_input
24250
$ echo 22 > update_interval
$ cat update_interval
28
$ cat temp1_input
24125
$ echo 56 > update_interval
$ cat update_interval
56
$ cat temp1_input
24062
$ echo 85 > update_interval
$ cat update_interval
112
$ cat temp1_input
24031
As shown here, the lm73 driver automatically adjusts any user input for âupdate_intervalâ via a step function. Reading back the âupdate_intervalâ value after a write operation will confirm the conversion time actively in use.
Mathematically, the resolution can be derived from the conversion time via the following function:
g(x) = 0.250 * [log(x/14) / log(2)]
where âxâ is the output from âupdate_intervalâ and âg(x)â is the resolution in degrees C per LSB.
Alarm SupportÂķ
The LM73 features a simple over-temperature alarm mechanism. This feature is exposed via the sysfs attributes.
The attributes âtemp1_max_alarmâ and âtemp1_min_alarmâ are flags provided by the LM73 that indicate whether the measured temperature has passed the âtemp1_maxâ and âtemp1_minâ thresholds, respectively. These values _must_ be read to clear the registers on the LM73.