swolevco

swolevco · sources

Buchla 259-style complex waveform generator — the "swole VCO" of the lineup: a primary oscillator and a sine modulator in one module. The primary blends saw → triangle → square via the SYMMETRY control, then passes through a West-Coast wavefolder (FOLD). TIMBRE is audio-rate cross-modulation: the modulator FMs the primary (up to ~±4 semitones of deviation) for the classic Buchla harmonic complexity. Pitch is 1 V/oct (0 V = C4) with tune/fine knobs. Outputs the folded primary, the raw modulator, and a summed mix, plus a mono-video SCOPE output of the primary waveform for cross-domain video patching. Pure Web Audio, modeled after ILLOGIC's structure.

A complex / West-Coast-style dual oscillator: two oscillators in one module that interact to build harmonically rich timbres rather than just stacking simple shapes. A PRIMARY oscillator (crossfaded across saw / triangle / square by Symmetry, then run through a wavefolder) is the main voice; a sine MODULATOR oscillator, tuned either to a Ratio of the primary's pitch or to its own M.Tune / M.Fine, cross-modulates the primary via audio-rate FM (the Timbre amount). Mental model: start from a near-sine, warp the wave with Symmetry, then FOLD it — the folder is the big move on this module, worth about +412% of spectral brightness across its travel, where Timbre's audio-rate FM adds about +23% of colour on top. One caution worth knowing before you patch: RATIO decides the modulator's whole behaviour, and at its default of 1 the M.Tune and M.Fine controls do exactly nothing — the modulator is locked to the primary's pitch. Bring Ratio to 0 to hand the modulator back its own tuning. You can tap the primary alone (OUT), the clean modulator sine alone (MOD OUT), or the two summed together (SUM OUT, which is exactly half of OUT plus MOD OUT), and a mono-video oscilloscope of the primary is available on SCOPE.

the faceplate

swolevcopitchpitchmod_pitchpitchfmaudiotimbrecvsymmetrycvfoldcvratiocvoutaudiomod_outaudiosum_outaudioscopemono-videoaudiocvgatepitch
7 inputs · 4 outputs · 8 params

inputs

idcablewhat it does
pitchpitch1V/oct pitch CV for the PRIMARY oscillator (0V = C4 = 261.626 Hz), summed on top of the Tune / Fine knobs. When Ratio is greater than 0 the modulator tracks this pitch (modulator frequency = primary × Ratio), so a sequencer or keyboard patched here moves both oscillators together.
V/oct pitch CV
mod_pitchpitch1V/oct pitch CV for the MODULATOR oscillator (0V = C4), summed on top of M.Tune / M.Fine. Most useful in free-run mode (Ratio = 0) where the modulator has its own pitch; with Ratio greater than 0 the modulator is largely slaved to the primary and this adds on top of that base.
V/oct pitch CV
fmaudioExternal audio-rate FM into the PRIMARY oscillator: an incoming audio signal is scaled (full-scale ±1 ≈ ±200 Hz of deviation) and summed into the primary's frequency, on top of the internal Timbre FM. Drive it from a VCA or another oscillator for cross-FM beyond the built-in modulator.
audio signal
timbrecvCV that displaces the Timbre control (audio-rate FM amount from the modulator into the primary); an LFO or envelope here opens and closes the FM brightness over time.
control voltage (CV); modulates timbre (additive offset — ±1 CV sweeps the full range, centered on the knob)
symmetrycvCV that displaces the Symmetry control, sliding the saw → triangle → square waveform crossfade of the primary oscillator up or down.
control voltage (CV); modulates symmetry (additive offset — ±1 CV sweeps the full range, centered on the knob)
foldcvCV that displaces the Fold control, modulating how hard the West-Coast wavefolder folds the primary signal — patch an envelope here for evolving fold timbres.
control voltage (CV); modulates fold (additive offset — ±1 CV sweeps the full range, centered on the knob)
ratiocvCV that displaces the Ratio control, sweeping the modulator-to-primary frequency ratio. Pushing it through 0 toggles the modulator between free-run (its own M.Tune / M.Fine pitch) and ratio-locked (a multiple of the primary's pitch).
control voltage (CV); modulates ratio (additive offset — ±1 CV sweeps the full range, centered on the knob)

outputs

idcablewhat it does
outaudioThe PRIMARY oscillator: the symmetry-crossfaded saw/tri/square wave after the wavefolder, including any Timbre / external FM. This is the main voice and the signal the SCOPE traces.
audio signal
mod_outaudioThe MODULATOR oscillator's raw sine output, before it is mixed in — a clean sine tap you can patch anywhere as an independent oscillator (e.g. as an LFO or a second voice) at the modulator's pitch.
audio signal
sum_outaudioThe PRIMARY and MODULATOR summed into one signal (each at half level to leave headroom). With Timbre up this is the cross-modulated mix — the primary already FM'd by the modulator, plus the modulator's own sine on top — for a thicker, two-oscillator blend.
audio signal
scopemono-videoA mono-video oscilloscope trace of the primary signal (OUT), tapped post-fold. Patch a video cable from here into a scope / display module to watch the waveform; it is a video output, not audio.
mono video stream

params

idlabelrangedefaultcurve
tuneTune-36..36st0linear
fineFine-100..100¢0linear
mod_tuneM.Tn-36..36st0linear
mod_fineM.Fn-100..100¢0linear
ratioRatio0..81linear
timbreTbr0..10linear
symmetrySym0..10.5linear
foldFold0..10linear

controls

controlwhat it does
FineFine tuning of the PRIMARY oscillator in cents (-100 to +100, ±1 semitone) for beating / detune against the modulator or other voices.
FoldWest-Coast wavefolder amount on the primary (0 to 1): 0 is no folding; raising it folds the wave back on itself, adding harmonics and that characteristic complex-oscillator brightness/buzz even on a plain triangle.
M.FnFine tuning of the MODULATOR oscillator in cents (±1 semitone), for free-run detune. Like M.Tune, it only takes effect when Ratio = 0.
M.TnCoarse tuning of the MODULATOR oscillator in semitones (±3 octaves). Active when Ratio = 0 (free-run); when Ratio is greater than 0 the modulator follows the primary × Ratio and this is ignored.
RatioModulator-to-primary frequency ratio (0 to 8). At 0 the modulator free-runs at its own M.Tune / M.Fine pitch; above 0 the modulator frequency is the primary's frequency × this value (1 = unison, 2 = octave up, etc.), so it tracks the primary's pitch for harmonically related FM.
SymMorphs the PRIMARY waveform across a three-way crossfade (0 to 1): 0 = saw, 0.5 = triangle, 1 = square, with a linear blend of the two neighboring shapes in between. Default 0.5 (pure triangle).
TbrAudio-rate FM amount: how much the modulator deviates the primary's frequency (0 to 1, where 1 ≈ ±200 Hz at C4). 0 leaves the primary clean; turning it up adds FM sidebands for a bell-like, slightly metallic edge. Measured, it is the GENTLEST of the four timbre controls, not the biggest: a full 0→1 sweep moves the spectral centroid by about +23% (637 → 786 Hz), where Fold moves it by +412% over the same travel. ±200 Hz on a 261.6 Hz carrier is a modulation index of about 0.76 — modest by design. Reach for Fold when you want the dramatic move and Timbre when you want to colour it. Note also that Timbre makes SUM OUT about 4 dB quieter (−8.4 → −12.5 dB) while leaving OUT's level alone, because the FM'd primary and the modulator sine partially cancel in the sum.
TuneCoarse tuning of the PRIMARY oscillator in semitones (-36 to +36, i.e. ±3 octaves) relative to C4; combines with Fine and any pitch CV to set the base pitch.

source

swolevco.ts on GitHub.

Generated from packages/web/src/lib/{audio,video}/module-registry.ts · repo