NAME
si70xxtemp —
Driver for Silicon Labs
SI7013/SI7020/SI7021 and HTU21D 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 argument 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(3) 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.
-
-
- 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 25 which should be more than enough for most purposes.
There is an initial wait of 10,500 microseconds followed by a additional
1,000 microseconds per read attempt.
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>.