MFV Konverter für alte IWF Telefone mit Wählscheibe

Auf https://www-user.tu-chemnitz.de/~heha/basteln/Haus/Telefon/Impulswahl%E2%86%92DTMF/ ist sehr schön (und viel zu verschlungen und zu kompliziert) beschrieben, wie man alte „Impuls-Wahl“- Telefone (das sind die mit den Wählscheiben) mit einer kleinen Microcontroller- Platine dazu bringen kann, die auf der Wählscheibe gedrehte Nummer als Ton auszugeben, weil moderne Router- Telefonanlagen das alte Impuls- Verfahren (IWF) nicht mehr beherrschen und nur noch auf das moderne Mehrfrequenz-Verfahren (MFV / DTMF) reagieren.

Ich habe mal versucht, aus der Original-Webseite ein Kockrezept zu basteln:

Software

Ich habe aus der Variantenvielfalt die Variante mfv2b gewählt und die Sourcen runtergeladen.

Dann per

sudo apt-get install avr-libc gcc-avr

den passenden Compiler installiert und das Makefile für den Arduino- Flasher angepasst, um so Binary und den Flash- Prozeß erzeugen können.

Flashen

Zum Flashen mußte ich mir erstmal einen Arduino Uno besorgen. Auf den Arduino obendrauf kommt dann die Flashplatine für den ATTiny25 bzw.85

https://www.frag-duino.de/index.php/maker-faq/37-atmel-attiny-85-mit-arduino-arduinoisp-flashen-und-programmieren

Anstelle mir eine Platine zu ätzen, habe ich statt dessen mit dem öffentlich viel zu unterschätzten Programm BlackBoard ein Layout für eine Lochstreifenplatine gebastelt

und mir die dann gelötet.

Dann die notwendigen Treiber installieren. Hier die Anleitung nochmal als Kopie vom Original:

Die Installation für den ATtiny-Support ist denkbar einfach. Wir müssen lediglich eine neue Bezugsquelle in unserer Arduino-IDE aufnehmen und diese dann mit dem integrierten Boardverwalter aufrufen und die benötigten Treiber installieren lassen und in wenigen Minuten steht uns die ATtiny-Serie zur Verfügung.

Hier die genauen Schritte im Einzelnen:

Wir starten zuerst unsere Arduino-IDE und gehen in “Datei” → “Voreinstellungen“ .

Dort tragen wir in das markierte Feld die folgende Zeile ein: “https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json” und speichern mit “OK“.

Update: Ab Version 1.8.x könnte es Probleme mit der Installation des obigen Link s geben. Dann verwendet statddessen “http://drazzy.com/package_drazzy.com_index.json”

Wenn alles erfolgreich installiert wurde schließen wir das Fenster des “Boardverwalters” wieder und klicken erneut in der oberen Leiste auf “Werkzeuge” → “Board xxxxx“. Dort finden wir am Ende den Eintrag “ATtiny“.

Jetzt müssen wir nur noch die Takfrequenz 1MHz internal auswählen und dann sind wir auch schon fertig.

Nun wählen wir nur noch den entsprechenden Programmer aus und können im Anschluss unseren Sketch auf den ATtiny laden.

Nachdem der Prozessor nun also funktioniert, kommt

Die Hardware

Auch hier wurde das Originalschaltbild

mit BlackBoard wieder auf als Lochstreifenplatine aufgedröselt

und gleich dreimal gebaut, was bei den Materialpreisen viel einfacher ist als wieder ganz von vorne anzufangen, wenn man noch einen braucht.

Mit ganz viel Prüferei und Kroko- Klemmen bekommt man dann die Schaltung an ein altes Telefon angeschlossen, ohne dies physikalisch umbauten zu müssen (Der Eigentümer möchte es nämlich gerne unversehrt zurück bekommen), um dann endlich zu wissen, dass es funktioniert…

Und hier nochmal die Platine und der Quellcode als Archiv

Probleme mit dem Nummernschalter

Leider zeigte sich, dass die Software nicht wirklich gerne mit Nummernschaltern spielt, die kein astreines Zeitverhalten haben. Im Rahmen der Fehlersuche entstand dann auch einNummernschalter- Prüfprogramm, aber mein aktueller Fall endete dann damit, dass der Konverter nicht mit den Nummernschaltern zurecht kam - eine alte ISDN- Anlage aber schon, die man dann als Wandler zwischen Fritzbox™ und Drehscheibentelefon hängen kann, das geht dann auch…ohne Löten…