Aziz Bench

Confronto sensori: quale scegliere

Scegli cosa vuoi misurare, spunta ciò che serve al tuo progetto e scopri quali sensori vanno bene, dal più adatto, con tutti i dati affiancati. 39 sensori per ESP32, Arduino e Raspberry Pi Pico, con ogni valore preso dai datasheet dei produttori.

Scelta migliore
SHT4x
±0,2 °C · ±1,8 % UR · I²C · da 1,08 a 3,6 V
Sensori adatti
10 su 12
Requisiti
1
Precisione (temperatura)
±0,2 °C
Requisiti soddisfatti da ogni sensore
SHT4x1/1SHT311/1AHT201/1BME2801/1HDC10801/1HTU21D1/1TMP1170/1DS18B200/1DHT221/1BME6801/1DHT111/1Si70211/1

Consigliati per il tuo progetto

I sensori che hanno tutto ciò che hai spuntato, dal più adatto.

SensirionScelta migliore

SHT4x

±0,2 °C · ±1,8 % UR · I²C · da 1,08 a 3,6 V

La generazione attuale di Sensirion: ±0,2 °C e ±1,8 % UR (SHT45: ±0,1 °C, ±1,0 % UR), 80 nA a riposo e un riscaldatore integrato.

Perché va bene: umidità ±1,8 % UR

Attenzione: Funziona solo da 1,08 a 3,6 V, quindi niente 5 V. L’indirizzo (0x44, 0x45 o 0x46) dipende dalla sigla del componente, non da un pin.

Sensirion

SHT31

±0,2 °C · ±2 % UR · I²C · da 2,15 a 5,5 V

Il sensore collaudato di Sensirion: ±0,2 °C, ±2 % UR, due indirizzi I²C e alimentazione da 2,15 a 5,5 V.

Perché va bene: umidità ±2 % UR

Attenzione: Per lo stesso lavoro l’SHT4x è più recente, più piccolo e più preciso sull’umidità.

Aosong

AHT20

±0,3 °C · ±2 % UR · I²C · da 2 a 5,5 V

Un sensore I²C piccolo ed economico con ±0,3 °C e ±2 % UR: il passo naturale dopo il DHT22.

Perché va bene: umidità ±2 % UR

Attenzione: Indirizzo fisso 0x38, quindi uno per bus. In ESPHome usa il componente aht10 con la variante AHT20.

Cosa vuoi misurare?
Requisiti
Confronta due sensori
CaratteristicaDHT22BME280
Misuratemperatura · umiditàtemperatura · umidità · pressione
Precisione temperatura±0,5 °C±1 °C
Precisione umidità±2 % UR±3 % UR
Gamma di temperaturada −40 a 80 °Cda −40 a 85 °C
InterfacciaFilo singolo (protocollo proprio)I²C, SPI
Indirizzo I²CNon I²C0x76, 0x77 (scelto con un pin)
Alimentazioneda 3,3 a 6 Vda 1,71 a 3,6 V
Corrente tra le letture50 µA0,1 µA
ESPHomedhtbme280_i2c / bme280_spi

Sensori adatti (10)

  • SHT4xumidità ±1,8 % UR
  • SHT31umidità ±2 % UR
  • AHT20umidità ±2 % UR
  • BME280umidità ±3 % UR
  • HDC1080umidità ±2 % UR
  • HTU21Dumidità ±2 % UR
  • DHT22umidità ±2 % UR
  • BME680umidità ±3 % UR
  • DHT11umidità ±5 % UR
  • Si7021umidità ±2 % UR

Manca un solo requisito

  • TMP117manca: umidità
  • DS18B20manca: umidità

Da sapere

Monta i sensori di umidità in aria libera, lontano dal microcontrollore e dal regolatore: un sensore di 2 °C più caldo della stanza legge un’umidità più bassa di diversi punti percentuali.

Tutti i sensori di questa categoria a confronto

CaratteristicaSHT4xSHT31AHT20BME280HDC1080Si7021HTU21DTMP117DS18B20DHT22BME680DHT11
Misuratemperatura · umiditàtemperatura · umiditàtemperatura · umiditàtemperatura · umidità · pressionetemperatura · umiditàtemperatura · umiditàtemperatura · umiditàtemperaturatemperaturatemperatura · umiditàtemperatura · umidità · pressione · gas (VOC)temperatura · umidità
Precisione temperatura±0,2 °C±0,2 °C±0,3 °C±1 °C±0,2 °C±0,3 °C±0,3 °C±0,1 °C±0,5 °C±0,5 °C±1 °C±2 °C
Precisione umidità±1,8 % UR±2 % UR±2 % UR±3 % UR±2 % UR±2 % UR±2 % URnon misuratanon misurata±2 % UR±3 % UR±5 % UR
Gamma di temperaturada −40 a 125 °Cda −40 a 125 °Cda −40 a 85 °Cda −40 a 85 °C–da −40 a 125 °Cda −40 a 125 °Cda −55 a 150 °Cda −55 a 125 °Cda −40 a 80 °Cda −40 a 85 °Cda 0 a 50 °C
InterfacciaI²CI²CI²CI²C, SPII²CI²CI²CI²C1-WireFilo singolo (protocollo proprio)I²C, SPIFilo singolo (protocollo proprio)
Indirizzo I²C0x44, 0x45, 0x46 (dipende dalla sigla)0x44, 0x45 (scelto con un pin)0x380x76, 0x77 (scelto con un pin)0x400x400x400x48, 0x49, 0x4A, 0x4B (scelto con un pin)Non I²CNon I²C0x76, 0x77 (scelto con un pin)Non I²C
Alimentazioneda 1,08 a 3,6 Vda 2,15 a 5,5 Vda 2 a 5,5 Vda 1,71 a 3,6 Vda 2,7 a 5,5 Vda 1,9 a 3,6 Vda 1,5 a 3,6 Vda 1,7 a 5,5 Vda 3 a 5,5 Vda 3,3 a 6 Vda 1,71 a 3,6 Vda 3 a 5,5 V
Corrente tra le letture0,08 µA0,2 µA0,25 µA0,1 µA0,1 µA0,06 µA–0,15 µA0,75 µA50 µA0,15 µA100 µA
ESPHomesht4xsht3xdaht10bme280_i2c / bme280_spihdc1080htu21dhtu21dtmp117dallas_tempdhtbme680dht
StatoDisponibileDisponibileDisponibileDisponibileDisponibileFuori produzioneDisponibileDisponibileDisponibileDisponibileDisponibileDisponibile

Valori tipici dai datasheet e dalle pagine prodotto dei produttori. “–”: dato assente nelle fonti che abbiamo consultato. Alimentazione: quella del chip o del modulo; le schede breakout spesso aggiungono un regolatore e un traslatore di livello.

Confronti a coppie

Come scegliere un sensore

Parti da ciò che ti serve sapere, non dal sensore che hai nel kit. Per un termometro da stanza bastano ±0,5 °C; contro la muffa o in una serra conviene un sensore di umidità da ±2 % UR; una stazione meteo che confronta la pressione con le previsioni ha bisogno di una buona precisione assoluta, mentre per un altimetro conta quella relativa.

Poi guarda come si collega. I sensori I²C condividono due fili con altri dispositivi, purché gli indirizzi siano diversi; DHT11 e DHT22 usano un protocollo a filo singolo tutto loro, il DS18B20 usa l’1-Wire e la maggior parte dei sensori di CO₂ e di polveri usa una UART. Con ESP32 e Raspberry Pi Pico preferisci sensori che funzionano a 3,3 V o con linee dati a 3,3 V.

Temperatura e umidità: la posizione conta più del chip

L’umidità relativa dipende dalla temperatura: un sensore di 2 °C più caldo della stanza legge un’umidità più bassa di diversi punti percentuali, qualunque cosa dica il suo datasheet. Mettilo lontano dal microcontrollore, dal regolatore e dall’antenna Wi-Fi, meglio se su un cavetto o in un contenitore aerato, e lontano dal sole diretto.

DHT11 e DHT22 sono economici e semplici, ma lenti e meno precisi. AHT20, SHT31, SHT4x, HTU21D, Si7021 e HDC1080 sono sensori I²C con ±0,2–0,3 °C tipici; tra questi l’SHT4x è il più preciso sull’umidità. Il BME280 aggiunge la pressione in cambio di un po’ di precisione, mentre DS18B20 e TMP117 misurano solo la temperatura.

CO₂ reale o eCO₂

I sensori NDIR e fotoacustici (MH-Z19C, SCD30, SCD40, SCD41) misurano davvero la CO₂, che ti dice quando una stanza va arieggiata. I sensori a ossidi metallici (SGP30, SGP40, SGP41, ENS160, CCS811, BME680) reagiscono ai composti organici volatili: alcuni ne ricavano una stima di “eCO₂”, che però non è una misura della CO₂. Sono utili per accorgersi di cucina, detersivi o vernici, e sono più piccoli ed economici.

Ultrasuoni, infrarossi o laser per la distanza

I moduli a ultrasuoni come l’HC-SR04 hanno un fascio largo e funzionano su vetro e superfici scure, ma i materiali morbidi assorbono l’eco. I sensori laser a tempo di volo (VL53L0X, VL53L1X, VL53L4CD) e il LiDAR TF-Luna hanno un fascio stretto e leggono bersagli piccoli, ma la luce del sole e le superfici scure ne riducono la portata. Per i serbatoi d’acqua la scelta abituale è il JSN-SR04T impermeabile.

Ogni sensore I²C rimanda alla sua scheda nell’elenco degli indirizzi I²C, con collegamenti, pull-up e conflitti. Per i progetti a batteria, somma la corrente del sensore a quella del resto della scheda nel calcolo dell’autonomia della batteria.

Fonti: datasheet e pagine prodotto dei produttori (Sensirion, Bosch Sensortec, Texas Instruments, Analog Devices, Silicon Labs, TE Connectivity, Aosong, Infineon, STMicroelectronics, Benewake, Sharp, ROHM, ams OSRAM, Vishay, Winsen, ScioSense, Plantower, Nova Fitness) e documentazione di ESPHome, verificati a novembre 2026.

Domande frequenti

Qual è il miglior sensore di temperatura e umidità per ESP32?

Per la precisione, un Sensirion SHT4x o SHT31 su I²C: ±0,2 °C e ±1,8 o ±2 % UR tipici. L’AHT20 costa meno e ci va vicino (±0,3 °C, ±2 % UR). Scegli il BME280 se ti serve anche la pressione e tieni il DHT22 per i progetti semplici. Qualunque sensore scegli, montalo lontano dalle parti calde della scheda.

Meglio il DHT22 o il BME280?

Il DHT22 è dichiarato a ±0,5 °C e ±2 % UR tipici, il BME280 a ±1 °C (±0,5 °C a 25 °C) e ±3 % UR. Il BME280 aggiunge la pressione, funziona su I²C o SPI e in sleep assorbe 0,1 µA contro circa 50 µA, quindi è adatto ai progetti a batteria; il DHT22 è lento e usa un protocollo a filo singolo tutto suo. Per un’umidità precisa, un SHT4x batte entrambi.

Perché il mio sensore segna un’umidità bassa in casa?

Di solito perché è più caldo della stanza. L’umidità relativa scende quando la temperatura sale, quindi un sensore scaldato dal microcontrollore, dal regolatore o dal sole legge un’aria troppo secca. Allontanalo dalla scheda, su un cavetto o in un contenitore aerato, e confrontalo con un altro sensore dopo qualche minuto.

SGP30, ENS160 e CCS811 misurano la CO₂?

No. Sono sensori di gas a ossidi metallici che reagiscono ai composti organici volatili e ne ricavano una stima di “eCO₂”. Per conoscere il livello reale di CO₂, per esempio per decidere quando arieggiare una stanza, usa un sensore NDIR o fotoacustico come SCD40, SCD41, SCD30 o MH-Z19C.

Meglio l’HC-SR04 o il VL53L0X?

L’HC-SR04 arriva a 4 m con un fascio largo e vede il vetro, ma richiede 5 V e un partitore sul pin di eco con le schede a 3,3 V. Il VL53L0X è un piccolo sensore laser I²C a 3,3 V con un fascio stretto: circa 1,2 m su bianco al chiuso, fino a 2 m al buio, meno sotto il sole. Per i serbatoi d’acqua usa il JSN-SR04T impermeabile.

Posso collegare due sensori con lo stesso indirizzo I²C?

Solo se il sensore permette di cambiarlo: molti hanno un pin di indirizzo (BME280, SHT31, TMP117), i VL53 si possono rinumerare via software e sull’SHT4x l’indirizzo dipende dalla sigla del componente. Altrimenti usa un multiplexer come il TCA9548A, oppure un secondo bus I²C sull’ESP32.

Quali di questi sensori funzionano con ESPHome?

Quasi tutti hanno un componente ESPHome ufficiale, indicato nella tabella. Non ce l’hanno VL53L1X, VL53L4CD e Sharp GP2Y0A21; il sensore Sharp si può comunque leggere con il componente adc. Il generatore ESPHome di questo sito scrive la configurazione per DHT11, DHT22, BME280, SHT3x e DS18B20.