🎮 Speziell entwickelt für PlayStation-Lüfter - Optimale Kühlung für Gaming-Sessions!
- Automatische Temperatursteuerung mit DHT11-Sensor
- Web-Interface für Fernsteuerung und Überwachung
- WLAN-Anbindung oder Access Point Modus
- Einstellungen speichern im EEPROM
- Manueller Modus für direkte Lüftersteuerung
- 🚨 Manueller Fehlermodus - Button für Notfall-100%-Betrieb
- Responsive Design für Smartphone und Desktop
- 🚨 Sensor-Ausfallsicherung: Lüfter auf 100% bei DHT11-Defekt
- ESP32-WROOM-32 DevKit
- DHT11 + 10 kΩ Pull-up von DATA → 3,3 V
- N-MOSFET (2N7002 oder BSS138) oder NPN (2N2222/BC337) als Open-Drain-Treiber
- Widerstände: 100 Ω in Serie am Gate/Basis, 100 kΩ Gate-Pulldown, 10 kΩ Pull-up von PWM → 5 V
- Netzteil 12 V ≥ 3 A für den Lüfter, 100 µF Puffer an 12 V
- Kabel, Breadboard/Lochraster, optional 2 A-Sicherung in Serie zum Lüfter-+12 V
- VCC → 3.3 V
- GND → GND
- DATA → GPIO2 (+ 10 kΩ Pull-up auf 3.3 V)
- Braun → +12 V
- Schwarz → GND
- Grau → PWM (über MOSFET)
- ESP32-GPIO18 → 100 Ω → Gate (MOSFET) → Drain an grau
- Source an GND
- 10 kΩ Pull-up von PWM → 5 V
- GND von ESP32, 12 V-Netzteil und Lüfter verbinden
ESP32-GPIO18 ──[100Ω]──┬── Gate (MOSFET 2N7002)
│
└──[100kΩ]── GND (Gate-Pulldown)
MOSFET Drain ── Lüfter PWM (grau)
MOSFET Source ── GND
Lüfter PWM ──[10kΩ]── +5V (Pull-up für definierte Pegel)
DHT11 DATA ──[10kΩ]── +3.3V (Pull-up)
Bearbeiten Sie die Datei src/config.h:
const char* WIFI_SSID = "Ihr_WLAN_Name"; // Ihr WLAN-Netzwerkname
const char* WIFI_PASSWORD = "Ihr_WLAN_Passwort"; // Ihr WLAN-PasswortFalls die WLAN-Verbindung fehlschlägt, startet der ESP32 automatisch einen Access Point:
- SSID:
Lueftersteuerung - Passwort:
12345678 - IP-Adresse:
192.168.4.1
- WLAN-Modus:
http://[ESP32-IP-Adresse] - Access Point:
http://192.168.4.1
- 📊 Live-Daten: Temperatur, Luftfeuchtigkeit, Lüfterstatus
- ⚙️ Einstellungen: Temperatur-Schwellenwerte anpassen
- 🎛️ Manuelle Steuerung: Direkter PWM-Slider
- 🤖 Automatik/Manuell: Zwischen Modi wechseln
- 💾 Speichern: Einstellungen im EEPROM
- 🚨 Notfall-Steuerung: Manueller Fehlermodus ein/aus
#define DEFAULT_TEMP_MIN 22.0 // Unterhalb: Lüfter aus
#define DEFAULT_TEMP_MAX 30.0 // Oberhalb: Lüfter Maximum
#define DEFAULT_TEMP_HYSTERESE 1.0 // Vermeidet Schwankungen#define PWM_MIN 0 // Aus (0%)
#define PWM_LOW 80 // Niedrig (~31%)
#define PWM_MED 150 // Mittel (~59%)
#define PWM_HIGH 220 // Hoch (~86%)
#define PWM_MAX 255 // Maximum (100%)// PWM-Setup für Lüftersteuerung
ledcSetup(0, 25000, 8); // Kanal 0, 25 kHz, 8-bit (0-255)
ledcAttachPin(18, 0); // GPIO18 an PWM-Kanal 0
// DHT11-Setup
DHT dht(2, DHT11); // GPIO2, DHT11-Typ- Temperaturmessung: DHT11 misst alle 2 Sekunden
- Lüftersteuerung:
- < 22°C: Lüfter AUS
- 22-30°C: Proportionale Steuerung (31-100%)
-
30°C: Lüfter Maximum
- Hysterese: Verhindert ständiges Ein/Ausschalten
- 🚨 Sicherheitsmodus: Bei DHT11-Ausfall → Lüfter auf 100%
- Serial Monitor: Zeigt aktuelle Werte an
- Erkennung: 5 aufeinanderfolgende Lesefehler oder 10s ohne gültige Messung
- Reaktion: Lüfter automatisch auf 100% (Notmodus)
- Anzeige: Rote Fehlermeldung im Web-Interface + Serial Monitor
- Wiederherstellung: Automatisch bei erneutem Sensor-Kontakt
- WLAN konfigurieren:
src/config.hanpassen - PlatformIO: Projekt kompilieren mit
pio run - Upload:
pio run --target upload - Serial Monitor:
pio device monitor(zum Debugging) - Web-Interface: Im Browser öffnen
Das Web-Interface zeigt:
- Aktuelle Werte in Echtzeit (Temperatur, Luftfeuchtigkeit, Lüfterstatus)
- Einstellungen für Temperatur-Schwellenwerte
- Manuelle Steuerung mit PWM-Slider
- Responsive Design für alle Geräte
GET /- Web-InterfaceGET /data- JSON mit aktuellen SensordatenGET /settings- JSON mit aktuellen EinstellungenPOST /settings- Einstellungen speichernPOST /mode- Steuerungsmodus ändernPOST /emergency- Manuellen Fehlermodus ein/ausschalten
=== Temperaturgesteuerte Lüftersteuerung mit Web-Interface ===
WLAN verbunden!
IP-Adresse: 192.168.1.100
Web-Interface: http://192.168.1.100
=== System bereit! ===
Temperatur | Luftfeucht. | PWM | Geschw. | Modus
-----------------------------------------------------
24.2°C | 65.0% | 95 | 37% NIEDRIG | AUTO
26.5°C | 62.3% | 156 | 61% MITTEL | AUTO
DHT11 Lesefehler #1
DHT11 Lesefehler #5
⚠️ SENSOR-FEHLER: DHT11 ausgefallen! Lüfter auf 100% (Notmodus)
FEHLER | FEHLER | 255 | 100% FEHLER-MODUS | SENSOR-FEHLER!
✅ DHT11 Sensor wieder funktionsfähig - Normalbetrieb
25.1°C | 63.2% | 120 | 47% NIEDRIG | AUTO
- EEPROM-Speicherung: Einstellungen überleben Neustarts
- Hysterese-Funktion: Verhindert Lüfter-Flackern
- Proportionale Steuerung: Sanfte Geschwindigkeitsanpassung
- Fehlerbehandlung: Robuste Sensor-Auslesung
- Mobile-First: Optimiert für Smartphone-Nutzung
- 🚨 Ausfallsicherheit: Lüfter auf 100% bei Sensor-Defekt
- Automatische Wiederherstellung: Bei Sensor-Reparatur
- Visual Feedback: Blinkende Fehleranzeige im Web-Interface