Multiple i2c sensors comparision using arduino with some consumer devices included in test results. Using SHT85 and GreenDay as "temporary reference devices".
Multiplexer Lines
Line | 0x40 | 0x44 | 0x5c | 0x77 | 0x41 | 0x45 | 0x76 | 0x70 |
---|---|---|---|---|---|---|---|---|
A | SHT21 | SHT30 | DHT12 | BME680 | ||||
B | SHT21 | SHT30 | DHT12 | BME680 | ||||
C | HTU21D | SHT31 | DHT12 | BME280 | ||||
D | HTU21D | SHT31 | - | BME280 | ||||
E | HTU21D | SHT35 | - | BME280 | ||||
F | SHT20 | SHT35 | - | BME680 | ||||
G | SHT21 | SHT31 | - | BME680 | ||||
H | SHT25 | SHT85 | - | - |
i2c Scan
Port:0 i2c addr 64 i2c addr 68 i2c addr 119 Port:1 i2c addr 64 i2c addr 68 i2c addr 119 Port:2 i2c addr 64 i2c addr 68 i2c addr 118 Port:3 i2c addr 64 i2c addr 68 i2c addr 118 Port:4 i2c addr 64 i2c addr 68 i2c addr 118 Port:5 i2c addr 64 i2c addr 68 i2c addr 92 i2c addr 118 Port:6 i2c addr 64 i2c addr 68 i2c addr 92 i2c addr 118 Port:7 i2c addr 64 i2c addr 68 i2c addr 92
Hardware in use
- Mega2560 keyestudio
- LCD 3.5 inch Arduino Mega2560
- DFRobot i2c multiplexer (or compatible ShangSi MoudleCX TCA9548A i2c multiplexer)
- Sensors (DHT11, SHT21, SHT20, SHT25, HTU21D, SHT30, SHT31, SHT35, SHT85, BME280, BME680)
Draft sketch
github code: https://github.com/liutyi/arduino-humidity-sensors-test/blob/master/mega-sd-tft-480x320-i2c-sensors.ino
Libraries
Screen example
~24% RH
Device/sensor | t | RH |
---|---|---|
Green Day | 22.1 | 23.1% |
Xiaomi MHO-C201 | 22.5 | 24% |
Senserion S.G. | 22.59 | 29.88% |
Beurer HM16 | 21.6 | LOW |
TFA Spring | 22.2 | 23% |
TFA t/RH | 22 | 25% |
SHT21 (1) | 22.20 | 33.76% |
SHT21 (1) | 22.33 | 35.37% |
HTU21D (1) | 22.32 | 22.21% |
HTU21D (1) | 22.72 | 21.66% |
HTU21D (2) | 22.55 | 21.47% |
SHT20 | 22.60 | 24.80% |
SHT21 (2) | 22.79 | 23.80% |
SHT25 | 22.71 | 24.91% |
SHT30 | 22.09 | 26.83% |
SHT30 | 22.12 | 27.23% |
SHT31 | 22.08 | 28.11% |
SHT31 | 22.19 | 28.05% |
SHT35 | 22.29 | 25.49% |
SHT35 | 22.41 | 25.14% |
SHT31 (2) | 22.54 | 28.74% |
SHT85 | 22.48 | 24.10% |
BME680 | 22.62 | 25.45% |
BME680 | 23.03 | 24.73% |
BME280 | 23.04 | 21.99% |
BME280 | 22.88 | 22.31% |
BME280 | 23.22 | 21.44% |
BME680 (2) | 24.30 | 20.18% |
BME680 (2) | 24.41 | 21.03% |
DHT12 | 22.00 | 14.10% |
DHT12 | 22.00 | 31.80% |
~29% RH
Device/sensor | t | RH |
---|---|---|
Green Day | 22.1 | 29.4% |
Xiaomi MHO-C201 | 22.1 | 31% |
Senserion S.G. | 22.14 | 35.58% |
Beurer HM16 | 21.6 | LOW |
TFA Spring | 22.2 | 28% |
TFA t/RH | 22 | 28% |
SHT21 (1) | 22.13 | 37.56% |
SHT21 (1) | 22.21 | 38.98% |
HTU21D (1) | 22.10 | 28.39% |
HTU21D (1) | 22.39 | 28.08% |
HTU21D (2) | 22.22 | 28.14% |
SHT20 | 22.28 | 31.06% |
SHT21 (2) | 22.17 | 30.45% |
SHT25 | 22.33 | 31.17% |
SHT30 | 22.02 | 32.54% |
SHT30 | 22.09 | 33.10% |
SHT31 | 21.99 | 34.06% |
SHT31 | 21.99 | 34.11% |
SHT35 | 22.04 | 31.87% |
SHT35 | 22.14 | 31.53% |
SHT31 (2) | 22.09 | 35.21% |
SHT85 | 22.00 | 30.05% |
BME680 | 22.55 | 31.35% |
BME680 | 22.88 | 30.60% |
BME280 | 22.90 | 27.56% |
BME280 | 22.67 | 27.99% |
BME280 | 22.94 | 27.10% |
BME680 (2) | 23.74 | 25.61% |
BME680 (2) | 24.05 | 25.82% |
DHT12 | 22.10 | 22.40% |
DHT12 | 21.90 | 34.50% |
~42% RH
Device/sensor | t | RH |
---|---|---|
Green Day | 22.3 | 42.4% |
Xiaomi MHO-C201 | 22.5 | 41% |
Senserion S.G. | 22.66 | 46.24% |
Beurer HM16 | 21.8 | 30% |
TFA Spring | 22.3 | 38% |
TFA t/RH | 22 | 34% |
SHT21 (1) | 22.39 | 46.57% |
SHT21 (1) | 22.46 | 47.14% |
HTU21D (1) | 22.38 | 42.10% |
HTU21D (1) | 22.75 | 41.62% |
HTU21D (2) | 22.49 | 41.64% |
SHT20 | 22.58 | 43.45% |
SHT21 (2) | 22.64 | 42.40% |
SHT25 | 22.72 | 42.95% |
SHT30 | 22.51 | 44.97% |
SHT30 | 22.53 | 45.42% |
SHT31 | 22.40 | 46.15% |
SHT31 | 22.47 | 46.14% |
SHT35 | 22.55 | 44.30% |
SHT35 | 22.61 | 44.02% |
SHT31 (2) | 22.63 | 47.17% |
SHT85 | 22.74 | 41.88% |
BME680 | 22.64 | 44.04% |
BME680 | 22.93 | 42.72% |
BME280 | 23.08 | 40.17% |
BME280 | 22.85 | 40.79% |
BME280 | 23.11 | 39.61% |
BME680 (2) | 24.37 | 34.78% |
BME680 (2) | 23.80 | 36.54% |
DHT12 | 22.30 | 36.50% |
DHT12 | 21.90 | 43.00% |
Draft Results:
Looks like BME680 (2) module got some minor internal heating that makes t measurement higher and RH measurements lower. Will probably try to place it with sensor at the bottom next time (with updated test setup). DHT12 is (as expected) not good at low humidity. Have no explanation of why GY-213V-SHT21 is that inacurate. Surprized with relatively cheap HTU21 (that is compatible to SHT2x and may be replaced without firmware change) perform so good.