## Frequency Response

As I said in the previous post, I want my filters to perform in the same way as the MSGEQ7. The frequency response of this chip is given in it’s datasheet.

From the datasheet I can see that, to replicate this response, I will need 7 bandpass filters at 63Hz, 160Hz, 400Hz, 1kHz, 2.5kHz, 6.25kHz and 16kHz. Each filter will need a quality factor of 6 (this basically sets the bandwidth of the filter).

To create these band pass filters I will use a Multiple-Feedback Bandpass filter circuit.

To help me choose component values for my filters I used an online calculator. This resulted in the following values.

Frequency | R1 | R2 | R3 | C1 | C2 |
---|---|---|---|---|---|

63Hz |
4.7kΩ | 1.1kΩ | 150kΩ | 0.33uF | 0.15uF |

160Hz |
6.2kΩ | 1.3kΩ | 180kΩ | 0.1uF | 0.047uF |

400Hz |
5.1kΩ | 1.2kΩ | 160kΩ | 0.047uF | 0.022uF |

1kHz |
4.3kΩ | 1.2kΩ | 180kΩ | 0.022uF | 0.0068uF |

2.5kHz |
5.6kΩ | 1.3kΩ | 180kΩ | 0.0068uF | 0.0033uF |

6.25kHz |
4.7kΩ | 1.1kΩ | 150kΩ | 0.0033uF | 0.0015uF |

16kHz |
6.2kΩ | 1.3kΩ | 180kΩ | 0.001uF | 470pF |

However, I’m not going to trust the calculator without validating the design. The first thing I need to do is calculate the frequency response of an arbitrary Multiple-Feedback Bandpass filter.

Using Matlab I simulated the frequency response of the 63Hz filter using the equation I derived above:

I then created the circuit in LTSpice and simulated the frequency response of the filter directly:

As you can see, the two frequency responses are the same and so I am happy that my equation accurately describes the frequency response of the real circuit.

Using Matlab, I simulated the 7 circuits simultaneously using the transfer function I derived.

This matches well with the frequency response of the MSGEQ7 shown above and so I am happy with this set of filters.

## Input Impedance

I also need to know what the input impedance of each filter is so that I can verify that when I put 7 of the filters in parallel, the input impedance will be significantly greater than the output impedance of my amplifier stage.

Using Matlab I simulated the input impedance of the 63Hz filter using the equation I derived above:

I then used my LTSpice model to simulate the input impedance of the filter directly:

As you can see, the two input impedances are the same and so I am happy that my equation accurately describes the input impedance of the real circuit.

I then simulated the input impedance of all 7 filters at once:

This plot shows that the lowest parallel impedance is about 677Ω and occurs at about 6.5kHz. This is a couple of orders of magnitude greater than that of my amplifier stage which I expect to be in the single digits.

## Summary

This validation has shown that the frequency response of the filters is correct and that the input impedance of all 7 filters in parallel is sufficiently high. Therefore I am happy with this design.