element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Community Hub
Community Hub
Member's Forum Does anyone know of a good circuit design to demonstrate echo on voice communications?
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Leaderboard
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Community Hub to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Suggested Answer
  • Replies 22 replies
  • Answers 1 answer
  • Subscribers 531 subscribers
  • Views 2767 views
  • Users 0 members are here
Related

Does anyone know of a good circuit design to demonstrate echo on voice communications?

rad_bcit
rad_bcit over 2 years ago

Many years ago, one of the things that attracted me into taking telecommunications training was a demo illustrating the effects of echo on a person’s ability to communicate over a telephone.

The user picked up a plain old telephone handset and attempted to speak and, as with most telephones, as portion of the voice signal from the transmitter/mouthpiece was echoed back as “sidetone” via the receiver/earpiece. At some settings of the device, I found it very difficult to speak because of the echo.

A snippet from https://getvoip.com/blog/phone-echoing/ (Rebecca Drew) explains the effect I experienced:

Echoing interferes with our understanding of another person’s voice in a phone call, and it confuses a person who is speaking because they hear themselves on the line. The problem is the delay between the spoken word in the outbound call stream and its reflection in the return stream. …

If the delay is less than 25 milliseconds, it’s almost undetectable. If the delay is around 55 milliseconds, the user experience is similar to having 2 people saying the same thing at the same time (a chorus-like effect). This level of echo or delay, though noticeable, is tolerable.

Once a delay increases beyond 55 milliseconds it becomes very annoying and distracting to users. At this point, it becomes nearly impossible to carry on a conversation. For a normal user, the echo of their own voice will essentially break down the call by interrupting their thought process.

My hope is that I can reproduce this fascinating demo for use in student recruiting events.

Does anyone have any ideas, circuit diagrams, or resources that would help me get this done?

I don’t have a large budget, but I have access to many tools and electronics components to get this done from scratch. However, I also think a black box modifying a prebuilt device such as a musician’s effects pedal such as the MXR Carbon Copy, would do the job, making more efficient use of the limited amount of time I have available.

  • Sign in to reply
  • Cancel

Top Replies

  • beacon_dave
    beacon_dave over 2 years ago +2
    You just need a microphone, an audio delay and some headphones. You can get the same effect with in ear monitors if the delay from your microphone through the mixer back to the in ear monitors goes beyond…
  • rad_bcit
    rad_bcit over 2 years ago in reply to beacon_dave +2
    Thanks for the reply, beacon_dave. Your suggestion of video has given me another idea. Perhaps I could show the same video image on multiple systems, each displaying a different amount of pixelation…
  • shabaz
    shabaz over 2 years ago in reply to rad_bcit +2
    Great! If you get stuck feel free to ask, I'm sure eventually one of us will figure it out. It's definitely an interesting topic. I recall talking to an ex audio-engineer once, he mentioned that in…
  • beacon_dave
    0 beacon_dave over 2 years ago

    You just need a microphone, an audio delay and some headphones. 

    You can get the same effect with in ear monitors if the delay from your microphone through the mixer back to the in ear monitors goes beyond a few milliseconds.

    Being able to adjust the delay allows you to fine tune it to the point where it becomes impossible to speak.

    Another way you can experience it is using a video camera - if the microphone goes through the camera, the latency in the camera video processing results in an audio delay coming back out of the camera. If you are monitoring the audio from the delayed camera output whilst speaking into the microphone, you can experience it. It will be a fixed delay though.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • rad_bcit
    0 rad_bcit over 2 years ago in reply to beacon_dave

    Thanks for the reply, beacon_dave.

    Your suggestion of video has given me another idea. Perhaps I could show the same video image on multiple systems, each displaying a different amount of pixelation, due to differing amount of bandwidth on the communications paths.

    My ultimate goal is to have something eye-catching that would attract interest to our display booth.

    However, as an old-timer myself, I would first like to do this with a POTS telephone like this desk phone I have (trademarked as a "Monophone" made in Brockville, Ontario by Phillips Electrical Works, a division of Automatic Electric). I would clean it up first! 

    image

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • robogary
    0 robogary over 2 years ago

    The PT2399 is what you are looking for. They are a ton of fun, audio reverb, echo, etc... I built a PT2399 project for taking to STEM nights at elementary schools. It uses an electret mike hot glued into a PVC pipe for a microphone. The kids can spit, drip, lick, sneeze, whatever, and it costs a few cents to toss it, and use a new one. Tied in with a LM386 , the kids love to shout "HELP!!!!" in it like they are lost in a cave. Use a pot, or several pots to vary the output.

    https://www.futurlec.com/Others/PT2399.shtml

    I've also used them with a HT8950 for a robot voice modulator  www.sparkfun.com/.../10574

    Google the PT2399, you'll find a ton more projects done with them.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • shabaz
    0 shabaz over 2 years ago

    Matlab would be quite good. If this is a college, they may already have a license, otherwise there may be a demo license (I've not checked). The "home user" license is OK-ish priced.

    With that, people could talk into the PC microphone, and then apply different amounts of echo (there are examples on the Internet), and then play the result, or see it graphically, e.g. here the orange is the original signal, and green is the signal with the echo:

    image

    There may be fancier 3D plots that might look interesting too.

    If I were a student, it would encourage me to want to know more.

    Otherwise, if you wish to do it with more hardware, then a DSP board would be useful (then it can be done in real-time too). There's a simple one here, which is pretty cheap, and uses a ready-made module so there's no complex soldering either: 

     Wave Miner: A Pi-controlled Digital Signal Processor 

     Wave Miner: 10 Experiments with a Pi Digital Signal Processor (DSP) 

    With that DSP board, it is possible to plug in a speaker and any audio source (Line input) and listen in real-time. However, it's quicker to just go the Matlab route.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • shabaz
    0 shabaz over 2 years ago in reply to shabaz

    These are the steps to do an echo with Matlab:

    1. Download the echo_gen.m file and save it to the Matlab working directory. This is not my file, I found it on the web. Can't recall where.

    2. Type the following into the Matlab command line, to record from the mic:

    sound_obj = audiorecorder(44100,16,1);

    record(sound_obj)

    stop(sound_obj)

    3. Type the following to perform the echo. You can change the delay parameter to a different amount:

    samples=getaudiodata(sound_obj);

    delay=0.1;

    gain=1.0;

    echosamples = echo_gen(samples, 44100, delay, gain);

    4. Type the following to play the result:

    sound(echosamples, 44100);

    5. If you want to stop the playback, type:

    clear sound;

    6. If you want to draw a chart, type:

    plot(echosamples);

    hold on;

    plot(samples);

    image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • rad_bcit
    0 rad_bcit over 2 years ago in reply to shabaz

    Thanks, shabaz!

    I do have access to Matlab and will try this out. We don't teach the use of Matlab in our program since we cover hands-on technical skills and networking (CCNA, etc.) not engineering, but that shouldn't stop me from using it.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • rad_bcit
    0 rad_bcit over 2 years ago in reply to robogary

    Hi Robogary,

    This is very close to what I'm looking for, except that is is a digital solution, not an analog one. If I decide to go the "black box" route, it unlikely anyone else will know.

    I see that the PT2399 is available on inexpensive boards marketed as karaoke reverberation devices.

    I found a good write-up on the PT2399 on Electrosmash https://www.electrosmash.com/pt2399-analysis

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • shabaz
    0 shabaz over 2 years ago in reply to rad_bcit

    Great! If you get stuck feel free to ask, I'm sure eventually one of us will figure it out.

    It's definitely an interesting topic.

    I recall talking to an ex audio-engineer once, he mentioned that in the past, sound studios would simply cut tape to make their echos and other effects! Some of that early stuff occurred during Beatles era, in studios in London apparently. I know nothing about it though.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • beacon_dave
    0 beacon_dave over 2 years ago in reply to rad_bcit

    About 55 feet of pipe with a transducer at each end would keep it in the analogue domain.

    Or perhaps a magnetic tape delay.

    I think some of the old bucket brigade delay line ICs have been remanufactured.

    You could do POTS to VOIP then back to POTS again as VOIP will add a significant delay. 

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • dougw
    0 dougw over 2 years ago

    You could try Audacity (a free audio processing program) It allows you to specify the echo delay and percentage of echo.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube