2
\$\begingroup\$

I'm using a single board computer to talk on a phone line through two coils, one for the TX part, the other for the RX. The phone line is on another coil and then it's connected to a two-wire circuit that leads to an handset. As you know, the problem with this config is that if you build a full-duplex communication system with VoIP in the middle, you hear the echo from what you just transmitted on the network coming back See this connection scheme

Is there a circuit which is able to reduce or eliminate such echo? Right now I'm using a DSP to implement a simple subtractor (Rx=Rx-Tx), but maybe this common problem has been solved by clever analogue engineers back in the past.

Connection scheme with echo path in red

\$\endgroup\$
3
  • 1
    \$\begingroup\$ Related: What methods can be used to identify and remove echo from an audio system? \$\endgroup\$
    – Kellenjb
    Commented Mar 1, 2012 at 16:34
  • \$\begingroup\$ @Kellenjb thank you! My specific question would be about a circuit which does that "automatically", exploiting the magnetic circuit or something like that. \$\endgroup\$
    – Metiu
    Commented Mar 1, 2012 at 16:39
  • \$\begingroup\$ Yeah, I understand its not a duplicate, just close enough that I figured it was worth linking to. \$\endgroup\$
    – Kellenjb
    Commented Mar 1, 2012 at 16:40

1 Answer 1

6
\$\begingroup\$

The analogue circuit is known as a "two-wire hybrid" and does exactly what you are doing with your DSP. Strictly speaking this is just sidetone elimination rather than echo cancellation which Kellenjb's link addresses. Below is a simple example (which is a discrete replacement for an obsolete Mitel part). This arrangement only works if the load impedance is precisely controlled - in this case 754\$\Omega\$.

enter image description here

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.