CYRRA

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.

Secure checkout via Stripe / one-time license
Hear the direction
CYRRA UG-001 desktop render

A direct instrument for uncertain ideas.

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.

Focused, not thin.

Everything below is derived from the current CYRRA interface parameter contract. Final platform packages, signing, and commercial release details will be published at launch.

01

Direct pitch control

Tune, analog drift, glide, and octave footage cover the documented pitch layer, with exact semitone, millisecond, and percentage readouts.

02

Morphing oscillator

The Wave control moves from saw through a rounded triangle to pulse, with a dedicated Pulse Width control.

03

Sub source and mix

Choose Off, -1 Oct, -2 Oct, Octave Mix, 25% Mix, or Noise, then balance the main and secondary source with Oscillator Mix.

04

Resonant filter

Drive, Cutoff, Resonance, and four filter modes—12 dB, 18 dB, 24 dB Classic, and 24 dB Fat—form the documented filter section.

05

Keyboard and envelope shaping

Key Follow and bipolar Filter Envelope depth let the shared ADSR move the filter musically across the keyboard.

06

Shared amp/filter ADSR

Attack, Decay, Sustain, and Release shape the amplifier and filter together, with Velocity and Output completing the output stage.

07

Mono and poly voice control

Choose Mono or Poly, enable Legato in Mono mode, and set the poly voice limit to 1, 2, 4, 8, or 16 voices.

08

Stable host/state identifiers

The 23 documented controls use stable parameter IDs for the current JUCE/APVTS interface contract.

Signal pathOscillator / sub mix → Analog colour → Drive → Resonant ladder filter → Amp envelope → Velocity → Output
ArchitectureMain oscillator with waveform and pulse-width control, sub/noise source, main/sub mixer, analog colour, pre-filter drive, resonant ladder filter, shared amp/filter envelope
Voice modesMono with last-note priority, or Poly with 1 / 2 / 4 / 8 / 16 voice limit
OscillatorSaw → rounded triangle → pulse morph, 0.05–0.95 pulse width, 32′ / 16′ / 8′ / 4′ / 2′ footage
Filter2-, 3-, and 4-pole ladder taps: 12 dB, 18 dB, 24 dB Classic, 24 dB Fat
Envelope and outputShared amp/filter ADSR, velocity-sensitive amplifier level, and final per-voice output trim
Parameter contract23 stable JUCE/APVTS parameter IDs with documented ranges, defaults, units, and interface notes
Interface guidanceKnobs for continuous controls, a stepped Tune control, and segmented selectors for Octave, Sub Source, and Filter Mode
Current editorJUCE GenericAudioProcessorEditor; the approved custom interface is presented as a visual asset direction
FormatsVST3 / AU (macOS) / Standalone
PlatformsLinux / macOS / Windows
Preset library10 factory programs in current build
Current versionUG-001 / pre-launch

Every control, named.

Stable IDs, ranges, defaults, units, and behavior notes for the current JUCE/APVTS contract.

Global, pitch and voice

The performance layer: tuning, drift, glide, footage, voice allocation, and mono legato behavior.

IDControlRange / defaultNotes
tuneTuneStepped −24 to +24; step 1
Default 0 st

Semitone transpose; updates immediately on held notes.

analogAnalogContinuous 0–100; step 0.1
Default 25 %

Per-voice pitch and cutoff drift; at zero, oscillator phase resets per note.

glideGlideSkewed 0–2,000
Default 0 ms

Smooths pitch toward a new target and remains separate from Tune.

octaveOctave32′ / 16′ / 8′ / 4′ / 2′
Default 8′

Fixed offsets of −24, −12, 0, +12, and +24 semitones.

voiceModeVoice ModeMono / Poly
Default Poly

Mono uses one voice with last-note priority; Poly enables the selected voice count.

legatoLegatoOff / On
Default Off

In Mono, On preserves the shared amp/filter envelope while changing held notes.

voicesVoices1 / 2 / 4 / 8 / 16
Default 8

Poly voice limit; disabled in Mono mode.

Oscillator

A controlled single-oscillator architecture with pulse shaping and opt-in secondary sources.

IDControlRange / defaultNotes
waveWaveContinuous 0–1; step .001
Default 0

Morphs saw at 0, rounded triangle around 0.5, and pulse at 1.

pulseWidthPulse WidthContinuous 0.05–0.95; step .001
Default 0.5

Pulse duty cycle; most audible near the pulse end of the Wave control.

subWaveSub SourceOff / −1 Oct / −2 Oct / Octave Mix / 25% Mix / Noise
Default Off

Secondary oscillator or noise source with independent band-limited sub phases.

mixOscillator MixContinuous 0–100; step 0.1
Default 100 %

100 is main oscillator only; 0 is sub or noise only.

Filter

A nonlinear front end into explicit 2-, 3-, and 4-pole ladder taps.

IDControlRange / defaultNotes
driveDriveContinuous 0–100; step 0.1
Default 56 %

Asymmetric pre-filter saturation for weight and harmonics.

cutoffCutoffSkewed 1–20,000
Default 6,000 Hz

Effective cutoff is shaped, then modulated by Key Follow and Filter Envelope.

resonanceResonanceContinuous 0–100; step 0.1
Default 20 %

Nonlinear ladder feedback with pass-band makeup for stable gain.

filterModeFilter Mode12 dB / 18 dB / 24 dB Classic / 24 dB Fat
Default 24 dB Classic

Selects the 2-, 3-, or 4-pole output tap; Fat is the compensated aggressive response.

keyFollowKey FollowContinuous 0–100; step 0.1
Default 80 %

Tracks note pitch; 100% equals one cutoff octave per keyboard octave.

filterEnvFilter EnvelopeBipolar −100–+100; step 0.1
Default 35 %

Shared ADSR amount; positive opens and negative closes the filter.

Envelope and output

The shared exponential envelope controls the amplifier and filter, followed by velocity and output trim.

IDControlRange / defaultNotes
attackAttackSkewed 0–10,000
Default 5 ms

Shared amplifier and filter envelope attack.

decayDecaySkewed 1–10,000
Default 300 ms

Shared envelope decay time.

sustainSustainContinuous 0–100; step 0.1
Default 70 %

Shared envelope sustain level.

releaseReleaseSkewed 1–10,000
Default 400 ms

Shared amplifier and filter envelope release time.

velocityVelocityContinuous 0–100; step 0.1
Default 50 %

MIDI velocity depth for amplifier level.

outputOutputContinuous −24–+6; step 0.1
Default −6 dB

Final per-voice output trim.

The sound is in the room.

Early renders from the current build. Press play when you are ready; audio never starts by itself.

CYRRA engine renderKeys
12:32
Logic reference renderKeys
12:32

Before the first build.

When will CYRRA be available?+

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.

Which formats are included?+

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.

How does the download work?+

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.

Release state / UG-001 / pre-launch

Stay close to the signal.

Secure checkout via Stripe / one-time license