tides2

tides2 · modulation · schema v1

Tidal modulator / poly-slope generator (Mutable Instruments Tides 2018 archetype, Émilie Gillet, MIT-licensed). Clean-room TypeScript port of eurorack/tides2 (poly_slope_generator, ramp_generator, ramp_shaper, ramp_extractor). A versatile ramp / LFO / envelope generator with FOUR related outputs whose relationship is set by OUTPUT MODE: GATES (main slope + variant + end-of-attack + end-of-rise pulses), AMP (four amplitude-stepped copies — SHIFT pans a triangular gain window across the four), PHASE (four progressively phase-shifted copies — SHIFT sets the spread), FREQ (four frequency-divided/multiplied copies — SHIFT picks the ratio set from a 21-entry harmonic/subharmonic sequence). RAMP MODE selects AD (one-shot attack-decay), LOOP (free-running oscillator/LFO), or AR (gated attack-release, also follows an external clock). RANGE selects LFO (slow ≈0.03–30 Hz) / AUDIO (≈8 Hz–8 kHz) / TEMPO (external-clock-synced via the ramp extractor). FREQUENCY tracks 1 V/oct; SHAPE morphs the slope wave; SLOPE is the attack-vs-decay pulse width; SMOOTHNESS smooths (below 0.5) or wavefolds (above 0.5). v1 deviations from bit-exactness: the SHAPE morph is a procedural sine→triangle→ramp→expo bank rather than MI's binary lut_wavetable, the ramp extractor is a moving-average period predictor (rhythmic-pattern + constant-PW predictors folded in), and audio-range BLEP anti-aliasing is omitted.

A tidal modulator / poly-slope generator after Mutable Instruments' Tides — at heart a single rising-then-falling ramp whose speed, contour and symmetry you sculpt with five macro knobs, exposed not once but as FOUR related copies on outputs 1–4. It works as an LFO, an envelope, an oscillator, or a clockable ramp depending on three mode switches. RANGE picks the speed band (slow LFO, audio-rate, or external-clock-synced TEMPO). MODE picks how the ramp behaves: AD fires a one-shot rising-then-falling shape on each trigger, LOOP free-runs as an oscillating LFO/oscillator, and AR follows a held gate (rises while held, releases when let go). OUTPUT mode sets the relationship between the four outputs — GATES gives the main slope plus a variant and two end-of-rise/end-of-fall pulses; AMP, PHASE and FREQ give four copies staggered in amplitude, phase or frequency, with SHIFT spreading them apart. Every macro also has a CV input so the whole shape can be modulated. (Note: the SHAPE morph is a faithful sine→triangle→ramp→expo bank, not a bit-exact wavetable copy of the original.)

the faceplate

tides2voctpitchtriggateclockgatefreq_cvcvshape_cvcvslope_cvcvsmooth_cvcvshift_cvcvout0cvout1cvout2cvout3cvaudiocvgatepitch
8 inputs · 4 outputs · 8 params

inputs

idcablewhat it does
voctpitch1V/oct pitch input that displaces the FREQ macro — most useful in the AUDIO range, where TIDES2 tracks a keyboard/sequencer like an oscillator (±1 maps to ±5 octaves). In the LFO/TEMPO ranges it still shifts the rate up and down by octaves.
V/oct pitch CV; modulates frequency (summed directly (the destination DSP scales it))
triggateTrigger input: a rising edge fires the ramp once in AD mode (one full rise-then-fall) and re-starts/syncs the cycle in LOOP mode. Patch a clock or gate sequencer here to make TIDES2 an envelope per note.
gate / trigger
clockgateExternal clock input used by the TEMPO range: TIDES2 measures the time between rising edges and phase-locks the ramp period to it, so the LFO/cycle stays in tempo with the rack. Has no effect in the LFO/AUDIO ranges.
gate / trigger
freq_cvcvCV that displaces the FREQ macro around its knob setting (full-range bipolar sweep), so an LFO or envelope can speed up and slow down the ramp continuously.
control voltage (CV); modulates frequency (additive offset — ±1 CV sweeps the full range, centered on the knob)
shape_cvcvCV that displaces the SHAPE macro, morphing the waveform contour (sine→triangle→ramp→expo) under modulation.
control voltage (CV); modulates shape (additive offset — ±1 CV sweeps the full range, centered on the knob)
slope_cvcvCV that displaces the SLOPE macro, sweeping the rise/fall symmetry from fast-attack/slow-decay through to the reverse.
control voltage (CV); modulates slope (additive offset — ±1 CV sweeps the full range, centered on the knob)
smooth_cvcvCV that displaces the SMOOTH macro, modulating how rounded vs. sharp the slope's corners are (from smoothed curves to crisp folded edges).
control voltage (CV); modulates smoothness (additive offset — ±1 CV sweeps the full range, centered on the knob)
shift_cvcvCV that displaces the SHIFT macro, sweeping the relationship between the four outputs (the amplitude/phase/frequency spread, or the GATES variant) under modulation.
control voltage (CV); modulates shift (additive offset — ±1 CV sweeps the full range, centered on the knob)

outputs

idcablewhat it does
out0cvOutput 1 — the main slope. In GATES output mode this is the primary rising-then-falling ramp; in AMP/PHASE/FREQ mode it is the first of four related copies (the reference, with no amplitude/phase/frequency offset).
control voltage (CV)
out1cvOutput 2 — a variant of the main slope. In GATES mode this is an alternate contour of the same ramp; in AMP/PHASE/FREQ mode it is the second copy, offset from output 1 by the amount SHIFT sets.
control voltage (CV)
out2cvOutput 3 — in GATES mode an end-of-attack pulse (a short trigger when the rise completes); in AMP/PHASE/FREQ mode the third staggered copy.
control voltage (CV)
out3cvOutput 4 — in GATES mode an end-of-release pulse (a short trigger when the fall completes); in AMP/PHASE/FREQ mode the fourth staggered copy.
control voltage (CV)

params

idlabelrangedefaultcurve
frequencyFREQ0..10.5linear
shapeSHAPE0..10.5linear
slopeSLOPE0..10.5linear
smoothnessSMOOTH0..10.5linear
shiftSHIFT0..10.5linear
rampModeMODE0..20discrete
outputModeOUT0..32discrete
rangeRANGE0..20discrete

controls

controlwhat it does
FREQFREQ — the base rate of the ramp, scaled by the RANGE band: slow LFO cycles, audio-rate pitch, or the clock-synced period in TEMPO. Pitch/freq CV and the V/oct input add to this.
OUTOUT — the relationship between outputs 1–4: GATES (main slope + variant + end-of-rise + end-of-fall pulses), AMP (four amplitude-staggered copies), PHASE (four phase-staggered copies), or FREQ (four frequency-divided/multiplied copies). The card's OUT button cycles these.
MODEMODE — how the ramp is driven: AD fires a one-shot rise-then-fall on each trigger (an envelope), LOOP free-runs as a repeating LFO/oscillator, and AR follows a held gate (rises while high, releases on the falling edge). The card's MODE button cycles these.
RANGERANGE — the speed band: LFO (slow, sub-audio cycles), AUDIO (audio-rate, so TIDES2 acts as an oscillator and tracks V/oct), or TEMPO (the cycle locks to the external CLOCK input). The card's RNG button cycles these.
SHAPESHAPE — morphs the waveform contour continuously from sine through triangle and ramp to a near-exponential curve, cross-fading between adjacent shapes at in-between settings.
SHIFTSHIFT — spreads the four outputs apart: in AMP it pans amplitude across the four, in PHASE it spreads their phase, in FREQ it picks the frequency-division ratios, and in GATES it morphs the variant/pulse relationship.
SLOPESLOPE — the rise/fall symmetry of the ramp: centred is a symmetric triangle, one way is fast-attack/slow-decay (a plucky envelope), the other is slow-attack/fast-decay.
SMOOTHSMOOTH — how rounded vs. sharp the slope's corners are; low values give crisp, even folded edges, high values smooth the curve into gentle bends.

source

tides2.ts on GitHub.

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