OC
OceanRemote
Low-code IoT platform
← Back to Course

DHT22 vs DHT11 - Temperature and Humidity

DHT22 vs DHT11 - Temperature and Humidity

🌑️ DHT22 vs DHT11 - Temperature and Humidity Sensors

🌑️ What You'll Learn:

  • πŸ“Š Compare DHT22 and DHT11 specifications
  • πŸ’° Decide which sensor fits your budget and accuracy needs
  • πŸ”Œ Wire either sensor correctly to ESP32/ESP8266/Pico
  • 🌾 Get crop recommendations based on temperature/humidity

πŸ“Š DHT22 vs DHT11 Comparison

FeatureDHT22DHT11
πŸ’° Price$5-6$3-4
🌑️ Temperature Range-40 to 80°C0-50°C
🎯 Temperature Accuracy±0.5°C±2°C
πŸ’§ Humidity Range0-100%20-90%
🎯 Humidity Accuracy±2%±5%
⏱️ Sampling Rate2 seconds (0.5Hz)1 second (1Hz)
πŸ“ SizeLargerSmaller
πŸ”Œ Pins4 pins4 pins
🌟 Recommendation:

Spend the extra $2 on DHT22 - much better accuracy, wider temperature range, and more reliable for farm monitoring. DHT11 is fine for basic classroom projects.

πŸ”Œ Wiring (Both sensors use same pins)

═══════════════════════════════════════════════════════════════════════════════
                    DHT22 / DHT11 WIRING
═══════════════════════════════════════════════════════════════════════════════

    DHT22/DHT11                        ESP32 / ESP8266 / Pico W
    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”               β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
    β”‚ Pin 1 (VCC)     β”‚ ───────────► β”‚ 3.3V (or 5V for DHT11)   β”‚
    β”‚ Pin 2 (DATA)    β”‚ ───────────► β”‚ GPIO16                   β”‚
    β”‚ Pin 3 (NC)      β”‚ ───────────► β”‚ Not connected            β”‚
    β”‚ Pin 4 (GND)     β”‚ ───────────► β”‚ GND                      β”‚
    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜               β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

    ⚠️ CRITICAL: Add a 10kΩ pull-up resistor between DATA and VCC!
    
    β”Œβ”€β”€β”€β”€β”€β”
    β”‚     β”‚
    β”‚ 10kΞ©β”‚
    β”‚     β”‚
    β””β”€β”€β”¬β”€β”€β”˜
       β”‚
    3.3V┼────────────────┬─────────► DHT22 VCC
       β”‚                 β”‚
       └─────────────────┼─────────► DHT22 DATA (with pull-up)
                         β”‚
      GND────────────────┴─────────► DHT22 GND

═══════════════════════════════════════════════════════════════════════════════

πŸ“– Complete Code (Works for Both Sensors)

#include "DHT.h"

// Change DHTTYPE to DHT11 if using that sensor
#define DHTPIN 16
#define DHTTYPE DHT22

DHT dht(DHTPIN, DHTTYPE);

void setup() {
    Serial.begin(115200);
    dht.begin();
    Serial.println("🌑️ Weather Monitor Started");
    delay(1000);
}

void loop() {
    delay(2000);  // DHT22 needs 2 seconds between readings!
    
    float temp = dht.readTemperature();
    float hum = dht.readHumidity();
    
    if (isnan(temp) || isnan(hum)) {
        Serial.println("❌ Sensor read failed! Check wiring.");
        return;
    }
    
    float tempF = temp * 9.0 / 5.0 + 32.0;
    
    Serial.println("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
    Serial.printf("🌑️ Temperature: %.1f°C | %.1f°F\n", temp, tempF);
    Serial.printf("πŸ’§ Humidity: %.1f%%\n", hum);
    
    // ========== CROP RECOMMENDATIONS ==========
    Serial.println("\nπŸ“‹ CROP ADVICE:");
    
    if (temp > 35) {
        Serial.println("   πŸ”₯ TOO HOT! Increase irrigation, provide shade");
    } else if (temp > 30) {
        Serial.println("   β˜€οΈ WARM - Monitor moisture levels");
    } else if (temp < 10 && temp > 0) {
        Serial.println("   ❄️ COOL - Delay planting warm-season crops");
    } else if (temp < 0) {
        Serial.println("   🚨 FROST WARNING! Protect crops immediately!");
    } else {
        Serial.println("   βœ… OPTIMAL - Good growing conditions");
    }
    
    if (hum > 85) {
        Serial.println("   πŸ’§ HIGH HUMIDITY - Risk of mold/fungal disease");
        Serial.println("   β†’ Increase ventilation, reduce watering");
    } else if (hum < 30) {
        Serial.println("   πŸ”₯ LOW HUMIDITY - Plants stressed");
        Serial.println("   β†’ Misting or shade cloth recommended");
    } else {
        Serial.println("   βœ… OPTIMAL - Good humidity for most crops");
    }
    
    Serial.println("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n");
}
    
πŸ’‘ Which Sensor Should You Choose?
  • 🌾 Farm use / Greenhouses: DHT22 - accuracy matters!
  • πŸ’° Budget classroom project: DHT11 - cheaper, works fine
  • ❄️ Cold climates (freezing): DHT22 only (DHT11 stops at 0Β°C)
  • 🏜️ Hot climates (above 50Β°C): DHT22 only
  • πŸ“Š Research/Data logging: DHT22 for reliable data
⚠️ Common Issues:
  • "Sensor read failed": Add delay(2000) between readings (DHT22)
  • Constant 0% humidity: Missing pull-up resistor (10kΞ©)
  • Temperature stuck at -40Β°C: Bad connection or missing pull-up
  • DHT11 reads 0Β°C: Temperature below 0Β°C - use DHT22
πŸŽ‰ Key Takeaways:
  • βœ… DHT22: Better accuracy (Β±0.5Β°C), wider range (-40 to 80Β°C)
  • βœ… DHT11: Cheaper but less accurate (Β±2Β°C), limited range (0-50Β°C)
  • βœ… Both need 10kΞ© pull-up resistor between DATA and VCC
  • βœ… DHT22 needs 2 seconds between readings (important!)
  • βœ… For farm use, spend the extra $2 on DHT22
πŸ’‘ Key Takeaways:
  • Apply these concepts directly to your farm or project.
  • Take notes on important details for the quiz.
  • Use the button below to track your progress.