ESP32 C3 Super Mini - Türsensor
Ein Türsensor ist ein winziges, günstiges Bauteil, das Ihrem ESP32 C3 Super Mini mitteilt, ob eine Tür oder ein Fenster offen oder geschlossen ist. Er ist das Herzstück fast jedes DIY-Sicherheitsprojekts für das Zuhause. Dieses Tutorial zeigt Ihnen Schritt für Schritt, wie Sie einen Türsensor mit dem ESP32 C3 Super Mini verdrahten und programmieren.
In diesem Tutorial lernen Sie:
- Was ein Türsensor ist und wie Magnet und Reedschalter zusammenarbeiten
- Wie man einen Türsensor mit dem ESP32 C3 Super Mini verdrahtet
- Wie man den Türzustand (offen oder geschlossen) im Code ausliest
- Wie man die Ereignisse "Tür öffnet sich" und "Tür schließt sich" erkennt
- Warum ein Pull-up-Widerstand erforderlich ist und wie man den eingebauten verwendet

Erforderliche Hardware
| 1 | × | ESP32 C3 Super Mini | |
| 1 | × | USB-Kabel Typ-A zu Typ-C (für USB-A PC) | |
| 1 | × | USB-Kabel Typ-C zu Typ-C (für USB-C PC) | |
| 1 | × | Türsensor | |
| 1 | × | (Optional) DC-Stromanschluss | |
| 1 | × | Breadboard | |
| 1 | × | Verbindungskabel |
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Überblick über Door Sensor
Ein Türsensor ist ein Magnetschalter, der einen Stromkreis öffnet oder schließt, wenn sich ein Magnet ihm nähert oder sich von ihm entfernt.
Andere Bezeichnungen:
- Eingangssensor
- Kontaktsensor
- Fenstersensor
- Magnetkontaktschalter
Hauptmerkmale:
- Sehr günstig und sehr einfach zu verwenden
- Der Sensor selbst benötigt keine Stromversorgung
- Funktioniert für Ihren ESP32 C3 Super Mini wie ein einfacher Taster
- Keine beweglichen Teile, die verschleißen können
- Leicht in einem Türrahmen zu verstecken
Technische Daten:
- Typ: Reedschalter (Schließer) plus Magnet
- Ausgang: Einfacher EIN/AUS-Kontakt (keine Spannung, keine Daten)
- Schaltabstand: Etwa 15-25 mm zwischen Magnet und Schalter
- Logikpegel: Sicher für die Pins des ESP32 C3 Super Mini, die nur 3,3V vertragen
- Drähte: 2 Drähte, ohne Polarität
Pinbelegung des Türsensors
Der Türsensor besteht aus zwei getrennten Teilen.
- Magnet: Der bewegliche Teil. Keine Drähte.
- Reedschalter: Der feste Teil. Er hat zwei Drähte.

- Draht 1: Keine Polarität. Kann mit GND oder mit dem ESP32 C3 Super Mini Pin verbunden werden.
- Draht 2: Keine Polarität. Kann mit GND oder mit dem ESP32 C3 Super Mini Pin verbunden werden.
Genau wie bei einem Taster müssen wir die beiden Drähte des Reedschalters NICHT unterscheiden.
Wie der Türsensor funktioniert
Magnet und Reedschalter werden so montiert, dass sie bei geschlossener Tür nebeneinander liegen.
- Magnet: Befestigen Sie ihn an der Tür oder am Fenster (dem beweglichen Teil)
- Reedschalter: Befestigen Sie ihn am Türrahmen (dem feststehenden Teil)
- Tür geschlossen: Die beiden Teile befinden sich nah beieinander
- Tür offen: Die beiden Teile sind weit voneinander entfernt

Was im Reedschalter passiert:
- Magnet nah: Der Stromkreis ist geschlossen (die beiden Drähte sind verbunden)
- Magnet fern: Der Stromkreis ist offen (die beiden Drähte sind nicht verbunden)
※ Notiz:
Genau wie bei einem Taster MÜSSEN wir am ESP32 C3 Super Mini Pin, der mit dem Reedschalter verbunden ist, einen Pull-up- oder Pull-down-Widerstand verwenden. Ohne ihn ist der Pin-Zustand zufällig. Die gute Nachricht: Der ESP32 C3 Super Mini hat einen eingebauten Pull-up-Widerstand, sodass Sie kein zusätzliches Bauteil benötigen.
Wenn wir den Reedschalter mit einem Draht an GND und mit dem anderen an einen Eingangspin des ESP32 C3 Super Mini mit Pull-up-Widerstand anschließen:
- Magnet nahe am Reedschalter: Der Eingangspin ist LOW
- Magnet weit vom Reedschalter entfernt: Der Eingangspin ist HIGH
Im Code bedeutet das also:
- Pin ist LOW: Die Tür ist geschlossen
- Pin ist HIGH: Die Tür ist offen
- Pin wechselt von LOW zu HIGH: Die Tür öffnet sich
- Pin wechselt von HIGH zu LOW: Die Tür schließt sich
Schaltplan zwischen Türsensor und ESP32 C3 Super Mini
Für die Verdrahtung eines Türsensors mit dem ESP32 C3 Super Mini sind nur zwei Drähte nötig.
- Hinweis: Der ESP32 C3 Super Mini arbeitet ausschließlich mit 3,3V. Legen Sie niemals ein 5V-Signal an einen GPIO-Pin an.
- Hinweis: Der Reedschalter hat keine Polarität, daher können die beiden Drähte vertauscht werden.
- Hinweis: Halten Sie Magnet und Reedschalter bei geschlossener Tür innerhalb von etwa 15 mm zueinander.
- Hinweis: Verwenden Sie nicht GPIO8 oder GPIO9. Dies sind Boot-Strapping-Pins.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
| Türsensor-Pin | ESP32 C3 Super Mini Pin |
|---|---|
| Reedschalter Draht 1 | GPIO7 |
| Reedschalter Draht 2 | GND |
Wie man den Türsensor programmiert
Für die Programmierung eines Türsensors am ESP32 C3 Super Mini sind nur zwei Funktionen nötig.
- Den Pin als Eingang mit eingebautem Pull-up konfigurieren, indem Sie die Funktion pinMode() verwenden. Zum Beispiel GPIO7:
- Den Zustand des Pins auslesen, indem Sie die Funktion digitalRead() verwenden:
- Tipp: INPUT_PULLUP aktiviert den Widerstand im Inneren des ESP32 C3 Super Mini, sodass kein zusätzlicher Widerstand benötigt wird.
ESP32 C3 Super Mini Code - Offen- und Geschlossen-Zustand der Tür prüfen
Dieses erste Beispiel gibt den Türzustand immer wieder im Seriellen Monitor aus.
Was dieser Code macht:
- Konfiguriert GPIO7 als Eingang mit dem internen Pull-up-Widerstand
- Liest den Zustand des Türsensors in jedem Schleifendurchlauf aus
- Gibt "The door is open" aus, wenn der Pin HIGH ist
- Gibt "The door is closed" aus, wenn der Pin LOW ist
Schnelle Schritte
- Neu beim ESP32 C3 Super Mini? Arbeiten Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Super Mini durch, um Ihre Entwicklungsumgebung einzurichten.
- Bauteile verdrahten: Folgen Sie dem obigen Schaltplan. Reedschalter an GPIO7 und GND.
- Board anschließen: Verbinden Sie den ESP32 C3 Super Mini über ein USB-Type-C-Kabel mit Ihrem Computer.
- Arduino IDE öffnen: Starten Sie die Software auf Ihrem Computer.
- Board auswählen: Stellen Sie sicher, dass unter Werkzeuge > Board der ESP32 C3 Super Mini ausgewählt ist.
- Port auswählen: Wählen Sie unter Werkzeuge > Port den COM-Port Ihres Boards.
- Code kopieren: Fügen Sie den obigen Code in die Arduino IDE ein.
- Code hochladen: Klicken Sie in der Arduino IDE auf die Schaltfläche Upload.
- Seriellen Monitor öffnen: Stellen Sie die Baudrate auf 115200 ein.
- Testen: Bewegen Sie den Magneten nah an den Reedschalter und dann weit weg.
- Ergebnis prüfen: Beobachten Sie den Seriellen Monitor. Die Ausgabe sieht wie unten aus.
- Profi-Tipp: Wenn sich der Zustand nie ändert, bringen Sie den Magneten näher heran. Die meisten Reedschalter benötigen einen Abstand von etwa 15 mm oder weniger.
ESP32 C3 Super Mini Code - Ereignisse beim Öffnen und Schließen der Tür erkennen
Der erste Code teilt Ihnen den Zustand mit. Dieser zweite Code teilt Ihnen den Moment mit, in dem sich der Zustand ändert.
Was dieser Code macht:
- Speichert den Türzustand aus dem vorherigen Schleifendurchlauf
- Liest den neuen Türzustand von GPIO7 aus
- Gibt einmalig eine Meldung aus, wenn die Tür beginnt, sich zu öffnen (LOW zu HIGH)
- Gibt einmalig eine Meldung aus, wenn die Tür beginnt, sich zu schließen (HIGH zu LOW)
- Bietet Ihnen eine saubere Stelle, um einen Alarm, ein Licht oder eine Benachrichtigung hinzuzufügen
Schnelle Schritte
- Neu beim ESP32 C3 Super Mini? Arbeiten Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Super Mini durch, um Ihre Entwicklungsumgebung einzurichten.
- Gleiche Verdrahtung beibehalten: Der Reedschalter bleibt an GPIO7 und GND.
- Code kopieren: Fügen Sie den obigen Code in die Arduino IDE ein.
- Board auswählen: Stellen Sie sicher, dass unter Werkzeuge > Board der ESP32 C3 Super Mini ausgewählt ist.
- Code hochladen: Klicken Sie in der Arduino IDE auf die Schaltfläche Upload.
- Seriellen Monitor öffnen: Stellen Sie die Baudrate auf 115200 ein.
- Testen: Bewegen Sie den Magneten nah an den Reedschalter und dann weit weg.
- Ergebnis prüfen: Für jede Änderung wird nur eine Zeile ausgegeben.
- Profi-Tipp: Suchen Sie nach den // TODO-Kommentaren im Code. Dort fügen Sie Ihren Summer oder Ihre LED hinzu.
Zeilenweise Code-Erklärung
Der obige ESP32 C3 Super Mini Code enthält eine zeilenweise Erklärung. Bitte lesen Sie die Kommentare im Code!
Anwendungs- und Projektideen
Hier sind einige unterhaltsame Möglichkeiten, einen Türsensor mit Ihrem ESP32 C3 Super Mini zu verwenden.
- Türalarm: Einen Summer ertönen lassen, wenn sich die Tür öffnet, während Sie nicht zu Hause sind.
- Eingangszähler: Zählen, wie oft die Tür heute geöffnet wurde.
- Automatisches Licht: Einen LED-Streifen einschalten, sobald sich eine Schranktür öffnet.
- Kühlschrankwächter: Warnen, wenn die Kühlschranktür zu lange offen steht.
- Briefkasten-Alarm: Eine Nachricht senden, wenn die Briefkastenklappe geöffnet wird.
- Fenstermonitor: Alle Fenster prüfen, bevor Sie ins Bett gehen.
Fordern Sie sich heraus
Probieren Sie diese kleinen Projekte aus, um mit dem Türsensor und dem ESP32 C3 Super Mini zu üben.
- Einfach: Schalten Sie eine LED an GPIO3 ein, solange die Tür offen ist.
- Einfach: Geben Sie den Türzustand nur aus, wenn er sich ändert, nicht in jedem Schleifendurchlauf.
- Mittel: Fügen Sie einen Summer hinzu, der bei jedem Öffnen der Tür dreimal piept.
- Mittel: Zählen Sie, wie oft die Tür geöffnet wird, und geben Sie die Gesamtzahl im Seriellen Monitor aus.
- Fortgeschritten: Starten Sie einen Timer, wenn sich die Tür öffnet, und lösen Sie einen Alarm aus, wenn sie nach 30 Sekunden noch offen ist.
- Fortgeschritten: Nutzen Sie das WLAN des ESP32 C3 Super Mini, um bei jedem Öffnen der Tür eine Benachrichtigung an Ihr Handy zu senden.