LM75(4)
β¨ LM75(4) β¨
bestie,,, it's the lm75 i2c digital temperature sensor driver manual page and it's literally about to eat π
π SYNOPSIS π
device iic
device iicbus
device lm75
π DESCRIPTION π
okay so the lm75 driver lowkey gives you access to all the sensor data and configuration over the iicbus(4). it's giving very much "easy and simple way to check the functionality of an i2c bus" because you get read AND write access to the lm75 configuration register π«Ά
the way you access all the lm75 data is via the sysctl(8) interface, and here's what that looks like, no cap:
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
so iconic, right? now let's break down every single one:
dev.lm75.%d.temperatureβ this is the read-only value of the current temperature read by the sensor. it's literally just the temp, periodt π‘οΈ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. so it's like the "chill out" threshold bestie π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 themodeconfiguration π₯dev.lm75.%d.faultsβ is the number of faults that must occur consecutively to activate the interrupt (output) pin. it can be set to1,2,4, and6. so like, how many strikes before it actually does something, iykyk π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. that's a whole technical vibe check right there π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. so it's not like, dead-dead, it's just sleeping π€
please check the lm75 datasheet for more details bestie, fr fr π
when used together with snmp_lm75(3) it allows the monitoring of lm75 temperature data over SNMP. that's the crossover episode π
π the resolution models π
the lm75 driver supports both the low and the high resolution models. it's giving versatility β¨
- 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. so like, it's trying its best but some clones are just messy π
π§ device.hints vibes π§
on a device.hints(5) based system, such as MIPS, these values are configurable for lm75:
hint.lm75.%d.atβ is theiicbus(4)you are attaching to πhint.lm75.%d.addrβ is the lm75 i2c address on theiicbus(4)π
π¦ FDT(4) based systems, like ARM π¦
on a FDT(4) based system, such as ARM, the DTS part for a lm75 device usually looks like:
i2c {
/* Properties describing the controller appear here. */
...
lm750@49 {
compatible = "national,lm75";
reg = <0x49>;
};
};
where:
compatibleβ should always be set to"national,lm75"πregβ indicates which 7-bit i2c address the lm75 is wired at. lm75 temperature sensors can be wired to 8 different addresses, allowing up to 8 sensors on the sameiicbus(4). so you can stack 'em, slay π β¨
π SEE ALSO π
snmp_lm75(3), fdt(4), iic(4), iicbus(4), sysctl(8)
π HISTORY π
the lm75 driver first appeared in FreeBSD 11.0. a whole era π«Ά
π AUTHORS π
the lm75 driver and this manual page were written by Luiz Otavio O Souza <loos@FreeBSD.org>. legend behavior, honestly π
and that's the whole page bestie! source and version are from Debian, dated December 26, 2017, and the manual is LM75(4) π you're welcome, go check your temps and stay cool (or don't, up to your tos setting) π‘οΈβ¨π
π¦ where this page comes from
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- nixpkgs unstable: source
- Copyright (c) 2014 Luiz Otavio O Souza <loos@freebsd.org>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms