Crossover weird gain variations
Hi There! How are you?
I'm developing a project with ADAU1701 and I'm using BrettG's formulas to calculate the cross-overs. They're described here:
http://ez.analog.com/servlet/JiveServlet/download/1819-2-6143/FilterMathCalculations.pdf
Well, everything is working fine, except that I get a strange gain variation as the Xover frequency moves up and down (but the Xover is centered correctly).
Here's the test I made: Sampling at 48Khz, I injected the DSP with a 50Hz signal to test Low-Pass Xovers. In bypass, it outputs 100mV rms. Using a Xover, it changes the gain as the frequency is altered. In my test I stated that all frequencies are boosted or attenuated from the Xover point and bellow, so for example, if my Low-Pass Xover is set at 12Khz, doesn't matter if I'm injecting 50Hz, 200Hz, 4Khz or some other frequency lower than 12Khz. They're all boosted or attenuated the same.
The gain alterations seem to be pretty linear. For Xovers that use 2nd order biquads, its very linear and has the maximum boost at 1/2 Nyquist frequency, which is 12Khz. Xovers that use 1st or "higher order" biquads behave differently. It is all nicely ploted and measured on the attached PDF.
Any help is greatly appreciated!
Best wishes,
Fernando
Audio Signal Processors
SigmaDSP Audio Processors
adau1701
Hi Fernando,
Those graphs in your PDF are quite meticulous as you said! I've been trying to reproduce the shifting-gain issue with a 24dB L-R low-pass filter (four cascaded Butterworths). I made a spreadsheet to calculate the coefficients, then copied them into three filter banks -- a double-precision 12000 Hz, a double-precision 300 Hz, and a single-precision 300Hz, as shown below:
Fullscreen
be754f52e9a7cd24d739c72a88a04b9d.html
Download
<html><head><title>Jive SBS</title></head>
<body><font face="arial,helvetica,sans-serif">
<b>Error</b><br><font size="-1">
An general error occurred while processing your request.
</font></font></body></html>
All three filters simulate identically. When run on the hardware, pushing the mux buttons shows no change on the real-time display -- I can't see any gain variation between them. Unfortunately, this result doesn't tell us what's wrong. I attached the project and the spreadsheet so you can compare coefficients, etc. in case that proves helpful. Anyway it was fun to play with since I was unfamiliar with Linkwitz-Riley filters till now.
Bob
Hi Bob, how are you?
Thanks a lot for all you provided! I will compare everything and try to narrow down more the problem. I'll get back to you ASAP.
So much trouble for so little reason...
That was just that I forgot to divide B1, B2 and B0 by A0! I found it quickly because of your spreadsheet Bob, thanks a lot!
This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.
Thank you,
EZ Admin
Please log in to reply.