Home | Beschreibung | Schaltbild | Fritzbox Konfiguration |
Fritzbox
WLAN Türklingel Version 2
Das ist jetzt die Version
2 meiner Interpretation der Fritzbox Türklingel. Die Version 1 gibt es hier: Version 1 Es hat sich in der Kommunikation mit Nachbauern gezeigt das die meisten Probleme mit der Arduino IDE haben. Entweder läuft sie garnicht oder produziert nur Mist. Kein Geheimnis und auch keine neue Erkenntnis. Da aber einige individuelle Parameter eingegeben werden müssen musste die Arduino IDE irgendwie umgangen werden. Die Lösung ist der "Wifimanager". Er vertrug sich zwar zunächst nicht mit der TR064 Library, das lies sich aber durch Anpassungen beheben. Drei Parameter: die Daten für das TR064 Protokoll müssen leider über die Arduino IDE eingestellt werden. Der Wifimanager konnte zwar die entsprechenden Eingabefelder bereitstellen. Doch die so erfassten Daten führten zu unkontrollierten HW Watchdog Resets der ESP8266 HW. Über den Wifimanager können SSID und das Passwort erfasst werden. Das funktioniert problemlos. Bei einem vorprogrammierten Modul trage ich diese Parameter fest ein. Bei einem Wechsel der Wlan Umgebung kann dann über die Config Taste eine neue Wifi Verbindung konfiguriert werden. Ist der Config Modus aktiviert erscheint in der WLAN-Übersicht des PC folgendes WLAN: Auf VERBINDEN drücken danach wird der Standardbrowser geöffnet: Auf "Configure WiFi" drücken. Die WiFi Umgebung wird gescant und die gefunden Wifi werden angezeigt: Das
gewünschte Netz anwählen und das passende Password
eingeben.
Danach wird die WiFi Klingel zurückgesetzt und es wird ein Ruf
abgesetzt der das Telefon klingeln lässt. Hat es geklappt ist
die
Konfiguration abgeschlossen.
Desweiteren wurde die HW angepasst. Hinzu gekommen sind: - Config LED - Config Taste - Stromversorgungsanschluß Details werden später beschrieben. Die alte Beschreibung mit den Anpassungen für die neuen Funktionen. ------------------------------------------------------------------------------------------------------------------------------------------------------------------- Seitdem AVM seine Fritzboxen auf TR064 Protokoll umgestellt hat und Telnet eingestellt hat, ist es sehr einfach geworden eine Fritzbox per WLAN anzusteuern. Seid 2018 ist das so und es sind auch gleich Projekte im I-Net aufgetaucht. Ein sehr beliebtes Projekt ist die Wifi Klingel. D.h. es klingelt Jemand an der Haustür und das Telefon klingelt mit. Das ist sehr praktisch wenn man im Haus unterwegs ist an Orten an denen man die Türklingel nicht mehr hört, aber ein DECT Telefon noch Empfang hat. In Zeiten der analogen Telefonanlagen war das kein Problem es gab sogar Türsprechstationen die telefonieren konnte, alles über Zweidraht Verbindungen. In Zeiten der IP-Telefonie muss man etwas andere Wege gehen. Benötigt wird eine Schnittstelle zur Klingelanlage und eine ESP8266 WLAN Platine, in meinem Projekt kommt die WEMOS D1 mini Platine zum Einsatz. Sie ist zu den Arduino Treibern für den ESP8266 Chipsatz kompatibel. Die Schnittstelle Alle Projekte die ich bisher im I-net gefunden hatte benutzten einen Brückgleichrichter und einen Optokoppler um eine potentialfreie Verbindung zur WLAN Platine herzustellen. Ich mußte feststellen das diese Schaltung in mehrfach Hausanlagen sehr störanfällig ist. Es klingelt auch dann wenn man nicht gemeint ist sondern der Nachbar. Der Grund sind die langen Kabelwege und die Wechselspannung in den ungeschirmten Klingelleitungen sorgen dafür das der Optokoppler reagiert obwohl er nicht gemeint ist. Jetzt könnte man anfangen vor den Optokoppler Filterschaltungen zu setzen. Das war mir zu aufwendig denn es gibt einen einfacheren Weg. Klingelanlagen sind für die Ansteuerung Induktiver Bauteile konstruiert. Also wird ein Relais genommen das zur Spannung der Klingelanlage passt. Eine Einweggleichrichtung mit Siebung davor und zum Schutz vor zu hoher Spannung am Relais, eine Zenerdiode passend zur Spulenspannung des Relais. Jetzt klingelt es nur noch wenn man auch gemeint ist ;). Die beiden Schließer im verwendeten Reedrelais steuern eine LED an und den Reset Eingang des WEMOS D1. Die Stromversorgung Die Schaltung muss mit Strom versorgt werden. Jetzt könnte man auf die Idee kommen die Versorgungsspannung aus dem Klingeltrafo zu beziehen. Bei Klingelanlagen für nur eine Partei funktioniert das. Wobei man aufpassen muss viele Klingeltrafos haben einen extrem hohen Innenwiderstand was zu starken Spannungszusammenbrüchen führt. Vor allem wenn der Türöffner betätigt wird. Der Effekt: es klingelt nochmal. Diese Eigenschaft der Klingeltrafos ist gewollt, es macht sie Dauerkurzschlußfest. In Mehrparteien Anlagen wird die Sprechstation mit einer Gleichspannung versorgt. Aber auch die kann man nicht nutzen. Denn der Gleichspannung wird das Sprachsignal überlagert. Zapft man diese Spannung an wirds still in der Sprechanlage. Ich habe mich für Batterie Betrieb entschieden. Mit dem verwendeten WLAN Modul komme ich auf eine Laufzeit von Minimum ~390 Tagen mit normalen AA Batterien. Das WEMOS Modul zieht im DeepSleep Modus nur noch 90µA. Wird geklingelt werden 90-100mA für kurze Zeit gezogen. In der letzten Zeit tauchen vermehrt Clone des WEMOS D1 Mini auf bei denen der Deep Sleep Modus nicht funktioniert und die Batterie schnell entleert wird. Nur der Originale LOLIN WEMOS D1 mini unterstützt den Deep Sleep Modus korrekt. Als Workaround kann die Schaltung direkt über den USB Anschluss der Fritzbox mit 5V versorgt werden. Programmierung WLAN-Modul Die Programmierung des WLAN Modules erfolgt über die Arduino IDE. Beschreibungen dazu gibt es zahlreiche im Internet. Funktionen Auf der Platine befinden sich zwei Taster: - Test-Taster zum kontrollieren der WLAN Verbindung. Die grüne LED bleibt dunkel aber die roten reagieren wie oben beschrieben. - Config-Taster. Um in den Config Modus zu gelangen Config Taste drücken und festhalten, Test Taste drücken und loslassen. Config Taste solange festhalten bis die Config LED leuchtet. Auf der Platine befindet sich ein DIP-Switch: - Mit Dip-Switch 1-3 kann in Sekunden Schritten Binär die Klingelzeit eingestellt werden. Viel Spass
beim nachbauen. |
Das Prinzip
/* |