#include <DHTesp.h>

#define LED_BLUE    23
#define LED_RED     22
#define DHT_PIN     15
DHTesp dhtSensor;

float temp = 0.0;
float temp_bup = 101.0;                   // Nicht realisitischer Wert, damit beim Programmstart 1 Ausgabe erfolgt
float hum = 0.0;
float hum_bup = 101.0;                    // Nicht realisitischer Wert, damit beim Programmstart 1 Ausgabe erfolgt

void setup() {
  pinMode( LED_BLUE, OUTPUT);             // GPIO als Ausgang definieren
  digitalWrite( LED_BLUE, LOW);           // Test-LED Blue = off
  pinMode( LED_RED, OUTPUT);              // GPIO als Ausgang definieren
  digitalWrite( LED_RED, LOW);            // Test-LED Red = off
 
  Serial.begin(115200);
  Serial.println("=============================================================================");
  Serial.println("Messung der Umgebungstemperatur und der Luftfeuchtigkeit mit dem Sensor DHT22");
  Serial.println("=============================================================================");
  dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
}

void loop() {
  TempAndHumidity  data = dhtSensor.getTempAndHumidity();
  temp = data.temperature;
  hum = data.humidity;
  if ((temp != temp_bup) || (hum != hum_bup)) {
    temp_bup = temp;
    hum_bup = hum;
    if (temp > 50.0) {
      digitalWrite( LED_RED, HIGH);           // Test-LED Red = on
      digitalWrite( LED_BLUE, LOW);           // Test-LED Blue = off
    } else if (temp < 0.0) {
      digitalWrite( LED_BLUE, HIGH);          // Test-LED Blue = on
      digitalWrite( LED_RED, LOW);            // Test-LED Red = off
    } else {
      digitalWrite( LED_BLUE, LOW);           // Test-LED Blue = off
      digitalWrite( LED_RED, LOW);            // Test-LED Red = off
    }
    if (temp < 0.0) {
      Serial.print("Temperatur: " + String(temp) + "°C     ");  
    } else {
      Serial.print("Temperatur: +" + String(temp) + "°C     ");
    }
    Serial.println("Luftfeuchtigkeit: " + String(hum) + "%");
  }
  delay(100);
}
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
dht1:VCC
dht1:SDA
dht1:NC
dht1:GND
led1:A
led1:C
led2:A
led2:C