Direct pitch control
Tune, analog drift, glide, and octave footage cover the documented pitch layer, with exact semitone, millisecond, and percentage readouts.
A polyphonic synthesizer.
CYRRA is the first software instrument from The Unicorn Garden: a direct, tactile synthesizer built around a band-limited morphing oscillator, resonant ladder filter, and a signal path that stays close to the sound.

CYRRA is designed to stay near the useful part of synthesis. Start with a sound, move a control, and let the instrument give something back. It is deep enough for a long session without requiring a manual before the first note.
The CYRRA surface is designed to feel direct, physical and readable—even before the first note.


The latest design set is live here: open the preset dropdown, launch the browser, filter the library, favourite a sound, and try the save/import demo.
Everything below is derived from the current CYRRA interface parameter contract. Final platform packages, signing, and commercial release details will be published at launch.
Tune, analog drift, glide, and octave footage cover the documented pitch layer, with exact semitone, millisecond, and percentage readouts.
The Wave control moves from saw through a rounded triangle to pulse, with a dedicated Pulse Width control.
Choose Off, -1 Oct, -2 Oct, Octave Mix, 25% Mix, or Noise, then balance the main and secondary source with Oscillator Mix.
Drive, Cutoff, Resonance, and four filter modes—12 dB, 18 dB, 24 dB Classic, and 24 dB Fat—form the documented filter section.
Key Follow and bipolar Filter Envelope depth let the shared ADSR move the filter musically across the keyboard.
Attack, Decay, Sustain, and Release shape the amplifier and filter together, with Velocity and Output completing the output stage.
Choose Mono or Poly, enable Legato in Mono mode, and set the poly voice limit to 1, 2, 4, 8, or 16 voices.
The 23 documented controls use stable parameter IDs for the current JUCE/APVTS interface contract.
Stable IDs, ranges, defaults, units, and behavior notes for the current JUCE/APVTS contract.
The performance layer: tuning, drift, glide, footage, voice allocation, and mono legato behavior.
tuneTuneStepped −24 to +24; step 1Semitone transpose; updates immediately on held notes.
analogAnalogContinuous 0–100; step 0.1Per-voice pitch and cutoff drift; at zero, oscillator phase resets per note.
glideGlideSkewed 0–2,000Smooths pitch toward a new target and remains separate from Tune.
octaveOctave32′ / 16′ / 8′ / 4′ / 2′Fixed offsets of −24, −12, 0, +12, and +24 semitones.
voiceModeVoice ModeMono / PolyMono uses one voice with last-note priority; Poly enables the selected voice count.
legatoLegatoOff / OnIn Mono, On preserves the shared amp/filter envelope while changing held notes.
voicesVoices1 / 2 / 4 / 8 / 16Poly voice limit; disabled in Mono mode.
A controlled single-oscillator architecture with pulse shaping and opt-in secondary sources.
waveWaveContinuous 0–1; step .001Morphs saw at 0, rounded triangle around 0.5, and pulse at 1.
pulseWidthPulse WidthContinuous 0.05–0.95; step .001Pulse duty cycle; most audible near the pulse end of the Wave control.
subWaveSub SourceOff / −1 Oct / −2 Oct / Octave Mix / 25% Mix / NoiseSecondary oscillator or noise source with independent band-limited sub phases.
mixOscillator MixContinuous 0–100; step 0.1100 is main oscillator only; 0 is sub or noise only.
A nonlinear front end into explicit 2-, 3-, and 4-pole ladder taps.
driveDriveContinuous 0–100; step 0.1Asymmetric pre-filter saturation for weight and harmonics.
cutoffCutoffSkewed 1–20,000Effective cutoff is shaped, then modulated by Key Follow and Filter Envelope.
resonanceResonanceContinuous 0–100; step 0.1Nonlinear ladder feedback with pass-band makeup for stable gain.
filterModeFilter Mode12 dB / 18 dB / 24 dB Classic / 24 dB FatSelects the 2-, 3-, or 4-pole output tap; Fat is the compensated aggressive response.
keyFollowKey FollowContinuous 0–100; step 0.1Tracks note pitch; 100% equals one cutoff octave per keyboard octave.
filterEnvFilter EnvelopeBipolar −100–+100; step 0.1Shared ADSR amount; positive opens and negative closes the filter.
The shared exponential envelope controls the amplifier and filter, followed by velocity and output trim.
attackAttackSkewed 0–10,000Shared amplifier and filter envelope attack.
decayDecaySkewed 1–10,000Shared envelope decay time.
sustainSustainContinuous 0–100; step 0.1Shared envelope sustain level.
releaseReleaseSkewed 1–10,000Shared amplifier and filter envelope release time.
velocityVelocityContinuous 0–100; step 0.1MIDI velocity depth for amplifier level.
outputOutputContinuous −24–+6; step 0.1Final per-voice output trim.
Early renders from the current build. Press play when you are ready; audio never starts by itself.
The product page and secure checkout are ready for launch. The first sale should go live after the Stripe Price and private download archive are configured in production.
The engine targets VST3 and standalone on Windows, Linux, and macOS, plus AU on macOS. Final platform packages, signing, and compatibility details will be published with the commercial release.
After Stripe confirms a paid Checkout Session, the download endpoint verifies the session and matching product price before streaming the private archive. The binary is never stored in the public website assets.