Filter at low frequency having near no effect on adau1701


I've been trying to notch out a frequency in the 40-60 range, specifically 56-63.5 by using a peaking filter and it's giving me unusual results, I think because there's a limit on the bandwidth that's available to the adau1701 for affecting frequencies in the lower range.

Below is a screen shot of what I've done, which is having barely any effect on the signal until I place the Q value to below 0.8.

Where as in EQ APO I can do it like so, with just -3.5db and have a much more pronounced effect, no issues:

Is there any way to work around this?

Setting a Low Q value obviously means that I might as well just turn down the sub manually as it ends up affecting the whole range.

  • 0
    •  Super User 
    on Jun 10, 2021 6:48 PM


          I'm not familiar with the EQ APO thus cannot comment on those results.  Experimenting with a project similar to yours on the ADAU1701, I was able to make a double-precision, Q of 12 filter which simulates as expected.  BTW, the Stimulus-Probe tool has some maddening limitations -- among which is it evaluates its math at an insufficient number of points to resolve the response of a very high-Q filter.

          I tried out  the filter using a movie soundtrack with lots of bass and a good set of cans at my ADAU1701MINIZ board's headphone jack.  Remarkably, switching this filter in and out made virtually no audible difference to my ear.  However, I verified that the filter actually works by choosing the 60 Hz test signal as shown in the schematic below.  This is a SigmaDSP fun feature -- built-in test equipment!  It's even possible to make a rudimentary distortion analyzer in SigmaDSP, but I digress.  Switching the filter in and out demonstrated the desired attenuation, both audibly and at the level meter.

         By the superposition theorem -- if it works with a 60 Hz oscillator, it works with the 60 Hz and surrounding frequency components of any signal.   This may not explain your results, so you may need to dig deeper to find out what's going on.

         Best regards,


  • I'll have to have a look into it again over the weekend. If it's working over there I don't see a reason why it shouldn't be working here too.

  • EQ APO is a program that allows for filters to be applied on windows system globally/to specific sound devices, tt also allows for VSTs to be loaded too.

    So I've tried the doing the same setup as you've shown me and it indeed does work that way, the problem seems to be when it's taking an analog input and then processing it, it just doesn't have the desired effect in that case. I don't know a whole lot on how audio is transformed from digital to analog or vice versa and why that would affect it so.

    Just to be more specific:

    PC Signal generator + PC EQ = OK

    PC Signal Generator + ADAU1701 EQ = Not OK

    Phone Signal Generator + Phone EQ = OK

    Phone + ADAUT1701 = Not OK

    Oh, and I forgot to mention previously that I've got the sampling rate on 96kHz, using the propagate action as well to make sure things are going through. Though, now that I think of it I should check if it's still a problem at 48kHz, I've noticed a few other things here and there don't adjust properly at 96kHz until I either restart sigma studio or hit propagate again.

    Do you have any idea what might be the issue? It's quite late here so I'll have to test it at 48kHz in the morning

  • +1
    •  Super User 
    on Jun 13, 2021 12:39 PM in reply to Mruui


         It's good you mentioned the 96K as it reveals the likely source of the issue you're facing.  Setting a new sample rate in the box atop SigmaStudio's schematic window merely directs the compiler to calculate parameters for time-sensitive blocks like filters, oscillators, and timers for the new sample rate.  A separate setting is needed to have the DSP core actually run at the desired sample rate.  Thus, SigmaStudio designed your filter to run at 96K with the DSP still at 48K.  This slows down everything, so your filter was actually tuned to 30 Hz.  The internal 60 Hz oscillator was also running at 30 Hz -- which is why it appeared to work while testing with external equipment did not.  So the fix is to either change the schematic setting back to 48K, or have the DSP core run at 96K.  96K halves the number of instructions available to your project to about 500, so if your project grows too large you'll need to go back to 48K.

         Each SigmaDSP model had different ways to set the core rate.  The good news is that the ADAU1701 is one of the easiest to change -- no hardware mods, and just one simple setting in your project:

    Also see, How do I change the sample rate.

         Making this one change should have your project humming.

         Best regards,


  • Brilliant, thanks Bob! that fixed everything