I want to make a Sallen & Key 2nd-Order Butterworth highpass filter with a defined gain. Let's say gain is +6 db.

[![enter image description here](https://i.stack.imgur.com/EuwOs.png)](https://i.stack.imgur.com/EuwOs.png)

Then,

R3 = R4 = 1 kOhm

F = 1000 Hz

C = 100 nF

R2 = 2 \* Q / ( 2 \* 3.14 \* F \* C )

Now, I would assume that Q = 1 / ( 3 - A), where A = 1 + R3 / R4.
But this table here doesn't agree.

[![enter image description here](https://i.stack.imgur.com/nrxGm.png)](https://i.stack.imgur.com/nrxGm.png)

What am i missing?
['https://electronics.stackexchange.com/questions/562193', 'https://electronics.stackexchange.com', 'https://electronics.stackexchange.com/users/262542/']
Here's your diagram with some annotations:

[![enter image description here](https://i.stack.imgur.com/t7JQnl.png)](https://i.stack.imgur.com/t7JQnl.png)

(I'm not promising anything about stability here. This is a high pass filter with gain significantly greater than 1. So this is only an idealized analysis, by the numbers. That's all. Not a practical recipe.)

Using [sympy](https://www.sympy.org/en/index.html):

```
eq1 = Eq( va/(1/s/c) + va/r1 + va/(1/s/c), vo/r1 + vb/(1/s/c) + vi/(1/s/c) )
eq2 = Eq( vb/r2 + vb/(1/s/c), va/(1/s/c) )
eq3 = Eq( vc/r4 + vc/r3, vo/r3 )
eq4 = Eq( vo/r3 + vo/r1, va/r1 + vc/r3 + io )
ans = solve( [eq1, eq2, eq3, eq4, Eq( vb, vc )], [io, va, vb, vc, vo] )
simplify( ans[vo]/vi )

    c**2*r1*r2*s**2*(r3 + r4)/(c**2*r1*r2*r4*s**2 + 2*c*r1*r4*s - c*r2*r3*s + r4)

```

Moving that towards the standard high-pass form leads to the following:

$$\begin{align\*}
\omega\_{\_0}&=\frac1{C\sqrt{R\_1\,R\_2}}\\\\
\zeta&=\sqrt{\frac{R\_1}{R\_2}}-\frac12\frac{R\_3}{R\_4}\sqrt{\frac{R\_2}{R\_1}}\\\\
K&=1+\frac{R\_3}{R\_4}\\\\
\mathcal{H}\left(s\right)&=K\frac{s^2}{s^2+2\zeta\,\omega\_{\_0}s+\omega\_{\_0}^{\:\!2}}
\end{align\*}$$

I'll leave the algebraic details for you to find on your own.

Now, you want to make a Butterworth filter. The 2nd order *normalized* (also known as *analytic*) Butterworth constants are: \$s^2 + \sqrt{2} s + 1\$. (This is where \$\omega\_{\_0}=1\$.) So it follows that \$2\zeta=\sqrt{2}\$ or \$\zeta=\frac12\sqrt{2}\$. So you have this new requirement:

$$\sqrt{\frac{R\_1}{R\_2}}-\frac12\frac{R\_3}{R\_4}\sqrt{\frac{R\_2}{R\_1}}=\frac12\sqrt{2}$$

From here, it is advisable to set \$R\_1=\eta\, R\$ and \$R\_2=\frac{R}{\eta}\$ so that \$\omega\_{\_0}=\frac1{R\,C}\$. This gives you some freedom to adjust these two resistor values. Also, given your desired gain of \$A\_v=K=2\$, it follows that \$\frac{R\_3}{R\_4}=1\$ and that:

$$\begin{align\*}
\eta-\frac12\frac1{\eta}&=\frac12\sqrt{2}\\\\
2\eta-\frac1{\eta}&=\sqrt{2}\\\\
\therefore \eta&=\frac14\left(\sqrt{2}+\sqrt{10}\right)\approx 1.14412281
\end{align\*}$$

From here you can compute \$R\_1\$ and \$R\_2\$, given a desired \$R\$ used in setting \$\omega\_{\_0}\$.

Let's say \$\omega\_{\_0}=6283.18531\$ (\$f\_{\_0}=1\:\text{kHz}\$) and that \$C=100\:\text{nF}\$, per your starting condition. Then it follows that \$R\approx 1.592\:\text{k}\Omega\$ and therefore that \$R\_1\approx 1.821\:\text{k}\Omega\$ and \$R\_2\approx 1.391\:\text{k}\Omega\$.

My apologies for all that precision, here. But I'm retaining it so you can compare with the results from this [recommended site to compute filter component values](http://sim.okawa-denshi.jp/en/OPseikiHikeisan.htm).

Using the E96 series of resistors, the above site says:

```
R1 = 1.82kΩ
R2 = 1.4kΩ
R3 = 10kΩ
R4 = 10kΩ
C1 = 0.1uF
C2 = 0.1uF

```

Which is obviously quite close to what I just computed.

Also, feel free to go there and look at the plot, as well.

Again. This is a high pass filter with a voltage gain you've specified as \$A\_v=2\$! Isolated and by itself, I'm not at all suggesting that you try it with a high performance opamp. But computationally, at least, you can see where the numbers come from. (Or, at least, after you do some algebra.)

P.S. You can also choose to set \$R\_1\$ and \$R\_2\$ to the same value. But if so, and if keeping with the Butterworth response, then you will find that the gain is no longer 2. It will have to be less. Something closer to \$3-\sqrt{2}\approx 1.586\$.
From "A handbook of Active Filters", by D.E. Johnson, et al., reference VCVS high-pass filter. This uses tables of coefficients for the various types of filters (butterworth, cheby, elliptic, ...). Warning, C is a coefficient, C1 are the capacitor values.

For 2nd order butterworth coefficients:

```
B = sqrt(2)
C = 1.0

```

Equations:

```
R2 = 4 * C / {[B + sqrt(B^2 + 8 * C * (K + 1)] * w * C1}
R1 = C / {w^2 * C1^2 * R2}
R4 = K * R2 / {K - 1}
R3 = K * R2

```

where:

```
K = gain
w = 2*π*f
C1 = capacitors (arbitrary value, same value for both)

```

R4 & R3 equations are given to optimize DC offset. You can make them any reasonable value if you don't care about DC offset.

Choosing C1 = 100nF:

```
R2 = 1391.77 -> nearest 1% value = 1.40k
R1 = 1821.85 -> nearest 1% value = 1.82k
R3 = R4 = 2783.54 -> nearest 1% value = 2.87k

```

Spice simulation shows this to be very close to what you want. Watch out for your choice of dielectric for C1. Either use plastic or COG dielectrics. If using COG (NPO) dielectric, you may want to make C1 = 10nF. X7R, and other class 2 ceramic dielectrics, will introduce distortion, have a strong temperature dependence, and change value over time.