^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) Kernel driver sht15
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) ===================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) Authors:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * Wouter Horre
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) * Jonathan Cameron
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) * Vivien Didelot <vivien.didelot@savoirfairelinux.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) * Jerome Oufella <jerome.oufella@savoirfairelinux.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) Supported chips:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) * Sensirion SHT10
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) Prefix: 'sht10'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) * Sensirion SHT11
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) Prefix: 'sht11'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) * Sensirion SHT15
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) Prefix: 'sht15'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) * Sensirion SHT71
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) Prefix: 'sht71'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) * Sensirion SHT75
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) Prefix: 'sht75'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) Datasheet: Publicly available at the Sensirion website
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) http://www.sensirion.ch/en/pdf/product_information/Datasheet-humidity-sensor-SHT1x.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) The SHT10, SHT11, SHT15, SHT71, and SHT75 are humidity and temperature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) sensors.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) The devices communicate using two GPIO lines.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) Supported resolutions for the measurements are 14 bits for temperature and 12
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) bits for humidity, or 12 bits for temperature and 8 bits for humidity.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) The humidity calibration coefficients are programmed into an OTP memory on the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) chip. These coefficients are used to internally calibrate the signals from the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) sensors. Disabling the reload of those coefficients allows saving 10ms for each
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) measurement and decrease power consumption, while losing on precision.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) Some options may be set via sysfs attributes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) Notes:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) * The regulator supply name is set to "vcc".
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) * If a CRC validation fails, a soft reset command is sent, which resets
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) status register to its hardware default value, but the driver will try to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) restore the previous device configuration.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) Platform data
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) -------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) * checksum:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) set it to true to enable CRC validation of the readings (default to false).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) * no_otp_reload:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) flag to indicate not to reload from OTP (default to false).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) * low_resolution:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) flag to indicate the temp/humidity resolution to use (default to false).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) Sysfs interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) ---------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) ================== ==========================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) temp1_input temperature input
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) humidity1_input humidity input
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) heater_enable write 1 in this attribute to enable the on-chip heater,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) 0 to disable it. Be careful not to enable the heater
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) for too long.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) temp1_fault if 1, this means that the voltage is low (below 2.47V) and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) measurement may be invalid.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) humidity1_fault same as temp1_fault.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) ================== ==========================================================