# Sine wave generator not working?

Can't get sine wave out of this circuit in Proteus. Can you help me, please? I'm suppose to have sine wave generator with range 1 kHz - 200 kHz. While googling came across the current circuit, but can't get it work. It's showing DC output e.g. straight line without any shape or change. Can you help me?

• Is your circuit from circuit gallery? There is a lot of rubbish out there .Check VCE of Q1 and it should be roughly half of 9V,Its plausible that NFB from R2 kills the osc due to inadequate gain. Dec 20, 2015 at 19:59
• Did not get what you mean? Dec 20, 2015 at 20:25
• You said you want to generate a sine wave from 1 kHz to 200 kHz. Yet I don't see any variable components in the circuit. How will you change the frequency? Dec 21, 2015 at 1:26
• B1+ connects to R1 only, not connected to C5. Dec 21, 2015 at 1:58

Oscillators often need some kind of "kick" to get started. In the real world, this comes from noise, or from the transient when power is first applied. But by default a SPICE style transient simulation will be noise free, and start from an operating point determined by a DC analysis.

One solution is to replace B1 with a transient step source that goes from 0 to 9 V at some time just after t=0 (like t = 1 us, maybe). (A fussier way would be to specify initial conditions for one of the capacitors that aren't equal to the dc operating point condition)

Also, some oscillators take a while to get started. If your oscillator isn't a strong one (I can see how your oscillator works but I don't work on oscillators every day, so I don't know what are the gotchas for this particular circuit) you may need to simulate for a pretty long time (1000's of cycles or more) to see the oscillation start and settle down to a steady state condition.

• Thank you, but can you show me in proteus, please? Dec 20, 2015 at 20:22
• @elgolondrino, sorry I've never used Proteus. But the math behind simulations is the same whichever program you use. Dec 20, 2015 at 20:31
• I got what you meant, but I don't know what kind transient to put in this circuit, that kicks initial stage? Can you suggest any? Dec 20, 2015 at 20:34
• A transient that "goes from 0 to 9 V at some time just after t = 0". Dec 20, 2015 at 20:35
• Can that be 'a lamp'? If yes with what voltage, and amperes? Dec 20, 2015 at 20:40

I suppose you need more gain. Your oscillator with 4 CR blocks needs a gain of app. (-26) to start safely. More than that, you have signal feedback via R2 as well as via the phase shift network - bad design!

My recommendation: Connect R2 directly to the powert rail (requires recalculation of R2 and R3) and use emitter feedback (RE) for bias point stabilization. For the required gain Re should be paralleled with a suitable capacitor Ce.

• Can you post a schematic and a simulation (or a lengthy pencil-and-paper session to prove your point? Dec 22, 2015 at 1:12
• To prove what? I think, in your detailed answer you have shown how the circuit should look like (emitter degeneration; only one ac feedback path).
– LvW
Dec 22, 2015 at 10:29
• Not meaning to be unkind, or rude, but in answer to your question, to prove that you know what you're talking about. You talk the talk and, seemingly, expect everyone else to walk the walk and do the legwork required to prove you right, while you provide nothing but conjecture to support your claim. A simple schematic with component values seems to me to be the least you could do to change your stance from qualitative to quantitative. Dec 22, 2015 at 23:06
• EM fields - do you want me to design the circuit for the questioner? The circuit does not oscillate - and I gave him some hints. Because the RC feedback path looks good there are only two possible error sources which I have mentioned: R2 (Miller effect) and gain. It is well known from phase shift oscillators that 3 RC branches require a gain of at least 29 and 4 RC branches need a gain of at least 26 for a total loop gain of >1. More than that, I have mentioned your circuit which does incoroporate exactly those modifications I consider as necessary. So - should I give the same circuit again?
– LvW
Dec 23, 2015 at 10:32
• I forgot to mention that the required gain values (damping factor of 1/26 and 1/29, respectively) belong to a frequency which causes a phase deviation of -180 deg. Because we have additional -180 deg from the common-emitter stage, this will give the required loop phase of 360 deg (0 deg).
– LvW
Dec 23, 2015 at 15:48

You shouldn't need any kind of outboard "kicker" (except perhaps noise) to get an analog oscillator started. Here's a phase shift oscillator (like yours) which starts with no problems and seems to be stable:

Just as an aside, if you want to be able to vary the output frequency over a wide range and get a cleaner output, you should look into implementing a Wien bridge oscillator.

and here's the LTspice circuit list just in case you want to play with the circuit:

Version 4
SHEET 1 880 680
WIRE 336 -176 -240 -176
WIRE 432 -176 336 -176
WIRE 336 -128 336 -176
WIRE 432 -128 432 -176
WIRE -32 -16 -80 -16
WIRE 432 -16 432 -48
WIRE 432 -16 32 -16
WIRE 432 0 432 -16
WIRE 496 0 432 0
WIRE 432 32 432 0
WIRE -240 64 -240 -176
WIRE -80 80 -80 -16
WIRE -48 80 -80 80
WIRE 64 80 16 80
WIRE 96 80 64 80
WIRE 192 80 160 80
WIRE 224 80 192 80
WIRE 336 80 336 -48
WIRE 336 80 304 80
WIRE 368 80 336 80
WIRE -80 128 -80 80
WIRE 64 128 64 80
WIRE 192 128 192 80
WIRE 336 128 336 80
WIRE 432 144 432 128
WIRE 528 144 432 144
WIRE 432 160 432 144
WIRE 528 160 528 144
WIRE -240 288 -240 144
WIRE -80 288 -80 208
WIRE -80 288 -240 288
WIRE 64 288 64 208
WIRE 64 288 -80 288
WIRE 192 288 192 208
WIRE 192 288 64 288
WIRE 336 288 336 208
WIRE 336 288 192 288
WIRE 432 288 432 240
WIRE 432 288 336 288
WIRE 528 288 528 224
WIRE 528 288 432 288
WIRE -240 336 -240 288
FLAG -240 336 0
FLAG 496 0 OUT
SYMBOL res -64 224 R180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R2
SYMATTR Value 5.6k
SYMBOL npn 368 32 R0
SYMATTR InstName Q1
SYMATTR Value 2N3904
SYMBOL res 448 -32 R180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R4
SYMATTR Value 2k
SYMBOL voltage -240 48 R0
WINDOW 123 0 0 Left 2
WINDOW 39 0 0 Left 2
SYMATTR InstName V2
SYMATTR Value 6
SYMBOL res 352 -32 R180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R5
SYMATTR Value 39k
SYMBOL res 208 224 R180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R6
SYMATTR Value 12k
SYMBOL res 80 224 R180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R3
SYMATTR Value 3.3k
SYMBOL res 416 144 R0
SYMATTR InstName R7
SYMATTR Value 470
SYMBOL cap 512 160 R0
SYMATTR InstName C4
SYMATTR Value 47µ
SYMBOL cap 32 -32 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C1
SYMATTR Value 10n
SYMBOL res 320 64 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R1
SYMATTR Value 3k3
SYMBOL res 352 224 R180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R9
SYMATTR Value 20k
SYMBOL cap 16 64 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C2
SYMATTR Value 10n
SYMBOL cap 160 64 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C3
SYMATTR Value 10n
TEXT -232 320 Left 2 !.tran 0 .1 .01 uic

• Frequently SPICE will not start an oscillator oscillating without some perturbation -- it will find the DC bias point, and if there is no transient, that can be a stable condition in the simulator. In reality, it is an unstable equilibrium for an oscillator, and oscillation will start up, but SPICE doesn't know that. Dec 21, 2015 at 4:15
• Did you miss where noise was specified as the perturbation? Dec 21, 2015 at 4:22
• No, I didn't miss it. I was pointing out that -in general- SPICE needs a perturbation added, while real circuits start with thermal noise. Your picture or schematic doesn't clarify that. Dec 21, 2015 at 16:52
• That's because my circuit doesn't rely on thermal noise to get things going, it relies on the rising edge of the power supply voltage to rise to the point where the amplitude and phase of the circuit's feedback is enough to destabilize the circuit and cause it to oscillate. For a clue, change V2 to PULSE(0 9 0 1) and run a transient simulation. Dec 22, 2015 at 1:00
• @jp314 : My prose should have. Dec 22, 2015 at 1:28