si70xxtemp
—
Driver for Silicon Labs SI7013/SI7020/SI7021 and HTU21D sensor
chip via I2C bus
si70xxtemp* at iic? addr 0x40
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.
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.
The si70xxtemp
driver first appeared in
NetBSD 8.0.