0001 Kernel driver sht3x
0002 ===================
0003
0004 Supported chips:
0005
0006 * Sensirion SHT3x-DIS
0007
0008 Prefix: 'sht3x'
0009
0010 Addresses scanned: none
0011
0012 Datasheet: https://www.sensirion.com/file/datasheet_sht3x_digital
0013
0014 Author:
0015
0016 - David Frey <david.frey@sensirion.com>
0017 - Pascal Sachs <pascal.sachs@sensirion.com>
0018
0019 Description
0020 -----------
0021
0022 This driver implements support for the Sensirion SHT3x-DIS chip, a humidity
0023 and temperature sensor. Temperature is measured in degrees celsius, relative
0024 humidity is expressed as a percentage. In the sysfs interface, all values are
0025 scaled by 1000, i.e. the value for 31.5 degrees celsius is 31500.
0026
0027 The device communicates with the I2C protocol. Sensors can have the I2C
0028 addresses 0x44 or 0x45, depending on the wiring. See
0029 Documentation/i2c/instantiating-devices.rst for methods to instantiate the device.
0030
0031 There are two options configurable by means of sht3x_platform_data:
0032
0033 1. blocking (pull the I2C clock line down while performing the measurement) or
0034 non-blocking mode. Blocking mode will guarantee the fastest result but
0035 the I2C bus will be busy during that time. By default, non-blocking mode
0036 is used. Make sure clock-stretching works properly on your device if you
0037 want to use blocking mode.
0038 2. high or low accuracy. High accuracy is used by default and using it is
0039 strongly recommended.
0040
0041 The sht3x sensor supports a single shot mode as well as 5 periodic measure
0042 modes, which can be controlled with the update_interval sysfs interface.
0043 The allowed update_interval in milliseconds are as follows:
0044
0045 ===== ======= ====================
0046 0 single shot mode
0047 2000 0.5 Hz periodic measurement
0048 1000 1 Hz periodic measurement
0049 500 2 Hz periodic measurement
0050 250 4 Hz periodic measurement
0051 100 10 Hz periodic measurement
0052 ===== ======= ====================
0053
0054 In the periodic measure mode, the sensor automatically triggers a measurement
0055 with the configured update interval on the chip. When a temperature or humidity
0056 reading exceeds the configured limits, the alert attribute is set to 1 and
0057 the alert pin on the sensor is set to high.
0058 When the temperature and humidity readings move back between the hysteresis
0059 values, the alert bit is set to 0 and the alert pin on the sensor is set to
0060 low.
0061
0062 sysfs-Interface
0063 ---------------
0064
0065 =================== ============================================================
0066 temp1_input: temperature input
0067 humidity1_input: humidity input
0068 temp1_max: temperature max value
0069 temp1_max_hyst: temperature hysteresis value for max limit
0070 humidity1_max: humidity max value
0071 humidity1_max_hyst: humidity hysteresis value for max limit
0072 temp1_min: temperature min value
0073 temp1_min_hyst: temperature hysteresis value for min limit
0074 humidity1_min: humidity min value
0075 humidity1_min_hyst: humidity hysteresis value for min limit
0076 temp1_alarm: alarm flag is set to 1 if the temperature is outside the
0077 configured limits. Alarm only works in periodic measure mode
0078 humidity1_alarm: alarm flag is set to 1 if the humidity is outside the
0079 configured limits. Alarm only works in periodic measure mode
0080 heater_enable: heater enable, heating element removes excess humidity from
0081 sensor:
0082
0083 - 0: turned off
0084 - 1: turned on
0085 update_interval: update interval, 0 for single shot, interval in msec
0086 for periodic measurement. If the interval is not supported
0087 by the sensor, the next faster interval is chosen
0088 =================== ============================================================