Updated: 2025/Nov/16
Please read Privacy Policy. It's for your privacy.
SI70XXTEMP(4) Device Drivers Manual SI70XXTEMP(4)
NAME
si70xxtemp - Driver for Silicon Labs SI7013/SI7020/SI7021, HTU21D and
SHT21 sensor chip via I2C bus
SYNOPSIS
si70xxtemp* at iic? addr 0x40
DESCRIPTION
The si70xxtemp driver provides measurements from the SI7013/SI7020/SI7021
humidity/temperature sensors via the envsys(4) framework. The si70xxtemp
addr locator selects the address at the iic(4) bus. The resolution,
heater control and crc validity can be changed through sysctl(8) nodes.
SYSCTL VARIABLES
The following sysctl(8) variables are provided:
hw.si70xxtemp0.resolutions
Lists the resolutions supported by the driver and chip.
hw.si70xxtemp0.resolution
Set the resolution, or number of bits, used for %RH and
temperature. Use one of the strings listed in
hw.si70xxtemp.resolutions.
hw.si70xxtemp0.ignorecrc
If set, the crc calculation for %RH and temperature
will be ignored.
hw.si70xxtemp0.vddok
If 1, the chip is getting enough power.
hw.si70xxtemp0.heateron
Turn the heater on and off.
hw.si70xxtemp0.heaterstrength
From 1 to 6, the amount of energy put into the heater.
The higher the number, the more power used.
Some HTU21D chips do not support a heater register.
These chips are detected and the heater features of the
driver will be disabled.
hw.si70xxtemp0.debug
If the driver is compiled with SI70XX_DEBUG, this node
will appear and can be used to set the debugging level.
hw.si70xxtemp0.readattempts
To read %RH or temperature the driver uses a No Hold
Master command. This command needs to be sent to the
device, a wait must then occur and then another read
command is sent to read back the values. Depending on
the resolution, and other factors, the wait time
varies. The driver will attempt to read back the
values readattempts number of times. The default is 40
which should be enough for most purposes. There is an
initial wait of 10,500 microseconds followed by a
additional 1,000 microseconds per read attempt.
hw.si70xxtemp0.clockstretch
The chip supports a set of commands that lets it use
I2C clock stretching to perform the temperature or
humidity measurement. If this is set to 1 then use the
clock stretching commands with the device. Note that
the I2C controller must support clock stretching in
order for this to work reliability. When this option
is enabled, the readattempts sysctl noted above will
not be used.
SEE ALSO
envsys(4), iic(4), envstat(8), sysctl(8)
HISTORY
The si70xxtemp driver first appeared in NetBSD 8.0.
AUTHORS
The si70xxtemp driver was written by Brad Spencer
<brad@anduin.eldar.org>.
NetBSD 11.99 December 28, 2017 NetBSD 11.99