LM75(4)

NAME
lm75 - lm75 i2c digital temperature sensor driver

SYNOPSIS
device iic
device iicbus
device lm75

DESCRIPTION
The lm75 driver provides access to sensor data and configuration over the iicbus(4).

It provides an easy and simple way to check the functionality of an i2c bus as it provides read and write access to the lm75 configuration register.

The access to lm75 data is made via the sysctl(8) interface:

    dev.lm75.0.%desc: LM75 temperature sensor
    dev.lm75.0.%driver: lm75
    dev.lm75.0.%location: addr=0x49
    dev.lm75.0.%pnpinfo: name=lm750 compat=national,lm75
    dev.lm75.0.%parent: iicbus3
    dev.lm75.0.temperature: 27.1C
    dev.lm75.0.thyst: 75.0C
    dev.lm75.0.tos: 80.0C
    dev.lm75.0.faults: 1
    dev.lm75.0.mode: comparator
    dev.lm75.0.polarity: active-low
    dev.lm75.0.shutdown: 0

dev.lm75.%d.temperature
    Is the read-only value of the current temperature read by the sensor.

dev.lm75.%d.thyst
    Sets the hysteresis temperature. Once the temperature gets over the overtemperature shutdown value (tos) it needs to drop below the hysteresis temperature to disable the output (interrupt) pin again.

dev.lm75.%d.tos
    Sets the overtemperature shutdown value. Once the temperature gets over this value the output pin will be enabled. The way the output (interrupt) pin works, depends on the mode configuration.

dev.lm75.%d.faults
    Is the number of faults that must occur consecutively to activate the interrupt (output) pin. It can be set to 1, 2, 4, and 6.

dev.lm75.%d.mode
    Sets the operation mode for the sensor interrupt pin. It can be set to 'comparator' (default) or 'interrupt'.

dev.lm75.%d.polarity
    Sets the polarity of the sensor interrupt pin. It can be set to 'active-low' (default) or 'active-high'. Please note that the output pin is an open-drain output and it needs a proper pull-up resistor to work.

dev.lm75.%d.shutdown
    When set to '1' it shuts down the sensor. The temperature conversion stops but the sensor remains with its i2c bus active, i.e., it can be woken up by setting this option to '0' again.

Please check the lm75 datasheet for more details.

When used together with snmp_lm75(3) it allows the monitoring of lm75 temperature data over SNMP.

The lm75 driver supports both the low and the high resolution models.

The low resolution model (lm75) provides a 9 bit output with the LSB representing 0.5C.

The high resolution model (lm75a) provides an 11 bit output with the LSB representing 0.125C.

The driver tries to auto-detect the lm75 model, but the detection of some lm75 clones may not work reliably.

On a device.hints(5) based system, like MIPS, these values are configurable for lm75:

hint.lm75.%d.at
    Is the iicbus(4) you are attaching to.

hint.lm75.%d.addr
    Is the lm75 i2c address on the iicbus(4).

On a FDT(4) based system, like ARM, the DTS part for a lm75 device usually looks like:

    i2c {
    	...
    	lm750 {
    		compatible = "national,lm75";
    		i2c-address = <0x49>;
    	};
    };

Where:

compatible
    Should always be set to "national,lm75".

i2c-address
    The i2c-address property indicates which i2c address the lm75 is wired at. lm75 temperature sensors can be wired to 8 different addresses, allowing up to 8 sensors on the same iicbus(4).

SEE ALSO
snmp_lm75(3), fdt(4), iic(4), iicbus(4), sysctl(8)

HISTORY
The lm75 driver first appeared in FreeBSD 11.0.

AUTHORS
-nosplit The lm75 driver and this manual page were written by Luiz Otavio O Souza <loos@FreeBSD.org>.