# 🔐 Intelligente Türklingel mit ESP32C3

Dieses Projekt nutzt einen **ESP32C3 Super Mini**, einen **R503 Fingerabdrucksensor** sowie ein **3x4 Tastenfeld**, um eine smarte Türklingel mit Zutrittskontrolle zu realisieren.

---

## 📦 Komponenten

- [ESP32-C3 Super Mini Board (Aliexpress EstarDyn)](https://de.aliexpress.com/item/1005007446928015.html?spm=a2g0o.order_list.order_list_main.49.48d35c5fCRylRE&gatewayAdapt=glo2deu)  
- [R503 Fingerabdrucksensor ](https://datasheet.lcsc.com/lcsc/1811141221_FPM-Fingerprint-R503_C83050.pdf)  
- [3x4 Matrix Keypad (Tastenfeld Aliexpress EstarDyn)](https://de.aliexpress.com/item/1005007728795501.html?spm=a2g0o.order_list.order_list_main.50.1c895c5fVEI011&gatewayAdapt=glo2deu)  
- Jumper-Kabel, Stromversorgung (5 V oder USB), Gehäuse etc.

---

## 🧠 Funktionen

- Authentifizierung über Fingerabdruck
- PIN-Code Eingabe über 3x4 Keypad
- Kombination aus Fingerabdruck und PIN möglich
- Ansteuerung von z. B. Türöffner oder Alarmanlage
- Optional: Web-Anbindung über WiFi zur Protokollierung

---

## 🔌 Schaltplan (Verdrahtung)

### 🔹 R503 Fingerabdrucksensor

| **R503 Sensor** | **ESP32C3 Pin** | **Beschreibung**             |
|------------------|------------------|-------------------------------|
| VCC              | 3V3              | Stromversorgung (3.3 V)       |
| GND              | GND              | Masse                         |
| TX               | GPIO20           | Daten zum ESP (RX)            |
| RX               | GPIO21           | Daten vom ESP (TX)            |
| Touch INT        | GPIO10           | Interrupt-Signal vom Sensor   |

📄 [R503 Datenblatt (PDF)](https://datasheet.lcsc.com/lcsc/1811141221_FPM-Fingerprint-R503_C83050.pdf)

---

### 🔹 3x4 Tastenfeld (Keypad)

| **Keypad Pin** | **ESP32C3 Pin** | **Beschreibung**     |
|----------------|------------------|-----------------------|
| ROW0           | GPIO1           | Zeile 1               |
| ROW1           | GPIO6           | Zeile 2               |
| ROW2           | GPIO5           | Zeile 3               |
| ROW3           | GPIO3           | Zeile 4               |
| COL0           | GPIO2           | Spalte 1              |
| COL1           | GPIO0           | Spalte 2              |
| COL2           | GPIO4           | Spalte 3              |


| **Pin** | **ESP32C3 Pin** | **Beschreibung**        |
|---------|-----------------------|-------------------|
| SDA     | GPIO8                 | I2C Port expander |
| SCL     | GPIO9                 | I2C Port expander |

| **Aktor     ** | **Port-Expander Pin** | **Beschreibung**     |
|----------------|-----------------------|-----------------------|
| Buzzer         | GPIO8                 | Piepser               |
| Opener         | GPIO9                 | Türöffner             |
| bell           | GPIO10                | Glocke innen          |
---

## 📸 Pinouts und Datenblätter

![ESP32C3 Super Mini Pinout](https://gitea.nas.el-wa.org/admin/Doorbell/raw/branch/main/doku/azci_esp32-c3-super-mini-pinout.jpg)

![Keypad Pinout](https://gitea.nas.el-wa.org/admin/Doorbell/raw/branch/main/doku/raspberry_pi_PID3845_pinout.jpg)

[R503 Datasheet](https://gitea.nas.el-wa.org/admin/Doorbell/raw/branch/main/doku/R503_datasheet.pdf)

---

## 🛠️ Benötigte Libraries (Arduino)

- `Adafruit_Fingerprint` (für R503)
- `Keypad.h` (für 3x4 Keypad)
- `WiFi.h` (für spätere Netzwerkintegration)
- ggf. `ESPAsyncWebServer`, `EEPROM`, `Preferences` u. a.

---

## 🚧 ToDo

- [ ] Fingerabdruck-Registrierung über Tastenkombination
- [ ] PIN-Code Backup-Funktion
- [ ] Web-Interface zur Verwaltung
- [ ] Daten-Logging (SD-Karte oder Cloud)

---

## 📝 Lizenz

MIT – freie Nutzung für private und kommerzielle Projekte.

---

## 📬 Kontakt

Bei Fragen oder Vorschlägen: einfach melden!

