Connecting to the FXS

A project log for Pulse to Tone Converter

Converts pulse dialing of your POTS telephone to DTMF dialing allowing you to use it with your VOIP's FXS-port.

Christoph TackChristoph Tack 02/03/2018 at 20:400 Comments


Issue 1: Startup problem

There's no reset circuitry present on the breadboard.  The BOD is disabled as well.  

No reset controller, problems guaranteed... (blue=VCC, green=RST)

The reset level (in green) follows the power supply voltage (in blue).  Due to the charging of a 470µF capacitor, voltage ramp up is very slow.  Nearly 60ms before full voltage is reached.

An option is to add a reset controller which has a timeout of 100ms.  The reset trigger level should be 2.6V.  This will avoid spurious resets during pulse dialing.  

With a reset controller, the CPU starts up reliably. (blue=VCC, green=RST)

An alternative approach is to use the 2.7V BOD in the attiny85.  


Using the BOD seems to work as reliably as the external reset controller.  Using the BOD saves us four components in the BoM.


The AVR-ISP MkII automatically generates a reset pulse at power up of the MCU.  Be sure to disconnect the programmer during testing.

Issue 2: FXS doesn't recognize DTMF

This problem has two causes:

DTMF signal too weak

Connecting the Philips DECT to the SLIC again showed that the DTMF-signal that this design generates is too weak.  Increasing the resistor between the reference and cathode of the bottom TLV431 to 39K solves this problem.

DTMF timing incorrect

The original idea was to generate a DTMF-digit immediately after a digit has been dialed.  The DECT doesn't work that way.  You form the number first.  After that you "pick up" the horn, which initiates the DTMF-sequence of your formed number.

The pulse-dtmf-converter successfully dialed my cellphone when it was configured in the same way.