# Why doesn't this ring oscillator work in LTspice?

EDIT_1 :

• I replaced 2 capacitors that were 22F instead of 22 μF and updated the images.
• I stopped the simulation at t = 19.5μs as you can see on the image below because it is very slow, uses a lot of storage and the voltages values seem to already point to a problem.

I'm trying to learn how a ring oscillator works by simulating it using LTspice. But the various plots don't seem to be correct. Below are two images showing the schematic and the plots.

I found the original schematic here

Does anyone know what the problem is ?

Thanks

• What is the time constant of a 22Farad capacitor and a 10000 ohm resistor? And how long did you simulate?
– user16324
Dec 16, 2020 at 19:23
• Try changing one of the resistor values slightly to ensure that one of the transistors gets turned on before the others. For example, change R1 to 9.95k. Dec 16, 2020 at 19:25
• You changed the simulation to run for 300 ms, but your chart only shows the first 16 us. What happened for the next 284 us? Dec 16, 2020 at 20:20

The circuit is too symmetrical and does not "run" on a simulator. You have introduced some asymmetry with the base resistors, but this is not enough, as the transistors are well saturated with small tolerances. I changed C1 to 20uF and the circuit started.

• Thank you. It still works with R7(the one directly in parallel with the power source) included. Dec 16, 2020 at 21:09
• @helenp R7 does absolutely nothing since it's across a(n ideal) voltage source. You also have no ground that I can see in your picture. Dec 17, 2020 at 8:22

Inject a pulse into the base of one of the transistors at the start of the simulation.

Oscillators are tricky in simulators because they normally start from noise in the real world. The simulation has no noise.

Just to supplement @Peter_MP's (very good) answer, the difficulty stems from the fact that this circuit ultimately has two solutions. The 1st solution is that it just "sits there" -- all transistors saturated, all capacitors at steady DC level, and nothing happening. A simulator can easily fall into this "solution." The 2nd solution (which is what you are seeking) is the oscillatory behavior. As others have stated, in the "real world" solution#1 is not generally feasible due to noise, but in the "sanitized and simplified" (where all the transistors are really precisely identical, etc.) land of your simulator, the noise is not present, and the solution cannot possibly determine which, if any, of the transistors would be the "first" to do something.