← All parts
SHT31 Humidity/Temp
SHT31
Sensirionsensor environment
The SHT3x-DIS is a fully calibrated digital sensor that measures humidity and temperature. It features an I2C interface, a wide supply voltage range, and enhanced accuracy, making it suitable for various applications.
In stock
Specifications
11- Operating Voltage
- 2.15 V
- Operating Voltage
- 5.5 V
- Interface
- I2C
- Clock Speed
- 1 MHz
- Humidity Accuracy
- 1.5 %RH
- Temperature Accuracy
- 0.1 °C
- Package
- 8-Pin DFN
- Temperature Range
- -40 °C
- Temperature Range
- 125 °C
- Supply Current Idle
- 0.2 µA
- Supply Current Measuring
- 600 µA
Pinout
8| Pin | Name | Functions | Notes |
|---|---|---|---|
| 1 | SDA | I2C | Serial data; input / output |
| 2 | ADDR | I2C | Address pin; connect to logic high or low |
| 3 | ALERT | GPIO | Indicates alarm condition; output; leave floating if unused |
| 4 | SCL | I2C | Serial clock; input / output |
| 5 | VDD | POWER | Supply voltage; input |
| 6 | nRESET | GPIO | Reset pin active low; leave floating if unused |
| 7 | R | — | No electrical function; to be connected to VSS |
| 8 | VSS | GND | Ground |
Interactive pinout
Highlight:
SHT31
Click a pin to copy its name · tap a tag above to spotlight a bus.
Logic level & voltage
Operates from 2.15-5.5 V (per the datasheet specs) over I2C, so it interfaces with both 3.3 V and 5 V microcontrollers.
Typical uses
- Accurate humidity and temperature sensing
- Environmental monitoring and HVAC
- Greenhouse / incubator control
Wiring notes & gotchas
- I2C address is 0x44 or 0x45 via the ADDR pin.
- Add SDA/SCL pull-ups if not on the module.
- Keep the sensor away from self-heating components for accurate readings.
Commonly used with
3Starter code
Community starter examples — minimal, unofficial, and provided to get you wiring fast. Verify against the manufacturer datasheet before relying on them.
Arduino (C++)
Arduino library: Adafruit SHT31 Library
arduino
// SHT31 temperature + humidity (I2C) — community starter example
#include <Adafruit_SHT31.h>
Adafruit_SHT31 sht;
void setup() {
Serial.begin(115200);
if (!sht.begin(0x44)) { Serial.println("SHT31 not found"); while (1) delay(10); }
}
void loop() {
Serial.print("T="); Serial.print(sht.readTemperature()); Serial.print(" C RH=");
Serial.println(sht.readHumidity());
delay(1000);
}MicroPython
MicroPython library: sht31 (kfricke/micropython-sht31)
python
# SHT31 (ESP32) — community starter example
# lib: kfricke/micropython-sht31 (sht31.py on the board)
from machine import Pin, I2C
import sht31, time
i2c = I2C(0, scl=Pin(22), sda=Pin(21))
sensor = sht31.SHT31(i2c, addr=0x44)
while True:
t, h = sensor.get_temp_humi()
print(t, "C", h, "%")
time.sleep(1)Wiring
| Pin | Arduino Uno R3 | ESP32 DevKitC (WROOM-32) | Notes |
|---|---|---|---|
| VCC | +5V | 3V3 | 2.4-5.5 V |
| GND | GND | GND | |
| SCL | A5/SCL | GPIO22 | I2C clock |
| SDA | A4/SDA | GPIO21 | I2C data |