Close

Garner oscillator

ken-yapKen Yap wrote 01/30/2019 at 05:14 • 4 min read • Like

The Garner oscillator is a simple oscillator generating digital ready output that requires only a complementary pair of transistors and a few other components. It features:

  1. Very sharp edges.
  2. High fan out.
  3. Very low duty cycle.
  4. Frequency depends on a RC pair.

It was first invented by Lou Garner in or before 1960 when germanium transistors were current. The original circuit relies on germanium transistor leakage. It works reliably with silicon transistors with R2 added. Various people have rediscovered it over the years. Michael Covington experimented with it at length in 2005. gusshh did a take on it in 2011. And in the same year there was a discussion thread on with a good description of the mechanics. I'm sure there are other pages on the Internet that I can't find simply because it has not been named as Garner Oscillator. I've decided to collect the information and present it here.

Here is a blow by blow description of a cycle.

  1. Initially both Q1 and Q2 are off.
  2. C charges via R2 and R3 until Q1 base reaches about 0.6V below the positive rail.
  3. Q1 turns on and the current through R1 turns on Q2.
  4. The current through C turns on Q1 hard which also turns on Q2 hard. Q2 collector drops to nearly the ground rail.
  5. C charges to roughly the supply voltage.  The current through C eventually drops to a level insufficient to maintain transistor conduction and Q1 turns off, which also turns off Q2. Q2 collector rises to the positive rail.
  6. The voltage at Q1 base rises to roughly twice the supply voltage, and the base-emitter junction is reverse biased. C discharges through R2 until the voltage drops to 0.6V below the positive rail, and the cycle repeats at step 3.

It can be seen that the waveform at Q2 collector is at the positive rail nearly all the time, except for sharp spikes to the ground rail during steps 4 and 5.

A simulation with the Falstad online circuit simulator yields these waveforms on two scopes. The upper graph is Q2 collector voltage with spikes toward ground, and the lower graph Q1 base voltage with the exponential discharge of C.

Since the duty cycle is extremely low, the period is determined by the time constant R2*C. To a first approximation f = 1/(R2*C). A better approximation is f = 1.2/(R2*C). The values used above give a frequency of about 120kHz. The slight irregularity of the spikes is probably due to some spikes partly falling outside the sampling period of the simulator.

Points to note

Here is the input file for the Falstad simulator. Cut and save this text into a file and in Falstad, Open File.

$ 1 1e-8 7.619785657297057 42 5 50
t 880 480 864 480 0 -1 -0.7088525300036439 -0.7269275184984805 100
r 864 496 864 560 0 470
r 1008 528 1008 448 0 470
v 1088 592 1088 464 0 0 40 5 0 0 0.5
w 1008 448 864 448 0
c 912 480 960 480 0 1e-10 3.734489529342965
w 864 560 912 560 0
t 912 560 1008 560 0 1 0.17361019453354598 0.7121931466921004 100
w 928 592 1008 592 0
g 1088 592 1088 608 0
w 864 448 864 464 0
w 1008 528 1008 544 0
r 912 480 912 544 0 47000
w 1008 576 1008 592 0
w 912 544 912 592 0
w 880 480 912 480 0
w 912 592 928 592 0
w 1008 528 960 528 0
w 960 528 960 480 0
w 1008 448 1088 448 0
w 1088 448 1088 464 0
w 1008 592 1088 592 0
o 17 64 0 4099 5 0.1 0 2 17 3
o 15 64 0 4107 20 0.1 1 2 15 3

Personal history

I first encountered this circuit as a kid when I made stylophones. I may have stumbled upon it by accident. The published stylophone design called for a unijunction transistor (UJT). I substituted this circuit. I used a binary divider to square the waveform. It's only recently, convinced that I was certainly not the discoverer, I researched it on the Internet and found that this circuit has a name.

The reason for the UJT oscillator was the high asymmetry of the waveform, this allowed a single resistor capacitor pair to determine the frequency, so that the "keys" on the stylophones could be taps into a resistor chain whose values could be calculated precisely.

Like

Discussions

Yann Guidon / YGDES wrote 02/28/2020 at 20:40 point

Falstad is really unstable...

I modified the circuit very lightly and it won't oscillate :-/

$ 1 1e-8 4.621633621589249 42 5 50
t 896 480 928 480 0 -1 -0.5311524317974365 -0.5975146828408837 100
r 928 496 928 544 0 4700
r 1008 528 1008 448 0 1000
w 1008 448 928 448 0
c 832 480 880 480 0 1e-9 -4.3492036529977955
t 976 560 1008 560 0 1 0.5912437688059099 0.6445254329672305 100
w 928 448 928 464 0
w 1008 528 1008 544 0
r 880 480 880 544 0 47000
w 1008 576 1008 592 0
w 880 480 896 480 0
w 1008 528 960 528 0
w 960 528 960 576 0
w 832 480 832 576 0
g 1008 592 1008 608 0
R 1008 448 1008 416 0 0 40 5 0 0 0.5
w 832 576 960 576 0
w 928 544 928 560 0
w 928 560 976 560 0
w 880 544 880 592 0
w 880 592 1008 592 0
o 11 64 0 4099 5 0.1 0 2 11 3
o 10 64 0 4107 20 0.1 0 2 10 3
o 18 64 0 4230 5 0.1 0 2 18 3

Then I change the capacitor back to 100p and it works !
Seriously Falstad...

  Are you sure? yes | no

Ken Yap wrote 02/28/2020 at 22:10 point

I may have the R2/R1 relationship wrong. Q1 has to come out of conduction when C is charged. I have modified the circuit and the condition in the write-up. Only change is to R1.

Also try shorter interval for the simulation. I suspect Falstad is one of those compute state at the next time step simulators and if the interval is not short enough, it misses the spike.

  Are you sure? yes | no

Yann Guidon / YGDES wrote 02/25/2020 at 01:08 point

I've played a bit with this and it's a very interesting circuit :-)
However it hits hard at Falstad's limitations and for no reason it would stop oscillating...

I've encountered curious behaviours like that for other circuits.

  Are you sure? yes | no