W2AEW Sawtooth Circuit Simulation

I grabbed this simple sawtooth generator circuit from YT W2AEW and simulated in QSpice:
image
Note: R6 isn’t in the original circuit. See below.
I get this:


That’s not the expected sawtooth oscillation…

If I un-jumper R6, I get this:


Here, Vout goes negative. Given that there are no inductive elements, I don’t understand how that’s possible.

FWIW, I’ve tried replaced the BJTs with selections from the “selection guide” and many other variations – too many to list here. But the ideal BJTs should work, right?

What am I missing?

–robert

W2AEW_Sawtooth.qsch (8.5 KB)

U need to choose transistor type in your simulation.

Right click on transistor → selection guide → choose transistor

To remove negative spikes you need to use tighten tolerance. Use:
.options reltol=10u

Best regards
W2AEW_SawtoothV2.qsch (8.7 KB)

1 Like

I believe @ivan1 has already provided the most crucial information to help resolve your issue. Here is some additional information for you

There is a link to build this circuit with part used. Below .qsch is with such devices.
How to Build a Ramp Generator with Transistors

Things I changed and their purposes

  • For a self-oscillation circuit, the initial voltage is sometimes crucial for the circuit to operate. Using UIC skips the operation point calculation, a common practice by many. However, this is not a recommended approach as it initiates the simulation with an incorrect operation point. You could consider using a PWL source or .ic to set V(Bias1) and V(Bias2) to 0 and eliminate the need for UIC.
  • You have separated the .plot command into three text boxes. While there is nothing wrong with this, the plot order in the waveform viewer is determined by the netlist sequence of .plot commands. If you add or move a .plot command, the order in the waveform viewer may change. To maintain the .plot sequence, I use only one text box and use Ctrl-Enter to create new lines. This ensures that the lower line will always be plotted at the top.
  • If you want to quickly measure the generated frequency, here is a .meas example for frequency measurement for your reference.

W2AEW_Sawtooth-2N3906-2N3904.qsch (9.0 KB)

1 Like

Thanks @ivan1 & @KSKelvin. I had indeed tried *3906 & *3904 parts from the selection guide as well as UIC. I had not tried reltol. Apparently, all three are required to get the simple circuit to work so I’d probably never have figured it out. :roll_eyes:

–robert

This circuit is a bit tricky :sweat_smile:… In fact, you can also use .option maxstep=1u to replace .option reltol=10u. Specifying a maxstep can prevent the step size from becoming too large for this self-oscillating circuit.

1 Like

Is it just me, or this circuit is very finicky?

I tried simulating the same circuit myself, but there seems to be limited RC-value combinations that allows the oscillation to occur?