Rhythm Wolf Bass Synth VCO and VCF
The VCO is a linear design, with an exponential control voltage (V/Hz), which is a reasonable design decision considering how small of a range the VCO needs to operate over (3.5 octaves - 1:10 ratio of low:high note). This means any drifts "should be" linear, and can be compensated for with a simple tune knob turn. They buffer the PWM signal with a reference voltage, and send it to a mixing stage, which then goes to the OTA for waveform generation. Unfortunately there are a lot of nonlinear drifts in the remaining stages, which can not be accounted for with a simple tune knob. For example, the current into the OTA is not linearly related to the CV, as the OTA input is 2 Vbe off the negative rail, and those Vbes vary with current and temperature. Replacing R65 with a transistor would fix this, but it would also invert the relationship of CV to frequency, and i'm not sure if the RW tuning software could overcome this. The next major issue is the existence of R140. this causes a nonlinear drain on current, which is amplitude dependent, and the amplitude at this point varies with the output buffer Vbe drops. the only reason i can think of for this resistor, is to discharge the cap when the VCO is shut off. The only problem with this is that the Vbe drops in the output buffer make it so that the VCO output is not at zero when this happens (more on this later).
The PWM signal is at 731Hz (a sub-multiple of 48MHz) which is quite low. There is a lot of ripple after the filter. The filter has a 2ms transition time, with a few milliseconds of ripple afterwards. Any portamento happens on the digital side, but a pot and capacitor could be added after the filter to have manual control. In order to get 1cent resolution over a 1:10 ratio of frequencies, 14b resolution is required on the DAC, which means the main PWM clock is probably running at 12MHz, and the low frequency output is just to achieve this level of accuracy. a dual PWM scheme could have gotten the same accuracy with a higher frequency (and the buffer they use is a dual unit already!).
The VCO is a pretty standard dual OTA setup, which could be easily converted to a triangle wave, if so desired (remove R63). This would drop all notes down one octave. For both this and the VCF, the 13600 is an odd choice over the 13700. The 13600 send a copy of the bias current to the output buffer, which helps match the buffer impedance to the OTA output impedance. Unfortunately this makes the buffer input current higher than it could otherwise be. Swapping them out for 13700s would help. i'm a bit confused as to why the buffer was used at all in the VCO, when the signal goes straight to an opamp buffer in the very next stage. The amplitude is set by R64,36. This is +/-2V, which is a fair bit of overdrive for the transistors at the input of the OTAs. This isnt a big deal on the one used as a comparator, but the other one will have leakage currents associated with this, which will effect timing. Putting a resistor between R64 and R36 would fix this, dropping the overdrive to 0.6V. R63 should be removed, as it provides a leakage path for the frequency setting current, and is not required for the reset cycle. Speaking of which, the reset cycle is quite long (100us), which adds to the nonlinearity. There really isnt much that can be done about this, other than going to a different reset format (JFET across the integraction capacitor). The square wave is made with the comparator U2A. PWM could be added here by removing R54 and adding a pot in its place.
One other oddity of the VCO, is that there is a comparator on the VCA envelope, to turn off the VCO when the envelope gets below a certain level. The problem here, is that the VCA is not shut off at the same time, and just continues to amplify the DC voltage the VCO spits out when it shut off. So the output of the VCA has this long DC tail on it, which adds to the noise of the synth. Also, the LM393 could have been tied to -Vcc, and the internal transistor used for this purpose, and Q4,5 and all those resistors could go away.
The tune knob has its bottom leg tied to -Vcc through a resistor. This completely defeats the point of having the reference voltage on the other side of it. Any powersupply drift now ends up in your VCO frequency. That should have been connected to ground.
This really needs exponential control, but other than that, its a pretty straightforward SVF design. Resonance is taken from the final stage, rather than the usual middle stage, and this reduces the low frequency amplitude with resonance, and shifts the cutoff frequency with resonance setting. The gain between the two stages is not identical, which leads to poor SNR as one signal is kept very small so that the other doesn't become too large.
i mostly left this alone, as there is no easy way to fix the major issues with it and not mess up the synth's factory tuning. You can replace R65 with a PNP transistor to make U9B a current source, which would improve the situation, but then you still have the issue of leakage in the darlington buffers, so i decided to not bother with this section. i only removed R59 so the VCO would decay out naturally and not get muted in an awkward way.
This section required a major rework, and the SVF was converted to a more normal layout. This made the gain increase with resonance, and now there is severe VCF overdrive at high resonance settings. To mitigate this, R144 was increased to strike a balance between decent volume at low resonance, and too much distortion at high resonance. The VCA was modded to boost the gain after the VCF to accomodate these fluctations. I originally was going to leave it with the linear cutoff control, but it was really hard to play, so a simple exponential converter was added, which made a world of difference.
- R233 reduced to 330ohms to reduce gain on U20A output.
- R226 changed to 100ohms to reduce lower limit on cutoff frequency.
- U20A polarity reversed to work as exponential controller. R234 removed and the ENV MOD knob directly couple with a 22k resistor to U20A. Cutoff potentiometer reversed.
- U20A disconnected from OTA inputs, and two transistors and a resistor added to make a simple exponential current generator that is contrlled by U20A and feeds the OTAs.
- C9 and C68 changed to 1nF to set the cutoff frequency in the right range.
- R155 and R173 changed to 500ohms and R121 changed to 22k to set the two OTA stages to roughly the same gain, and to have the signals be of an appropriate amplitude at their inputs.
- Resonance pot moved to first stage and second stage directly coupled via R175 which is changed to 47k to set gain.
- 220ohm resistor added at bottom of resonance pot to set max resonance and R174 rerouted to resonance pot and changed to 22k to set min resonance.