WTVCO
An 8-bit wavetable voltage-controlled oscillator. The CV inputs are assignable. Digital inputs 1 & 2 shift the pitch range down and up by octave steps.
The visualizer shows the selected waveform. A, B, and C are the source waveforms and ~ is the output wave. Use the encoder to choose new source waves, or navigate to the parameter adjustment and mapping pages by pressing with ~ selected.
As the core feature of the applet, CV modulation of the Blend parameter will change the shape of the output waveform. When Blend CV = 0V, the output will resemble waveform A, at +2.5V it will resemble waveform B, and at +5V, waveform C. Any CV in between will produce a proportional interpolation of the corresponding pair of source waves. Voltages beyond +5 and below 0 will result in “inverted-interpolation-overflow-wavefolding,” which is rad. Try it!
I/O:
1/3 | 2/4 | |
---|---|---|
TRIG | Oct-Shift Down | Oct-Shift Up |
CV INs | Assignable (Pitch) | Assignable (Blend) |
OUTs | Interpolated Waveform 1 | Interpolated Waveform 2 (Reversable) |
Parameters:
- Pitch - controls output frequency.
- Encoder adjusts base pitch in semitone increments.
- CV input modulates pitch offset using V/Oct standard (CV1 controls Output1, CV2 controls Output2). CV1 is set to Pitch offset by default.
- Full frequency range is from 8000ish to 0.0101 Hz. Responds well to audio-rate FM.
- Works great as a funky LFO (can wobble with a period as slow 99 seconds, before CV offset).
- Toward the high end of the frequency range there are some interesting artifacts and aliasing effects.
- Blend - morphs output waveform proportionally between a pair of selected source waveforms (A/B or B/C).
- Blend can be adjusted by encoder, or CV input modulation. CV2 is set to Blend by default.
- The Output Visualizer displays blended wave shape. A, B, and C visualizers show the respective source waves.
- Volume - regular ordinary volume attenuation, [0-100%].
- Controls volume of both outputs.
- SqDuty - controls the width of the pulse wave.
- 127 = 50% (square).
- SR.Div - sample rate division.
- Tells the phase accumulator how many controller cycles to wait before updating.
- Decreases the pitch in “sub-harmonic” intervals.
- Also produces some very nice downsample distortion at higher values.
- Sequence this parameter for interesting results!
Outputs:
- Output 1 - Osc1 Interpolated Waveform: Does everything a normal VCO does, and looks cool doing it.
- Output 2 - Osc2 Interpolated Waveform: A second voice with the same shape as Output 1’s waveform,
- Independent Pitch control, assignable to CV2 input.
- Aux Button can be used to toggle the waveform between Forward and Reverse mode, quite useful when used as an LFO.
Aux Button Functions:
- Oscillator Select - while the Pitch parameter is selected in the Params menu, toggles between Pitch1 and Pitch2.
- Osc2 Reverse - while the Blend parameter is selected in the Params menu, toggles between Forward and Reverse wave output.
- ! will be dispalyed in Reverse mode.
- Noise Freeze - while the Noise wave is displayed in the waveform selection menu, toggles between “realtime” and “frozen” noise buffer.
- Random-Step Re-Roll - while the RandStp wave is displayed in the waveform selection menu, instantly re-randomizes the step heights.
- The steps are randomized each time the waveform is re-selected, but this shortcut prevents extra encoder movements.
Credits:
Authored by beau.seidon, with lots of good advice from qiemem and djphazer.
Inspired by Professor Bruce Land of Cornell University, and particularly Lab 3 (Audio Synthesis) from his “AVR microcontroller lectures 2012” YouTube series.