SI70XXTEMP(4) Device Drivers Manual SI70XXTEMP(4)

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.

envsys(4), iic(4), envstat(8), sysctl(8)

The si70xxtemp driver first appeared in NetBSD 8.0.

The si70xxtemp driver was written by Brad Spencer <brad@anduin.eldar.org>.
December 28, 2017 NetBSD 9.4