First of all, I think some of your code is wrong: h3 = dht3.readHumidity(); // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor) t3 = dht3.readTemperature(); // Read temperature as Celsius (the default) // Read temperature as Fahrenheit (isFahrenheit = true) f3 = dht3.readTemperature(true); if (isnan(h) || isnan(t) || isnan(f)) { Serial.println(F("Failed to read from DHT sensor 3!")); return; } It needs to be changed to if(isnan(h3) || isnan(t3) || isnan(f3)) to detect if the third sensor returns NAN. Secondly, have you checked your wiring and the code is exactly the same as the first sensor and the second? Third, is this situation due to insufficient power supply? I think you can check the circuit information of the DHT22.