$14.00 $17.50

F_GRANOZ — Granular Wave Oscillator

F_GRANOZ is a hybrid oscillator for Voltage Modular Designer. It blends a virtual analog oscillator (Wave A / Wave B with Morph) with a stereo granular cloud. Each grain inherits the base waveform, is detuned and panned, and can be quantized to a musical scale. With Density, Overlap, Width and Spread Mode you can move from tight supersaw leads to lush pads and drifting textures.

Quick Reference (I/O)

JackTypeDescription
PITCHCV in1 V/Oct pitch input. 0 V ~ A4 440 Hz. Located on the top row.
OUT L / OUT RAudio outStereo outputs. Located on the bottom row.

Controls

GroupControlRange / StepsDescription
PitchTUNE-24..+24 semitonesCoarse tuning relative to PITCH CV.
PitchFINE-100..+100 centsFine tuning.
OutputAMP0..1Master output level.
OscWAVE A0..3 (4 steps)0=Sine, 1=Triangle, 2=Saw, 3=Square.
OscWAVE B0..3 (4 steps)Second waveform to morph to.
OscMORPH0..1Crossfade between Wave A and Wave B.
BlendBLEND0..10=classic oscillator (mono), 1=granular cloud (stereo).
GrainGRAIN2..100 msGrain length. Short = bright/sparkly, long = smooth/choral.
GrainDENSITY0..220 grains/secSpawn rate of grains.
GrainOVERLAP1..12Max simultaneous grains. Hard engine cap is 96 total.
Pitch SpreadSPREADcents (user range)Per-grain detune amount. See Spread Mode.
Pitch SpreadSPREAD MODE0..2 (3 steps)0=Under, 1=Symmetric, 2=Over relative to base tone.
RandomPHASE RAND0..100 %Randomize initial grain phase for decorrelation.
StereoWIDTH0..1Granular stereo width. 0=center, 1=wide.
OctavesOCT COUNT1..3 (3 steps)Number of octave layers per cloud.
OctavesOCT DEPTH6..24 semitonesDistance between octave layers. 12 = 1 octave.
QuantizeSCALE0..6 (7 steps)Off, Major, Minor, Pent Maj, Pent Min, Dorian, Mixolydian.
QuantizeROOT0..11 (12 steps)0=C, 1=C#, 2=D, 3=Eb, 4=E, 5=F, 6=F#, 7=G, 8=Ab, 9=A, 10=Bb, 11=B.

Controls

GroupControlRange / StepsDescription
PitchTUNE-24..+24 semitonesCoarse tuning relative to PITCH CV.
PitchFINE-100..+100 centsFine tuning.
OutputAMP0..1Master output level.
OscWAVE A0..3 (4 steps)0=Sine, 1=Triangle, 2=Saw, 3=Square.
OscWAVE B0..3 (4 steps)Second waveform to morph to.
OscMORPH0..1Crossfade between Wave A and Wave B.
BlendBLEND0..10=classic oscillator (mono), 1=granular cloud (stereo).
GrainGRAIN2..100 msGrain length. Short = bright/sparkly, long = smooth/choral.
GrainDENSITY0..220 grains/secSpawn rate of grains.
GrainOVERLAP1..12Max simultaneous grains. Hard engine cap is 96 total.
Pitch SpreadSPREADcents (user range)Per-grain detune amount. See Spread Mode.
Pitch SpreadSPREAD MODE0..2 (3 steps)0=Under, 1=Symmetric, 2=Over relative to base tone.
RandomPHASE RAND0..100 %Randomize initial grain phase for decorrelation.
StereoWIDTH0..1Granular stereo width. 0=center, 1=wide.
OctavesOCT COUNT1..3 (3 steps)Number of octave layers per cloud.
OctavesOCT DEPTH6..24 semitonesDistance between octave layers. 12 = 1 octave.
QuantizeSCALE0..6 (7 steps)Off, Major, Minor, Pent Maj, Pent Min, Dorian, Mixolydian.
QuantizeROOT0..11 (12 steps)0=C, 1=C#, 2=D, 3=Eb, 4=E, 5=F, 6=F#, 7=G, 8=Ab, 9=A, 10=Bb, 11=B.

Assignable MOD Inputs (MOD1–MOD8)

F_GRANOZ provides eight freely-assignable modulation inputs labeled MOD1 through MOD8 on the left side of the panel. Each jack has a small button beside it showing the current target. Click that button to open a dropdown and choose what the incoming CV will control. Choosing OFF disables that slot.

How it works

  • Patch a CV (LFO, envelope, random, MIDI CC-to-CV, etc.) into a MOD jack.
  • Click the MOD button next to that jack and pick a target from the list.
  • CV range: inputs are treated as bipolar −5 V..+5 V and normalized internally to −1..+1. A unipolar 0..+5 V source maps to 0..+1 (only positive modulation).
  • Continuous targets (e.g., Morph, Width, Amp, Grain, Density, Spread, Tune/Fine) are smoothed internally to avoid zipper noise. Stepped targets (wave selections, octave count, scale, root, spread mode, overlap) snap cleanly to integer values.
  • Safety: all results are clamped to the valid range of the parameter so mods can’t push values out of bounds.
  • Persistence: MOD target assignments are saved with your presets/variations. If you load an older preset with fewer MOD slots, the extra slots default to OFF.

Targets & CV mapping

TargetResulting RangeCV Mapping (normalized)Notes
Tune±24 semitones (clamped)Δ = CV × 12 semitonesMusical coarse pitch offset. Combine with 1V/Oct pitch input.
Fine±100 cents (clamped)Δ = CV × 100 centsSubtle detune; great for vibrato or slow drift.
WAVE A0..3 (Sine/Tri/Saw/Square)QuantizedStepped selection; CV pushes to nearest waveform index.
WAVE B0..3 (Sine/Tri/Saw/Square)QuantizedSame as above.
Morph0..1Additive; smoothedCrossfades A↔B for both core osc and grains.
Blend0..1Additive; smoothed0 = mono core osc, 1 = granular stereo.
Grain (ms)2..300 ms (clamped)Additive; smoothedLonger = more tone/legato; shorter = more texture.
Density (gps)0..220 (clamped)Additive; smoothedGrains per second. High values get normalized internally to keep levels sane.
Overlap1..12QuantizedMax simultaneous grains. Useful with fast envelopes or high density.
Spread (cents)0..1200 (clamped)Additive; smoothedPer-grain detune spread. Small (5–20) for chorus; higher for supersaw stacks.
Spread Mode0/1/2 (Under/Sym/Over)QuantizedNegative CV→Under (below), near 0→Symmetric, positive CV→Over (above).
Phase Rand (%)0..1 (internally)Additive; smoothedRandomizes initial phase per grain for extra lushness.
Width0..1Additive; smoothedStereo spread of grains.
Oct Count1..3QuantizedNumber of octave layers (base/below/above).
Oct Depth (st)0..24 semitonesAdditive; smoothedDistance of the octave layers (12 = octave).
Scale (index)0..6Quantized0=OFF, 1=MAJ, 2=MIN, 3=PentMaj, 4=PentMin, 5=Dorian, 6=Mixolydian.
Root (index)0..11Quantized0=C, 1=C#, …, 11=B.
Amp0..1Additive; smoothedPost mix level for the final output.

Tips

  • Unipolar sources: An envelope (0..+5 V) only pushes values upward. If you need bidirectional movement, add a DC offset/inverter to center around 0 V.
  • Stepped vs. smooth: Keep stepped mods (WAVE/Spread Mode/Oct Count/Scale/Root/Overlap) for rhythmic or scene changes; use smooth mods (Morph/Width/Grain/Density/Spread/Tune/Fine/Amp) for motion.
  • Supersaw without mud: Modulate Spread (cents) slowly (±5–12) and a touch of Phase Rand; keep Width below max for mono-compatibility.
  • Musical stacks: Combine Oct Count with a small Oct Depth (3–7 semitones) for tight harmonics; drive depth via a slow LFO for evolving chords.
  • Performance: Assignments are per-slot and processed at audio rate; continuous targets are smoothed to stay click-free.

How it works

The base oscillator produces a continuous tone from the selected waveforms (A and B) and MORPH. The granular engine spawns short overlapping grains that each read the same waveform but at slightly different pitch and pan. The cloud is stereo by design. BLEND crossfades between the mono oscillator and the stereo granular cloud. SPREAD applies per-grain detune in cents; SPREAD MODE defines the direction: Under places grains only below the base tone, Over only above, Symmetric both sides. OCT COUNT creates additional layers at +/- OCT DEPTH semitones. SCALE and ROOT optionally quantize each grain pitch to a musical scale.

Practical guidelines

  • Active grains estimate: roughly Density * (Grain_ms/1000), limited by OVERLAP and the global engine cap (96).
  • Keep it stable: if you lengthen Grain, consider lowering Density or raising Overlap. Example target: 8 active grains -> set Density ~ 8 / (Grain_ms/1000).
  • Character: short grains (2-20 ms) sound buzzy and bright; mid (20-60 ms) feel like supersaw/ensemble; long (60-120 ms) are smooth pads; very long (>120 ms) become layered textures.
  • Stereo: higher Width gives a wider image; with long grains you may prefer moderate Width to avoid a static left-right image.
  • Quantize: enable Scale/Root for melodic clouds; disable for chorus-like detune.
  • Waveforms: Saw or Square give brighter grains; Sine/Triangle are mellow. Morph for motion.

Tips

  • Classic supersaw: Saw on both A and B, Morph small, Spread 6-15 cents, Symmetric, Density medium-high, Overlap 8-12, Width high.
  • Choral pad: Triangle or Sine, Grain 60-120 ms, Density to keep 6-10 active grains, Spread 5-10 cents, Width 0.7-0.9.
  • Quantized lead: Minor or Major, Root to your key, Grain 12-25 ms, Spread 3-8 cents, Symmetric, Oct Count 2-3, Oct Depth 12.
  • Bass focus: Spread Mode Under, Spread 5-20 cents, Width lower for mono compatibility.

Example settings

Values are suggestions; adjust to taste. WAVE A/B use names for clarity. SCALE 0=Off, 1=Major, 2=Minor, 3=Pent Maj, 4=Pent Min, 5=Dorian, 6=Mixolydian.

  • 1. Supersaw Lead: Wave A=Saw, Wave B=Saw, Morph=0.20, Blend=0.70, Grain=18 ms, Density=80, Overlap=9, Spread=12 cents, Spread Mode=Symmetric, Phase Rand=60%, Width=0.75, Oct Count=3, Oct Depth=12, Scale=0, Root=0, Amp=0.85.
  • 2. Bright Stack Pluck: Wave A=Saw, Wave B=Square, Morph=0.35, Blend=0.55, Grain=12 ms, Density=60, Overlap=8, Spread=8 cents, Spread Mode=Over, Phase Rand=30%, Width=0.6, Oct Count=2, Oct Depth=12, Scale=1 (Major), Root=9 (A), Amp=0.8.
  • 3. Mellow Chorus Pad: Wave A=Sine, Wave B=Triangle, Morph=0.5, Blend=0.85, Grain=80 ms, Density=90, Overlap=10, Spread=9 cents, Spread Mode=Symmetric, Phase Rand=90%, Width=0.9, Oct Count=3, Oct Depth=12, Scale=0, Root=0, Amp=0.8.
  • 4. Glassy Air: Wave A=Triangle, Wave B=Saw, Morph=0.25, Blend=0.9, Grain=60 ms, Density=70, Overlap=8, Spread=5 cents, Spread Mode=Over, Phase Rand=80%, Width=0.95, Oct Count=2, Oct Depth=7, Scale=5 (Dorian), Root=7 (G), Amp=0.75.
  • 5. Quantized Lead: Wave A=Saw, Wave B=Saw, Morph=0.1, Blend=0.6, Grain=20 ms, Density=50, Overlap=6, Spread=6 cents, Spread Mode=Symmetric, Phase Rand=40%, Width=0.6, Oct Count=2, Oct Depth=12, Scale=2 (Minor), Root=9 (A), Amp=0.9.
  • 6. Cloud Strings: Wave A=Triangle, Wave B=Triangle, Morph=0.0, Blend=0.95, Grain=110 ms, Density=100, Overlap=12, Spread=7 cents, Spread Mode=Symmetric, Phase Rand=100%, Width=0.9, Oct Count=3, Oct Depth=12, Scale=1 (Major), Root=0 (C), Amp=0.75.
  • 7. Bass Ensemble: Wave A=Square, Wave B=Triangle, Morph=0.2, Blend=0.5, Grain=28 ms, Density=35, Overlap=6, Spread=10 cents, Spread Mode=Under, Phase Rand=20%, Width=0.4, Oct Count=1, Oct Depth=12, Scale=0, Root=0, Amp=0.9.
  • 8. Shimmer Fifths: Wave A=Saw, Wave B=Triangle, Morph=0.4, Blend=0.8, Grain=45 ms, Density=65, Overlap=8, Spread=8 cents, Spread Mode=Over, Phase Rand=70%, Width=0.85, Oct Count=2, Oct Depth=7, Scale=0, Root=0, Amp=0.8.
  • 9. Pentatonic Arp Pad: Wave A=Sine, Wave B=Saw, Morph=0.3, Blend=0.9, Grain=70 ms, Density=80, Overlap=10, Spread=6 cents, Spread Mode=Symmetric, Phase Rand=85%, Width=0.9, Oct Count=3, Oct Depth=12, Scale=3 (Pent Maj), Root=9 (A), Amp=0.75.
  • 10. Minor Dream: Wave A=Triangle, Wave B=Sine, Morph=0.6, Blend=0.95, Grain=90 ms, Density=75, Overlap=9, Spread=5 cents, Spread Mode=Symmetric, Phase Rand=100%, Width=0.95, Oct Count=2, Oct Depth=12, Scale=2 (Minor), Root=7 (G), Amp=0.7.
  • 11. Wide Air Drone: Wave A=Saw, Wave B=Sine, Morph=0.5, Blend=1.0, Grain=120 ms, Density=90, Overlap=12, Spread=15 cents, Spread Mode=Symmetric, Phase Rand=100%, Width=1.0, Oct Count=3, Oct Depth=12, Scale=0, Root=0, Amp=0.7.
  • 12. Tight Unison: Wave A=Saw, Wave B=Saw, Morph=0.0, Blend=0.7, Grain=10 ms, Density=70, Overlap=8, Spread=4 cents, Spread Mode=Symmetric, Phase Rand=20%, Width=0.5, Oct Count=2, Oct Depth=12, Scale=0, Root=0, Amp=0.85.
  • 13. Modal Lead Dorian: Wave A=Square, Wave B=Saw, Morph=0.25, Blend=0.65, Grain=22 ms, Density=55, Overlap=7, Spread=7 cents, Spread Mode=Over, Phase Rand=35%, Width=0.6, Oct Count=2, Oct Depth=12, Scale=5 (Dorian), Root=2 (D), Amp=0.85.
  • 14. Under-Spread Bass Pad: Wave A=Triangle, Wave B=Triangle, Morph=0.0, Blend=0.9, Grain=75 ms, Density=60, Overlap=8, Spread=20 cents, Spread Mode=Under, Phase Rand=60%, Width=0.55, Oct Count=1, Oct Depth=12, Scale=0, Root=0, Amp=0.8.
  • 15. Fifthy Stack: Wave A=Square, Wave B=Saw, Morph=0.5, Blend=0.8, Grain=35 ms, Density=70, Overlap=9, Spread=9 cents, Spread Mode=Over, Phase Rand=60%, Width=0.8, Oct Count=2, Oct Depth=7, Scale=0, Root=0, Amp=0.8.

Troubleshooting

  • Pitch feels off: set TUNE=0, FINE=0, Scale=Off, Root unused; verify your PITCH source is true 1 V/Oct.
  • Sound gets too thick or CPU rises: lower Density or Grain, or raise Overlap thoughtfully. Aim for 6-10 active grains to start.
  • Stereo too wide: reduce Width to 0.4-0.6, or shorten Grain, or lower Phase Rand.
  • Too static image: raise Width and Phase Rand, or shorten Grain, or increase Density slightly.
  • Needs more focus around base tone: set Spread Mode to Under or Over instead of Symmetric, and try smaller Spread values.

Notes

  • Ranges and steps: integer choices use stepped knobs internally (e.g. Wave 0..3, Scale 0..6, Root 0..11, Oct Count 1..3). Tooltips show current values in plain ASCII.
  • Spread range: you can choose a larger user range for SPREAD if desired (e.g. up to 200 or 1200 cents). Musical sweet spots are roughly 5-20 cents for chorus, 20-200 cents for cluster, 200-1200 cents for broad textures.
  • Quantize: when Scale is active, each grain pitch is snapped to the selected scale and root. For pure detune character, keep Scale Off.