[HowTo] ESP Überallklingel - aber mit eigenem Tür-Klingelton!

Black Senator

Mitglied
Mitglied seit
13 Jul 2007
Beiträge
418
Punkte für Reaktionen
69
Punkte
28
Hallo,

um die Wartezeit auf den Go-Live des neuen Release von carddav2fb zu verkürzen, habe ich mich endlich daran gemacht, mich mit ESP8266 zu beschäftigen. Was liegt da näher, als mit der ESP-Überallklingel zu starten, von der auch hier und hier bei Reichelt zu lesen ist.

Mir gefällt das schlanke Coding im Reichelt Beispiel, und auch die brauchbaren Hinweise zur Hardware. Leider fehlte der Hinweis aus der c't-Anleitung auf die Aktivierung der Wählhilfe, so dass ich erst einmal alle anderen Ursachen für das Nicht-Klingeln abgeklopft habe - für Rookies in der Arduino-IDE und ESP-Programmierung ärgerlich!

Egal, alles läuft nun in der Teststellung!

Was mich jedoch nicht befriedigt, ist die Tatsache, dass bei den Paramtern für die FRITZ!Box nur auf 08/15-Lösungen (z.B. Rundruf) verwiesen wird. Das läßt leider ein paar nette Features der FRITZ!Box außer acht. Insbesondere, das man das FRITZ!Fon, statt mit dem eingestellten Klingelton, beim Anruf der ESP-Türklingel z.B. mit einem deutlich unterscheidbaren Türgong-Ton auf sich aufmerksam machen kann.

Wie das geht beschreibe ich hier:
  1. Einen individuellen Tür-Klingelton auf die angeschlossenen FRITZ!Fon-Geräte übertragen (Eigenen Klingelton hinzufügen).
    ACHTUNG: Nach dem Upload ist der neue Klingelton auch automatisch als der Standard-Klingelton zugeordnet. Also wieder im FRITZ!Fon auf den vorherigen umstellen.
  2. Um die Wählhilfe mit TR-064 anzusprechen muss ja ein Dummy-Telefoniegerät eingerichtet werden. Hier wählt man aber nicht wie in den Anleitungen genannt ein "Telefon (mit und ohne Anrufbeantworter)", sondern eine "Türsprechanlage ". Dieses Telefoniegerät kann nämlich beim Anruf einen abweichenden Klingelton (Eigener 1 - 5) dezidiert ansteuern). Bei mir sieht das z.B. dann so aus:
    Türsprech-Dummy.PNG
  3. Wie beschrieben muss dieses Dummy-Telefoniergerät der Wählhilfe zugeordnet werden. Der TR-064 Dial-Befehl ist ja im Kern nichts anderes als ein Mausklick auf eine Rufnummer in der GUI.
    Was unter "Klingeln weiterleiten an" steht ist übrigens unerheblich! Entscheident ist, was beim TR-064 Dial-Befehl als Rufnummer mitgegeben wird.
    Das bringt mich zum optional letzten Punkt:
  4. Statt des Rundrufes kann der Befehl X_AVM-DE_DialNumber jede Rufnummer anrufen, die auch sonst erlaubt ist:
    • die Kurzwahlnummer einer internen Rufgruppe (Gruppenruf): z.B. **799
    • man kann aber auch eine eigene Gruppierung in dem Dial-Befehl mitgeben: z.B. **611#612#614
Viel Spaß damit, dass das Haustür-Klingeln im FRITZ!Fon nun auch anders klingt, als ein normaler Anruf.

Grüße

Black Senator
 
Zuletzt bearbeitet:
  • Like
Reaktionen: NDiIPP und nsus
Hallo!

Gegenfrage:
Lange Rede kurzer Sinn, kann man nach dem besonderen Klingelton, bei jeder angeschlossenen Nebenstelle dann auch abheben, mit der Tür-Nebenstelle "kommunizieren" u. jederzeit dann auch bei Bedarf, mit den dafür notwendigen DTMF-Kennziffern der Türstelle, dann auch noch den TÖ betätigen?
 
Gemäß deiner Signatur darf ich nicht antworten.
Warum eigentlich "Gegenfrage"? Ich habe nichts gefragt.
 
  • Like
Reaktionen: galegro
Hallo TE!
Wennst nicht willst, von müssen habe ich nichts geschrieben, "entscheidend" ist ob das Ganze dann wirklich genauso funzt, wie beschrieben, da es erst in der Testphase ist, ganz ohne wenn u. aber.

Danke für`s Gespräch.
 
Hallo,

es gibt keinen Grund rüde zu werden.
Ich finde es jetzt noch seltsamer, dass deine Signatur so diametral zu deinem Auftreten hier steht ("wisse immer, was Du sagst.")

Als Förderung:
Mit sinnentnehmendem Lesen kannst Dir Deinen Frage, nach kommunizieren, abheben, DTMF-Kennziffern und Türöffner selbst beantworten.
Als schädigende Hilfe:
Es geht in dem HowTo um spezifische Klingeltöne zu durch Software ausgelöste Ereignisse (TR-064 Dial) - nicht um Türsprechanlagen!

Grüße

Black Senator
 
  • Like
Reaktionen: galegro
Nach dem Motto: Mit einer guten Gegenfrage, erhält man oft bereits die halbe Wahrheit, danke für die Aufklärung!
 
Hallo Black Senator,
ich habe eine FB 7490 und darin eine Türsprechstelle eingetragen. Mein FritzFon klingelt aber mit dem Standardton, und der Text ist "ISN/DECT Rundruf". Dein Sreenshot von der Einrichtung der Türsprechstelle zeigt
das Einrichten einer TSP an FON, also nicht das beschriebene Einrichten einer Türsprechstelle. Was muss da denn für eine TSP stehen? Grundsätzlich habe ich den Eindruck, dass sich die FB überhaupt nicht drum schert, was für die TSP eingestellt ist, alles wirkt sich aus, als wenn ich ein Telefon eingerichtet hätte. Wo taucht denn später der DEVICE_NAME "ESP-Klingel" auf?
Bin für jeden Tipp dankbar.
Gruss ArduUser
 

Anhänge

  • Türsprechanlage an FON1.JPG
    Türsprechanlage an FON1.JPG
    43.7 KB · Aufrufe: 123
Hallo @ArduUser

sorry for delay! Hatte ein paar todo auf der Agenda, daher etwas verspätet die Antwort.

Ich muss gestehen, dass ich seit Mitte August, die Teststellung noch nicht endgültig installiert habe, da ich auch dafür andere Themen erst abarbeiten musste/wollte.

Obwohl ich die ESP-Überall-Klingel deshalb gerade nicht testen kann, sind alle Einstellungen in der FRITZ!Box und im Coding unverändert, haben so funktioniert und sollten so auch immer noch funktionieren:
Telefoniegeräte.jpg
TSP fake.jpg
Wählhilfe.jpg

Dazu der Coding-Ausschnitt:
C:
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
#include <tr064.h>

const char WIFI_SSID[] = "SSID";   // <-- ändern
const char WIFI_PASSWORD[] = "PASSWORD"; // <-- ändern
const char USER[] = "USER";
const char PASSWORD[] = "PASSWORD"; // <-- ändern
const char FRITZBOX_IP[] = "192.168.178.1";   // <-- ggf. ändern
const int FRITZBOX_PORT = 49000;

TR064 tr064_connection(FRITZBOX_PORT, FRITZBOX_IP, USER, PASSWORD);

const IPAddress STATIC_IP(192, 168, 178, 53);   // <-- ändern
const IPAddress GATEWAY(192, 168, 178, 1);   // <-- ggf. ändern
const IPAddress SUBNET(255, 255, 255, 0);   // <-- ggf. ändern
const IPAddress DNS(GATEWAY);

const char DEVICE_NAME[] = "ESP-Klingel";   // <-- ggf. ändern

void setup() {
  WiFi.hostname(DEVICE_NAME);
  WiFi.config(STATIC_IP, SUBNET, GATEWAY, DNS);
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  WiFi.mode(WIFI_STA);

  while (WiFi.status() != WL_CONNECTED) {
   delay(50);
  }

  tr064_connection.init();

  String tr064_service = "urn:dslforum-org:service:X_VoIP:1";

  // Die Telefonnummer **9 ist der Fritzbox-Rundruf.
  String call_params[][2] = {{"NewX_AVM-DE_PhoneNumber", "**799"}};
  tr064_connection.action(tr064_service, "X_AVM-DE_DialNumber", call_params, 1);

  // Warte vier Sekunden bis zum auflegen
  delay(8000);
  tr064_connection.action(tr064_service, "X_AVM-DE_DialHangup");

  ESP.deepSleep(0);
}

void loop() {}

Der Dial-Befehl macht einen Rundruf (an alle internen Telefone). Der Dial-Befehl ist die "Verscriptung" der Wählhilfe in der GUI. Die Wählhilfe ist mit der "Fake"-Türsprechanlage "Haustür" verknüpft. Darum erscheint im Display der rundgerufenen Telefone als Anrufer "Haustür".

Okay?

Black Senator
 
Hallo Black Senator,
danke für die Informationen. Da war ich wohl mit meinen Einstellungen auf einem völlig falschen Weg. Ich werde mich "nach den Tagen" damit befassen und dann berichten.
Nochmals Danke für die Screens.

ArduUser
 
Hallo Black Senator,
das System läuft. Ohne deine Screens hätte ich das nicht hinbekommen. Ich habe als TSP einen ESP8266-01 verwendet und in das Batteriegehäuse einer Lichterkette eingebaut. Der Taster löst die Meldung aus. Verzögerung 4s. Danke für die Hilfe.

ArduUser
 

Anhänge

  • TSP10.JPG
    TSP10.JPG
    89.9 KB · Aufrufe: 130
Ey super @ArduUser !

Da bist Du schon weiter als ich :(
Ich habe gerade noch andere Projekte am Start und bin noch nicht zum Einbau gekommen.

Wenn Du magst, dann poste doch noch ein paar mehr Bilder - interessiert hier bestimmt einige...

Grüße

Black Senator
 
Hallo Black Senator,
das Gehäuse ist von einem One Dollar Laden, da war eine Leuchtdiodenkette dran, und der ESP paßte da zufällig perfekt rein.
Der Schalter ist auch noch sinnvoll zu verwenden, sieht man an den Bildern.
Grüße aus Köln
ArduUser
 

Anhänge

  • 20200110_163556.jpg
    20200110_163556.jpg
    1.3 MB · Aufrufe: 128
  • Gehäuse.jpg
    Gehäuse.jpg
    146.6 KB · Aufrufe: 117
Hallo zusammen,
ihr habt mir bei der Eirichtung in der Fritzbox sehr geholfen.
Grüße aus BOH
Nico
 
Moin moin,

meine Mutter meinte neulich mal, das sie die Türklingel schlecht hört, wenn sie in der Küche ist. Da ist mir wieder dieses Projekt eingefallen, das mal "vor Jahren" in der c't erwähnt war...
ESP8266 aka NodeMCU lag noch daheim rum und nach etwas basteln hat es bei mir daheim an einer 7590 funktioniert...

Also zu ihr gefahren, im Arduino IDE einfach nur die WLAN-Daten und Fritzbox-Passwort angepasst und:
es geht nicht.
Das Gerät taucht nicht mal in der Netzwerkliste bzw. Ereignisanzeige der Box auf, kriegt also keine WLAN-Verbindung...

Sitze jetzt gerade ca. 50 cm vom Router entfernt, eine 7490 und habe das Script schon x-mal neu kompiliert und in den ESP geladen, mal von hier und mal von Reichelt gecopypasted und neu versucht... Es will einfach nicht :(

Bin ich doof oder habe ich irgendwas übersehen?

- Türsprechanlage auf FON 2 angelegt
- Wählhilfe für die Türsprechanlage eingerichtet
- Zugriff auf Anwendungen in den Netzwerk-Einstellungen aktiviert
- Script in die IDE pasten
- WLAN-SSID und -Passwort anpassen
- Fritzbox-Passwort anpassen
- kompilieren und hochladen
- am ESP RST und G kurz brücken
- kurz warten und in der Ereignisanzeige der Box mit Filter "Alle" gucken - nix :(

Danke!
 
Moin,

unabhängig davon, was der NodeMCU machen soll - wenn er nicht als Device in deinem Netzwerk auftaucht - dann liegt doch da das Problem und hat nix mit seiner gewünschten Funktion als Klingel zu tun.

Da solltest Du mit deiner Fehlersuche beginnen: z.B. miniscript erstellen, welches anzeigt, ob der NodeMCU überhaupt fehlerfrei läuft und per WLAN im Netz auftaucht.

Grüße

Black Senator
 
Moin moin,

meine Mutter meinte neulich mal, das sie die Türklingel schlecht hört, wenn sie in der Küche ist. Da ist mir wieder dieses Projekt .......
ESP8266 aka NodeMCU lag noch daheim rum und nach etwas basteln hat es bei mir daheim an einer 7590 funktioniert...

Also zu ihr gefahren, im Arduino IDE einfach nur die WLAN-Daten und Fritzbox-Passwort angepasst und:
es geht nicht.


Danke!
Ich kann dir nur diesen Code empfehlen. Ich habe damit 2 Projekte realisiert.
5V USB-Stromversorgung und Optokoppler für den Eingang des Klingelsignals notwendig.
Du mußt außer den WLan-Daten auch eine SIP-Rufnummer und eine eventuelle Gruppenrufnummer anlegen, die Daten müssen im Code mit eingetragen werden.
Anschließend mußt du die Türsprechstelle oder einen SIP-Teilnehmer/-Gerät einrichten.
Sollte dann alles funktionieren.
 
Habe es nochmal mit einer anderen NodeMCU versucht: Beim ersten Start nach dem Aufspielen taucht ganz kurz ein "ESP-<kryptische Bezeichnung" Gerät auf. Danach verbindet es sich wieder nicht.
Bei mir daheim geht es nach wie vor problemlos... sehr komisch.

@q12345678: Habe leider keine Steckdose in der Nähe, daher muss es per Batterie funktionieren.
 
Um die Wählhilfe mit TR-064 anzusprechen muss ja ein Dummy-Telefoniegerät eingerichtet werden. Hier wählt man aber nicht wie in den Anleitungen genannt ein "Telefon (mit und ohne Anrufbeantworter)", sondern eine "Türsprechanlage ".
Das habe ich gerade probiert, ich kann bei meiner 7530 v07.29 bei Wählhilfe die Türsprechanlage gar nicht einstellen, geht nur Fritz!Fon, Dect oder analog, auch IP-Phones kann man nicht wählen.
Statt des Rundrufes kann der Befehl X_AVM-DE_DialNumber jede Rufnummer anrufen, die auch sonst erlaubt ist:
  • die Kurzwahlnummer einer internen Rufgruppe (Gruppenruf): z.B. **799
  • man kann aber auch eine eigene Gruppierung in dem Dial-Befehl mitgeben: z.B. **611#612#614
Das mit den mehreren Nummern wäre cool, das werde ich mal probieren, optimal wäre, man könnte dort auch externe Nummern mit wählen.
Bei **9 mit Wählhilfe über ein Dect-Telefon scheint bei mir MicroSIP IP-Phone-Software nicht mit zu klingeln, während es bei **9 vom Fritz!Fon klingelt.
Im übrigen klingelt es bei mir mit einem ESP8266 X_AVM-DE_DialNumber maximal ~20s, vielleicht muss man den Befehl wiederholt senden?
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
244,840
Beiträge
2,219,268
Mitglieder
371,543
Neuestes Mitglied
Brainbanger
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.