# ESP32C3 Raumtemperatursensor mit Touch TFT

## Überblick

Dieses Projekt ist ein smarter Raumtemperatursensor auf Basis eines **ESP32C3 Super Mini Boards** mit einem **1,28" rundem Touch TFT-Display**. Der Sensor misst die Raumtemperatur mithilfe eines **BME280 von Bosch** und stellt die Werte grafisch auf dem Display dar. Optional kann eine WLAN-Anbindung zur Datenübertragung oder Fernüberwachung erfolgen.

## Hardware-Komponenten

- **ESP32C3 Super Mini Board**  
  [Link zum Board](https://de.aliexpress.com/item/1005007446928015.html)  
- **1,28" rundes Touch TFT-Display** (GC9A01 oder vergleichbar)  
  [Link zum Display](https://de.aliexpress.com/item/1005004911604497.html)  
- **BME280 Temperatursensor von Bosch**  
  [Datenblatt (PDF)](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme280-ds002.pdf)  
- **Relaismodul** (zur Steuerung externer Geräte)  
- **Spannungsversorgung:** RAC02E-3.3SK Schaltnetzteil  
  [Datenblatt (PDF)](https://www.recom-power.com/pdf/Econoline/RAC02E-K.pdf)  

## Pinbelegung des ESP32C3

### Touch & BME280 Sensor
- **Pin 6** → SDA  
- **Pin 7** → SCL  
- **Pin 8** → Touch INT  
- **Pin 9** → Touch RST  

### Display
- **Pin 0** → RST  
- **Pin 1** → Backlight PWM  
- **Pin 2** → SCK  
- **Pin 5** → CS  
- **Pin 3** → D/C  

### Relais
- **Pin 21** → Relais Output  

## Features

- **Temperatur-, Luftfeuchtigkeits- und Luftdruckmessung mit BME280**  
- **Grafische Darstellung auf Touch-Display**  
- **Optionale WLAN-Anbindung für Fernzugriff**  
- **Steuerung eines Relais zum Ein-/Ausschalten externer Geräte**  
- **Energieeffizienter Betrieb**  
- **HTTP-API für Remote-Zugriff**  
- **Datenübertragung via MQTT (Ist-Temperatur, Soll-Temperatur, Relais-Zustand, Relative Feuchte, Luftdruck)**  
- **Relais schaltet automatisch in Abhängigkeit von Ist- und Soll-Temperatur das Ventil der Fußbodenheizung**  

## Software & Bibliotheken

- **Entwicklungsumgebung:** VSCode mit PlatformIO  
- **Framework:** Espressif Arduino Framework V3  
- **Benötigte Bibliotheken:**  
   - [moononournation/GFX Library for Arduino@^1.5.3](https://github.com/moononournation/Arduino_GFX)  
   - [lvgl/lvgl@^9.2.2](https://lvgl.io/)  
   - [finitespace/BME280@^3.0.0](https://github.com/finitespace/BME280)  
   - [prampec/IotWebConf@^3.2.1](https://github.com/prampec/IotWebConf)  
   - [tzapu/WiFiManager@^2.0.17](https://github.com/tzapu/WiFiManager)  

## Installation & Einrichtung

1. **VSCode & PlatformIO installieren**  
2. **Neues PlatformIO-Projekt anlegen**  
   - Board: `ESP32C3 Dev Module`  
   - Framework: `Arduino (Espressif32) V3`  
3. **Bibliotheken in `platformio.ini` hinzufügen**  
4. **Schaltung aufbauen**  
   - Display, Sensor und Relais gemäß Pinbelegung verbinden  
5. **Firmware flashen**  
   - Code auf das ESP32C3 Board hochladen  
   - Seriellen Monitor für Debugging nutzen  
6. **Funktionstest**  
   - Temperaturwerte auf dem Display prüfen  
   - Relaisfunktion testen  
   - Falls WLAN aktiviert ist: Verbindung prüfen  

## Geplante Erweiterungen

- **Cloud-Integration zur Datenspeicherung (MQTT, Google Sheets, etc.)**  
- **Erweiterte Touch-Funktionalität zur Steuerung**  
- **Batteriebetrieb mit Deep Sleep-Modus für längere Laufzeit**  

## Lizenz

Dieses Projekt steht unter der MIT-Lizenz.  

---

📌 *Autor:* [Dein Name]  
📅 *Letzte Aktualisierung:* [Datum]  