Frequent design idea (DI) contributor Nick Cornford recently published a synergistic pair of DIs “A pitch-linear VCO, part 1: Getting it going” (Ref. 1) and “A pitch-linear VCO, part 2: taking it further” (Ref. 2).
The main theme of these articles is design techniques for audio VCOs that have an exponential (a.k.a. linear in pitch) relationship between control voltage and frequency. Great work Nick! I became particularly interested in the topic during a lively discussion (typical of editor Aalyia’s DI kitchen) in the comments section. The debate was about whether such a VCO could be built around the venerable 555 analog timer. Some said nay, others yea. I leaned toward the latter opinion and decided to try to put a schematic where my mouth was. Figure 1 is the result.
![]() |
|
Figure 1. | 555 VCO discharges timing cap C1 completely to the negative rail via a Reset pulse. |
The nay-sayers’ case hinged on a perceived inability of the 555 architecture to completely discharge the timing capacitor, C1 in Figure 1. They seemed to have a good argument because, in its usual mode of operation, the discharge of C1 ends when the trigger input level is crossed. This normally happens at one third of the supply rail differential and one third is a long way from zero! But it turns out the 555, despite being such an old dog, knows a different trick, it involves a very seldom used feature of this ancient chip: the reset pin 4.
The 555 datasheet says a pulse on reset will override trigger and also force discharge of C1. In Figure 1, R3 and C2 provide such a pulse when the OUT pin goes low at the end of the timing cycle. The R3C2 product ensures the pulse is long enough for the 15 Ω RON of the Dsc pin to accurately evacuate C1.
And that’s it. Problem solved as sketched in Figure 2.
![]() |
|
Figure 2. | The VCO waveforms; reset pulses at the end of each timing cycle, and is triggered when VC1 = VCON, to force an adequately complete discharge of C1. |
Figure 3 illustrates the resulting satisfactory log conformity (due mostly to my shameless theft of Nick’s clever resistor ratios) of the resulting 555. VCO, showing good exponential (linear in pitch) behavior over the desired two octaves of 250 to 1000 Hz.
![]() |
|
Figure 3. | Log plot of the frequency versus control voltage for the two-octave linear-in-pitch VCO. [X axis = VCON volts (inverted), Y axis = Hz / 16 = 250 Hz to 1 kHz]. |
In fact, at the price of an extra resistor, it might be possible to improve linearity enough to pick up another half a volt and half an octave on both ends of the pitch range to span 177 Hz to 1410 Hz. See Figure 4 and Figure 5.
![]() |
|
Figure 4. | R4 sums ~6% of VCON with the C1 timing ramp to get the improvement in linearity shown in Figure 5. |
![]() |
|
Figure 5. | The effect of the R4 modification showing a linearity improvement. [X axis = VCON volts (inverted), Y axis = Hz/16]. |
References
- Cornfor, Nick. "A pitch-linear VCO, part 1: Getting it going."
- Cornford, Nick. "A pitch-linear VCO, part 2: taking it further."