Inhaltsverzeichnis
Raumstatus
Wir veröffentlichen auf der Startseite den Raumstatus. Dort seht ihr, ob jemand im Raum ist oder auch nicht.
Die handbetätigte Statusampel hatte den Nachteil, daß immer wieder vergessen wurde sie zu betätigen. Daher wollten wir das gern automatisieren.
Aufbau
Bauteile
- Reedsensor
- Neodynmagnet
- NodeNCU
- USB-Netzteil
- Kabel
Beschreibung
Um den Status zu bestimmen, erfassen wir den Zustand des Türriegels. Dazu wurde im Türrahmen der Reedsensor platziert und auf dem Riegel ein Neodynmagnet aufgebracht. Der Reed ist mit einem digitalen I/O-Pin, sowie einem GND-Pin der NodeMCU verbunden. (Danke an hornig für die Vorarbeiten.)
Wird die Tür nach Verlassen des Raumes abgeschlossen, bewirkt der Magnet das Schließen des Reedkontaktes. Dies erzeugt eine Änderung des Pegels am I/O-Pin, welcher vom laufenden Programm periodisch abgefragt wird. Erkennt das Programm ein Pegeländerung, sendet es per WLAN eine entsprechende Nachricht an den dazugehörigen Dienst im Internet. Dieser generiert einen Zeitstempel und trägt ihn zusammen mit dem aktuellen Status in das API-File ein.
Software
Die Software besteht aus zwei Teilen … Dem Client, der den Reedsensor überwacht und erkannte Änderungen sendet, sowie einem Server, der diese Änderung empfängt und sie in der Status-API verarbeitet. Die Software dazu liegt derzeit auf git.kraut.space.
Der Client signalisiert Änderungen am Pin durch zwei kurze Blinkzeichen (jeweils 100 Millisekunden), sowie die erfolgreiche Übertragung an den Server durch fünf kurze Blinkzeichen. Fehler signalisiert die NodeNCU durch lange Blinkzeichen.
TODO
- Server um Anbindungen an Mastodon/Twitter erweitern
- NodeMCU um je eine rote und grüne LED erweitern, die den Status der Tür anzeigen.
- NodeMCU (und wenn vorhanden LED) in ein Gehäuse verpflanzen
- Fehlerausgabe der seriellen Schnittstelle über die RX- und TX-Pins