I was doing pretty well with analog filters, but I can't seem to get similar results with digital filters.
M = readtable('dB Technologies T4 PS1.xlsx','Sheet','TF');
Fs = 96e3;
N1 = 2;
G = -5;
Wo = 100/(Fs/2);
BW = 4000/(Fs/2);
[b,a] = designParamEQ(N1,G,Wo,BW);
w = M.Frequency_Hz;
h = freqz(b,a,w);
magdB = mag2db(abs(h));
That didn't work, so I tried create a biquad filter from the parametric filter.
BQ = dsp.BiquadFilter('SOSMatrix',[b.',[1,a.']]);
h = freqz(BQ);
That didn't work either. I thought maybe it had something to do with my frequency needing to be converted to radians per sample...
wRad = w*((2*pi)/(Fs/2));
But that didn't work either. What am I missing here?
By the way, I was able to visualize the BQ filter with fvtool, so I could see it was working. I just have been able to get a magnitude response form it.