Impulswahl zu Mehrfrequenz Umsetzer

FeTAp 611Konverter, eingebaut im FeTAp 611

Dieses Projekt erfreut sich offenbar inzwischen starker Beliebtheit, da viele Telefonanlagen das Impulswahlverfahren nicht mehr unterstützen.
Aufgrund verschiedener Rückmeldung habe ich den Konverter inzwischen mehrfach optimiert.
An dieser Stelle vielen Dank für die vielen Rückmeldungen!

Einleitung:
Diese kleine Zusatzschaltung ermöglicht es, antike Wählscheibentelefone an einer modernen Telefonanlage zu betreiben, die kein Impulswahlverfahren mehr unterstützt.
Die hier vorgestellte Lösung kommt ohne schwer beschaffbare Spezialbauteile aus.
Es ist lediglich ein AVR Mikrocontroller und ein kleines Programm nötig.

Die Zusatzschaltung kann ohne Änderungen am Telefon unsichtbar in dem Gerät "versteckt" werden.

Sie wird zwischen dem Nummernschalter (die Wählscheibe) und dem Grundgerät eingebaut.
Das bietet sich an, da der Nummernschalter immer entweder steckbar oder mit Schraubanschlüssen mit dem Grundgerät verbunden ist.
Diese Verbindung lässt sich leicht auftrennen und das Zusatzgerät einschleifen.

Wie funktioniert ein Telefon?
Um zu verstehen, wie die Schaltung arbeitet, ist es nötig zu verstehen, wie ein Telefon funktioniert.
Alle Wählscheibentelefone sind grundsätzlich ähnlich aufgebaut.
Die Schaltbilder anderer Wählscheibentelefone weichen nur in Details von dem als Beispiel benutzen Schaltbild ab.

Hier das Schaltbild des vielleicht bekanntesten Vertreters seiner Art, einem W48:

Ein Telefon wird immer mit zwei Adern (La und Lb) mit der Vermittlungsstelle verbunden.
Die anderen beiden eventuell vorhandenen Adern (W und E) dienen zur Steuerung von Zusatzgeräten oder zum Betrieb an einer (alten) Telefonanlage und werden hier nicht weiter betrachtet.
Das Schaltbild zeigt die Kontaktstellungen bei aufgelegtem Hörer.
Die Vermittlungsstelle versorgt das Telefon über eine Relaisspule mit -60V Gleichspannung.
Gleichstrom kann jedoch nicht fließen, da die Kontakte U1 und U2 geöffnet sind.
Jedoch kann eine Wechselspannung über den 1 µF Kondensator und den Wecker (Klingel) fließen.
Wenn ein Telefon gerufen wird, wird von der Vermittlungsstelle eine Wechselspannung von ca. 110V und 25Hz gesendet, welche den Wecker zum läuten bringt.

Wird der Hörer abgenommen, schließen die Kontakte U1 und U2, der Kontakt U3 öffnet.
Damit kann Strom durch die Hörerschaltung, fließen.
Dieser Stromfluss bringt in der Vermittlungsstelle ein Relais zum Anziehen, womit der abgehobene Hörer erkannt wird.

Wird eine Ziffer gewählt, schließt mit dem Aufziehen der Wählscheibe der nsa Kontakt.
Beim Ablaufen der Wählscheibe öffnet der Kontakt nsi entsprechend der gewählten Ziffer.
Das lässt in der Vermittlungsstelle das Relais so oft abfallen, wie als Ziffer gewählt wurde.

Heute wird die elektromechanische Teilnehmerschaltung (das Relais) durch eine moderne, elektronische Lösung ersetzt.
Nachteilig ist leider oft, dass die alten Spannungswerte nicht mehr eingehalten werden!
Die AVM FRITZ!Box liefert laut Datenblatt 35V Speisespannung und ca. 32V Rufwechselspannung.
In der Praxis kommen damit alle Telefone gut zurecht, da sie für den Betrieb an langen Anschlussleitungen ausgelegt sind.

Einbau des MFV Konverters:
Die Wählscheibe ist immer mit vier Adern mit dem Grundgerät verbunden.
Zwei Adern kommen vom nsa Kontakt und zwei weitere Adern kommen von dem kombinierten nsi/nsr Kontakt.
Der nsr Kontakt ist nicht immer vorhanden, oft ist das mechanisch anderweitig gelöst.

Die Anschlüsse des nsi/nsr Kontaktes werden im Telefon gebrückt, da wir ja keine Impulse mehr zur Vermittlungsstelle schicken wollen.
Anstelle des nsa Kontaktes wird die Zusatzschaltung eingebaut.
Die Kontakte nsa und nsi/nsr der Wählscheibe werden mit der Zusatzschaltung verbunden.

Beschreibung des MFV Konverters:

Um Mehrfrequenztöne zu erzeugen, werden meist Spezialchips verwendet.
Heute ist es jedoch möglich, die Töne mittels eines Mikrocontrollers zu erzeugen.
Der Konverter erkennt am Schließen des NSA Kontaktes, dass die Wählscheibe aufgezogen wird.
Solange der NSA kontakt geschlossen ist, werden die über den nsi Kontakt erzeugten Impulse gezählt.
Öffnet der nsa Kontakt, ist die Wahl beendet und ein den gezählten Impulsen entsprechender MFV Ton wird auf die Telefonleitung gesendet.

Die Schaltung des Konverters:

Bauteile ohne Bezeichnung im Schaltplan:
Quarz: 4,9152 MHz, Kondensatoren C3+4: 15pF keramisch, Transistoren: MPSA42

Der Konverter wird aus der Speisespannung des Telefons versorgt.
Da er anstelle des nsa Kontaktes eingebaut wird und damit parallel zum Hörerkreis liegt, soll die Schaltung so wenig Strom verbrauchen wie möglich.
Da man sich auf die Polarität der Anschlussleitung nicht verlassen kann, wird die Schaltung über einen Gleichrichter in das Telefon eingeschleift.
Die Versorgungsspannung wird durch eine einfache Regelschaltung (D1, R1, T1) auf ca. 4,5V begrenzt.
Der Controller funktioniert auch bei geringeren Spannungen, solange die "brown-out" Schwelle nicht unterschritten wird.
Der Kondensator C1 ist mit 1000µF recht großzügig bemessen, da er während ein DTMF Impuls gesendet wird, den Controller mit Strom versorgen muss.
Die Transistoren T2 + T3 senden den Mehrfrequenzton auf die Telefonleitung.
Sollte die Telefonanlage eine sehr geringe Speisespannung liefern, muss unter Umständen der Widerstand R1 verkleinert werden.
Die Transistoren sind unkritisch, es sollte sich jeder NPN Kleinsignaltransistor mit ausreichender Spannungsfestigkeit eignen.

Damit die Töne exakt reproduziert werden, sollte als Taktversorgung ein Quarz vorgesehen werden.
Laut der Beschreibung des Kommandos "Dtmfout" funktioniert jeder Quarz in dem Bereich von 4 - 10 MHz. (Achtung: im Programm mit $crystal= angeben und passendes Fusebit setzen!)
Ich habe einen 4,9152 MHz Quarz benutzt, da er oberhalb der Mindestfrequenz liegt und als Standardquarz gut verfügbar ist.

Leider ist erst später aufgefallen, dass die Routine DTMFOUT scheinbar einen "Bug" hat.
Der Port PB3 bleibt nach dem Senden des DTMF Signals in einem zufälligen Zustand hängen.
Daher wurde der Port mittels des Kondensators C2 Gleichstrommäßig abgekoppelt und aus einem einzelnen Transistor wurde die Darlingtonschaltung aus T2+T3.

--> Programmbeschreibung:
Mit dem Abheben des Hörers wird die Schaltung mit Strom versorgt und das Programm startet.
Durch das Kommando "Power Powerdown" in der Hauptschleife wird der Controller sofort in den "powerdown" Modus versetzt.
Wenn der nsa Kontakt schließt, wird durch einen "pin change" Interrupt der Controller aufgeweckt und das Unterprogramm "Wahl_auswerten" aufgerufen.
Solange der nsa Kontakt geschlossen ist, werden die durch den nsi Kontakt erzeugten Impulse gezählt.
Um die Impulse zuverlässig zu zählen, benutze ich das Kommando "Debounce".
Die Prellzeit habe ich auf 5ms verkürzt.
"Debounce" ruft ein Unterprogramm auf, welches eine Variable bei jedem Aufruf um eins erhöht.
Wenn der nsa Kontakt öffnet, ist die Wahl beendet und der MFV Ton darf gesendet werden.
Der Ton wird für 100ms gesendet, was laut Spezifikation (mindestens 50ms Dauer) von jeder Telefonanlage erkannt werden sollte.
Um Strom zu sparen, wird der Pull-Up Widerstand für den nsi Kontakt erst eingeschaltet, wenn die Wählscheibe aufgezogen wird.
Nach Senden des MFV Tons wird der Controller wieder in den Ruhezustand versetzt.
Die Ports Pinb.2 und Pinb.4 werden aus rein praktischen Gründen (Platinenlayout) als "Masse" für die Kontakte benutzt.

Das Programm kann hier heruntergeladen werden: waehlscheibe-dtmf_V2.bas
Fertig kompiliert: iwv_V2.hex

"Fusebits":
Low: 0xCE
High: 0xDD

Das "Brown-Out" Fusebit habe ich auf die kleinste Spannung von 1,8V gesetzt, damit der Controller beim Absinken der Versorgungsspannung nicht unkontrolliert hängen bleibt.
Der Frequenzteiler wurde abgeschaltet und die Taktquelle auf Quarzbetrieb umgestellt.

Es gibt offenbar viele Interessenten an diesem Projekt, die selbst keine Möglichkeit haben, den Mikrocontroller zu programmieren.
Hier kann ich gerne helfen und anbieten, die passenden Controller zum Selbstkostenpreis (Übernahme der Beschaffungs- und Versandkosten) zu programmieren.
Bei Interesse, bitte einfach via Mail anfragen!

SMD Modul - ersetzt durch PDIP Modul - siehe unten!
Ich wurde immer wieder gefragt, ob ich auch fertig aufgebaute Module anbieten kann.
Die Anfrage musste ich leider oft verneinen, da der manuelle Aufbau doch einen erheblichen Zeitaufwand bedeutet.
Um diesem Wunsch nachzukommen, habe ich eine Leiterplatte zur SMD Bestückung entwickelt, die sich mit geringerem Arbeitsaufwand herstellen lässt.
Den größten Teil des Arbeitsaufwandes nimmt mir jetzt ein Leiterplattenhersteller ab, womit mir "nur" noch das Arbeitspaket der Bestückung und eines Funktionstests verbleibt.
Die Schaltung wurde minimal modifiziert, um das Layout zu optimieren.

Das linke Bild zeigt einen noch selbst geätzten Prototypen, daneben die Module von einem professionellen Leiterplattenfertiger.
Die Abmessungen betragen 30 X 37mm.

Erster Prototyp

Von einer Leiterplattenfabrik hergestellte Platine

Einbau des Moduls im W38

Anschluss einer Wählscheibe mit
AS4 Steckers (z.B. FeTAp 611)
Die Stifte 1+2 werden gebrückt.

Die rechteckigen Pads können aufgebohrt werden, um Schrauben zum Anschluss der Kabelschuhe der W38/48 Telefone aufzunehmen.


Anklicken für die Eagle CAD Daten!

Die geänderte Schaltung:

Zu guter Letzt noch das angepasste Programm:
Quellcode: iwv_V2_SMD.bas
Fertig kompiliert: iwv_V2_SMD.hex

"Fusebits":
Low: 0xCE
High: 0xDD

Hinweis zum Controller ATtiny2313 / ATtiny2313A:
Ein Besucher meiner Homepage hat mich darauf angesprochen, dass sich der Code bei ihm nicht korrekt kompilieren ließe.
Der ATtiny2313A hat ein komplexeres Pin Change Register und erfordert eine Anpassung des Codes.
Beim Übersetzen des Programmes mit Bascom muss daher als Chip der ATtiny2313 (nicht ATtiny2313A) ausgewählt werden!
Der für den ATtiny2313 kompilierte Code läuft dann auch auf einem ATtiny2313A!

Die Stückliste für das SMD Modul:

AnzahlBezeichnungTyp / Wert
1IC1ATtiny2313-20SU Mikrocontroller oder ATtiny2313A-PU (PDIP)
1 Bei PDIP Variante: 20 Pol. IC Fassung GS20 o.ä.
3T1,T2,T3SMBTA42
1B1Silizium-Brückengleichrichter 600V/500mA MBS-SMD
1D1Zenerdiode 5,6 V SOD-80 MiniMELF
1Q1Quarz 4,9152 MHz HC49U-S
1R110 KOhm
1R2100 Ohm
2R3, R447 KOhm
1C11000 µF / 10V Elko
2C2, C3100 nF MLCC
2C5, C615 pF MLCC/NPO

Widerstände: Bauform SMD 0805, Kondensatoren: Bauform SMD 0603

Bei Interesse an einem fertig aufgebauten Modul bitte via Mail Kontakt mit mir aufnehmen!
Als Aufwandsentschädigung verlange ich je Modul 20€ + 2€ Versand.

Bisher erfolgte Änderungen:

  • DC - Abkopplung des Ports PB3.
  • Verbesserung der Software - Einführung des Standby Mode, hierdurch erheblich geringerer Stromverbrauch.
  • Absenken der Taktrate, um den Stromverbrauch weiter zu senken und einen stabilen Betrieb bei geringer Betriebsspannung zu garantieren.
  • Entwicklung einer Leiterplatte zur Bestückung mit SMD Bauteilen.
  • Alternative Platine aufgrund von Lieferproblemen bei dem Mikrocontroller.
  • Bekannte Probleme:

  • Moderne Telefonanlagen liefern unter Umständen eine zu geringe Spannung und damit einen zu geringen Schleifenstrom.
    Damit reicht die Versorgungsspannung nicht mehr, um das Modul zuverlässig zu betreiben.
  • Mögliche Abhilfe: Man fügt vor dem Hörerkreis einen Widerstand von ca. 100 Ohm ein, damit die Spannung an dem Konverter etwas steigt.
    Der Widerstand kann auch in die Zuleitung der Sprechkapsel (Mikrofon) eingefügt werden.
    Wichtig: auch die Sprechkapsel prüfen! Eine Sprechkapsel mit verbackenen Kohlekörnern kann niederohmig geworden sein!

    Wichtiger Hinweis:
    Ich habe festgestellt, dass das Programm nicht sauber läuft, wenn es mit der aktuellen (Kauf) Version von Bascom kompiliert wird!
    Mit der Demo - Version 2.0.7.5 funktioniert es tadellos!
    Daher im Zweifel bitte die .hex Files herunterladen.
    Das Fehlerbild äußert sich so, dass der Controller einen Dauerton sendet, sobald er aus dem Standby erwacht.

    Update: Ein Besucher meiner Homepage hat mich darauf hingewiesen, dass das Problem durch Neukompilieren der mcs.lib behoben werden kann!
    Ich habe es selbst noch nicht getestet, aber offenbar ist der Bug inzwischen bekannt.

     

    Update 03.2023: Umstellung auf PDIP Controller!
    Aufgrund der anhaltenden Chipkriese ist der ATtiny2313 Mikrocontroller derzeit schwierig in der SMD Variante beschaffbar.
    Da das Modul immer noch nachgefragt wird, habe ich eine alternative Platine entworfen, welche die noch gut beschaffbare DIP Version des ATtiny2313 aufnimmt.
    Die neue Platine ist mit 37 X 37mm etwas größer geworden.
    Elektrisch ist das Modul völlig identisch!
    Da das Modul kaum größer gegenüber der SMD Variante ist, bestelle ich nur noch dieses Platinenformat.
    Weiterhin sind durch den steckbaren Controller eventuelle Softwareupdates einfacher möglich.


    Anklicken für die Eagle CAD Daten!

     

    Noch der übliche Hinweis:
    Der Nachbau der Schaltung geschieht auf eigenes Risiko!
    Ich hafte nicht für Schäden die durch das Gerät verursacht werden!

     

     

    Zuletzt aktualisiert: 05/2023
    © klaus(at)taeubl.de

    Hinweis: Ich beantworte grundsätzlich alle Anfragen via E-Mail innerhalb weniger Tage!
    Die Antwort kommt von einer hier nicht genannten @t-online.de Adresse.
    Prüfen Sie also auch den Spam Ordner, wenn Sie keine Antwort erhalten haben sollten!