Board index › Products › Audio Codec Shield

Bypass

4 posts · 6263 views

Bypass

by Vedeja » Fri Jan 11, 2013 09:51 UTC
Is the bypass of the WM8731 to be considered "true", meaning no alteration of the signal happens, when bypassed?
I have done the following, but can still hear a small portion of the effected sound coming through. Secondly, could the bypass mode be altered during execution, rather than just at program initialization?

#define BYPASS 1

Re: Bypass

by guest » Fri Jan 11, 2013 21:15 UTC
the bypass is an analog bypass, but not really a "true bypass". what this means, is that the signal goes through a whole bunch of analog circuitry, which will color it a bit. for example, there is lowpass and highpass filter on the codecshield before the signal even gets into the codec. then the input amplifiers have their own lowpass filter, which should be pretty high up and negligible. then it goes to the lineout amplifier, which also has a lowpass filter, and finally the headphone amp, which will be a bit noisy as its a headphone amp.

be sure to write 0 for your output data while in bypass mode, as the DAC is still summed with the input. you can also disengage the DAC if you dont want to do this.

Re: Bypass

by Vedeja » Sat Jan 12, 2013 18:18 UTC
Thanks for the clarifications, guest. I will try again, but for my project it's obvious I need to build an external bypass circuit. How about my last question, regarding bypassing mid-execution?

Re: Bypass

by guest » Sat Jan 12, 2013 22:22 UTC
in theory, you can alter all the codec states during program execution. i have not done that yet, so im not sure how it would sound, if there would be audible pauses or not. if you look in the header file for the codec library, you will see there is a series of i2c transmissions (wire.send). these are the configuration settings. its just a matter of doing one of those commands over again to change the setting.