# Wrong frequency from a phase shift oscillator

I found the enclosed circuit on the internet. There were plenty more like it so I would have thought it should work.

The output is supposed to be a good sine wave at $$\\frac{1}{2.6 RC} = \small 38\mathrm{\ kHz}\$$.

What I get is nothing like a sine wave, at 2 MHz.

What could be wrong?

Relatedly, the NE5532 seemed to be getting a little warm. The circuit was consuming 25 mA. I already had 2- and 2+ joined, so I connected them to the virtual ground. Now the circuit consumes 50 mA, and the 5532 seems warmer.

• your virtual ground impedance is too high - put some bulk capacitance across the lower 10k resistor. Sep 12 at 11:21
• A significant number of circuits on the internet probably don't work. Sep 12 at 11:28
• Shouldn't that oscillate around 4.5v? Sep 12 at 11:38
• What is opamp B doing? Nothing? If it's unused, you could use it as a buffer for the virtual ground. Sep 12 at 13:23
• As is, the circuit is "working" ... (~20 kHz), but nowhere sinusoidal, de facto square waves ... With capacitor at "center" point (1 uF), no working. EE&O Sep 12 at 13:35

It looks like you have an unused opamp and are connecting the inputs together to try to stabilize it. Connecting the inputs is not the way to do it. Have a look at this document from TI.

You can use the second opamp to make a buffered virtual ground.

I ran this through LTspice and it oscillated slightly above 30 kHz.

• ....as it should! Ok, thanks a lot. I'll make that and see what happens. It should work. I'm fully confident! Sep 12 at 15:35
• By the way, would you mind running the original circuit through LTspice, just out of interest? Sep 12 at 21:01

An alternative amendment to the circuit is to leave the op-amp's non-inverting input connected to the junction between the two 10k resistors and just reconnect the bottom of all 3 capacitors to 0 V. If its reluctant to start oscillating then you could try increasing the gain a little by reducing that 56k resistor a bit.

The theoretical oscillation frequency for the low pass version is fosc = sqrt(6)/(2.pi*RC) = about 39 kHz.

The actual oscillation frequency will be a little way from 39 kHz because of the lagging phase shift across the op-amp. The oscillation frequency will shift slightly away from 39 kHz in search of the frequency where the loop phase is -360 degrees. If the lag across the op-amp is, let's say, -200 degrees (inversion - 20 degrees) then the oscillation frequency will shift to a frequency where the lag across the three RC networks is -160 degrees.

With the low pass version you can increase the op-amp's gain enough to drive the op-amp into saturation without the spiking problem associated with the high pass version. Driving the op-amp's output into saturation reduces the loop gain to unity and now the Barkhausen Criteria for oscillation have been met (loop gain of 1 and loop phase of -360 degrees).

Take the waveform from the output of the phase shift network and buffer or amplify as necessary with a high impedance input non-inverting amplifier. The output at this point should be a nice low distortion sine-wave as the harmonics from the op-amp's saturated output will have been filtered out by the 3 cascaded low pass filters of the phase shift network.