This (relatively) simple oscillator outputs a triangle wave with a 1V/octave control voltage (that is, a 2V input produces a signal with twice the frequency of a 1V input). It's my first analog design, so feedback and comments are very welcome!
A basic functional overview:
- U1A scales the input voltage from 1V/octave to 20mV/octave, and the trimmable voltage divider finishes scaling to the ~17mV/octave to drive the exponential converter.
- U1B, Q4, and Q5 are an exponential voltage to current converter. This arrangement cancels out most of the temperature dependency in the relationship between Vbe and Ic of a single BJT.
- Q1, Q2, and Q3 along with Q6 and Q7 form a pair of current mirrors which can charge or discharge C1 with the same magnitude current as output by the converter
- The diode bridge allows C1 to either charge via Q3 or discharge via Q7, depending on the output of the schmitt trigger made with U2A
- U2B just buffers the voltage from C1. Its output is also the output of the oscillator.
The triangle output is slightly lopsided - the rise time is about 1.25 the fall time. I suspect that this is due to the totally unmatched jellybean transistors I used to breadboard this causing the current mirrors to be imperfect. I have a few THAT corp matched transistor arrays, and I intend to re-breadboard the circuit using those to see what happens.
It maxes out at about 7kHz, and I imagine goes pretty flat some time before that (I haven't done a full tuning test yet). I'm unsure what's causing that. I'm going to try experimenting with some other schmitt trigger designs to see if that helps. It's also possible I'm saturating the exponential converter, and will either need to tweak the resistors in that, or just use a smaller cap to increase the top end. It's stable well below audio frequencies right now, so a smaller cap would be feasible.
Once I've dealt with those issues, there are still several more modules I need to design and build to turn this into a practical synthesizer. It's already pretty awesome to twiddle the control voltage knob and hear the frequency sweep, though!