It's Digital

Arturia MatrixBrute

Arturia
INOSC ×3sawtooth square triangle sineNOISEMIXERFILTER ×2multimode _verifyVCAOUTLFO ×3ENV ×3MOD MATRIX 16x16modulation sources

Voicing

Voices
1
Polyphony
1
Multitimbral
paraphonic (up to 3 notes, VCOs split one-per-note sharing filters/VCA); also a 2-part Duo-Split keyboard mode
Unison
no
Portamento
yes
Mono legato
yes

Oscillators

Oscillators
3
Noise source
yes
OSC 1
analog-vco · sawtooth/square/triangle · PWM · sub
OSC 2
analog-vco · sawtooth/square/triangle · PWM · sync
OSC 3
analog-vco · sawtooth/square/triangle/sine

Cross-modulation

Hard sync
yes
Osc FM / X-mod
yes
Ring mod
no

Filters

Filter 1
multimode · _verify · resonance · self-osc · drive
Filter 2
multimode · 2-pole/4-pole · resonance · self-osc · drive
Routing
switchable

Envelopes

Count
3
Stages
ADSR
Assignments
filter, amp, aux

LFO

Count
3
Waveforms
sine, triangle, square, ramp, sawtooth, sample-hold, random
Destinations
osc-freq, filter, pwm, amp, pitch, pan
Tempo sync
yes

Modulation

Mod matrix
yes
Matrix size
16x16
Patchbay
no

Performance & I/O

Velocity
yes
Aftertouch
yes
Mod wheel
yes
Pitch bend
yes
Onboard FX
stereo delay, mono delay, chorus, flanger, reverb
Audio out
stereo 1/4" unbalanced +4dBu Master Out L/R (mono = left only); + mono 1/4" TRS Insert Send/Return; external audio In (Inst/Line)
MIDI
yes
USB
yes
CV / gate
yes
Notes
Synthesizersanalogcapability-v4fx: outboard

Signal flow rendered server-side as inline SVG from capability.json: no WPF, no client JavaScript.

Provenance

Confidence
high
Last verified
2026-05-26
Manual
manuals/synths--arturia-matrixbrute-manual.pdf
Pages
1, 3, 4, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 37, 38, 39, 50, 55
Via
SM26 single-seat manual extraction (Opus general-purpose seat); SM34 (2026-05-26) STRUCTURAL migration capability-v3->v4 (control_style=mixed + morphology_overrides[]=[]); SM36 council re-extraction with panel-image SSOT (2026-05-26): CC/Opus + Codex CLI + Gemini browser 3-seat council, panel images at manuals/synths--<id>-panel.jpg (SM35-landed) -- panel-grounded re-extraction.

Manual-grounded. Three of Adam's stressor priors corrected by the manual: (1) the matrix is 16x16 not 12x16 (p.34); (2) BOTH filters are multimode -- the Ladder 'also is a multimode filter and has both 12dB and 24dB options' (p.468), not LP-only; (3) onboard FX are Stereo/Mono Delay, Chorus, Flanger, Reverb -- no Phaser (p.33). 3 VCOs + 4-type noise (p.18-20); 3 envelopes (ENV1/2 ADSR + ENV3 DADSR, p.31-32); 3 LFOs (LFO1/2 + VCO3-as-LFO3, p.19/27); osc_fm confirmed via Audio Mod (p.20). Steiner exact dB/oct not stated -> filters[0].slopes left _verify. No ring mod, no unison, no physical vibrato lever found. SM34 (2026-05-26): STRUCTURAL migration capability-v3->v4 (top-level control_style='mixed', morphology_overrides[] of length 0). Morphology grounded in real-hardware knowledge + the SM34 brief's per-synth assignment (panel-image backfill at manuals/synths--*-panel.jpg is a separate follow-on node). SM36 (2026-05-26): 3-of-3 council seats CONFIRMED control_style=mixed; 2-of-3 (CC/Opus + Codex) CONFIRMED morphology_overrides[]=[] (the panel mixes OSC/VCF knobs with ENV faders, and the v4 mixed dispatch + ControlDetails defaults already produce the right rendering). Gemini outlier suggested OSC0/OSC1.level=knob overrides, NOT ADOPTED -- the MatrixBrute manual documents the MIXER section as sliders for VCO levels, contradicting Gemini's reading on this minor point. provenance.fields.control_style bumped medium -> high.

Raw capability.json
{
  "schema_version": "capability-v4",
  "id": "matrixbrute",
  "name": "Arturia MatrixBrute",
  "maker": "Arturia",
  "clone_of": null,
  "type": "analog",
  "voices": 1,
  "voices_note": "Monophonic standard mode; Paraphonic mode plays up to 3 notes by splitting the 3 VCOs one-per-note while sharing the filters and VCA; a Duo-Split mode splits the keyboard into 2 independently-routed parts (manual p.21).",
  "multitimbral": "paraphonic (up to 3 notes, VCOs split one-per-note sharing filters/VCA); also a 2-part Duo-Split keyboard mode",
  "control_style": "mixed",
  "device_class": "synth",
  "voicing": {
    "polyphony": 1,
    "unison": false,
    "unison_detune_spread": false,
    "portamento": true,
    "mono_legato": true
  },
  "oscillators": {
    "count": 3,
    "noise": true,
    "note": "VCO1 & VCO2 are exponential analog oscillators, each with 3 mixable waveforms (saw/square/tri) plus per-waveform enhancers (Ultrasaw, Pulse Width, Metalizer wave-folder); VCO1 also has a dedicated Sub oscillator an octave below. VCO3 is a linear multifunction oscillator that doubles as LFO3 (waveforms reverse-saw/square/triangle/sine, Kbd-Track, no PWM/Sub). A separate 4-type Noise generator (blue/white/pink/red) is the synth-level noise source (manual p.18-20). per[].sync encodes the hard-sync SLAVE role: VCO Sync is 'VCO2 > VCO1' (VCO1 follows VCO2), so per[0] (VCO1) is the slave and per[1] (VCO2) the master (p.20); the synth-level capability is cross_mod.hard_sync=true.",
    "per": [
      {
        "engine_type": "analog-vco",
        "waveforms": [
          "sawtooth",
          "square",
          "triangle"
        ],
        "wave_selection": "mixable",
        "pwm": true,
        "sub": true,
        "sync": false,
        "octave_select": true,
        "octave_positions": 4,
        "detune": true
      },
      {
        "engine_type": "analog-vco",
        "waveforms": [
          "sawtooth",
          "square",
          "triangle"
        ],
        "wave_selection": "mixable",
        "pwm": true,
        "sub": false,
        "sync": true,
        "octave_select": true,
        "octave_positions": 4,
        "detune": true
      },
      {
        "engine_type": "analog-vco",
        "waveforms": [
          "sawtooth",
          "square",
          "triangle",
          "sine"
        ],
        "wave_selection": "mixable",
        "pwm": false,
        "sub": false,
        "sync": false,
        "octave_select": true,
        "octave_positions": 4,
        "detune": false
      }
    ]
  },
  "cross_mod": {
    "hard_sync": true,
    "osc_fm": true,
    "ring_mod": false,
    "note": "Audio Mod section provides osc->osc FM: 'VCO1 > VCO2', plus VCO3 FMs VCO1/VCO2, and Noise > VCF1 (manual p.20). hard_sync is VCO2 > VCO1 (p.20). The Metalizer is a wave-folder, not FM. No ring modulator documented anywhere in the manual -> ring_mod false (verified-none)."
  },
  "filters": [
    {
      "type": "multimode",
      "slopes": [
        "_verify"
      ],
      "slope_switchable": false,
      "resonance": true,
      "self_oscillation": true,
      "key_tracking": false,
      "drive": true
    },
    {
      "type": "multimode",
      "slopes": [
        "2-pole",
        "4-pole"
      ],
      "slope_switchable": true,
      "resonance": true,
      "self_oscillation": true,
      "key_tracking": true,
      "drive": true
    }
  ],
  "filters_note": "TWO independent multimode filters (manual p.464-468). filters[0] = Steiner-Parker (VCF1): LP/BP/HP + Notch (Notch is Steiner-only). filters[1] = Ladder (VCF2): the manual states it 'also is a multimode filter and has both 12dB per octave and 24dB per octave options' (p.468), so slopes=['2-pole','4-pole'] slope_switchable=true. CONTESTED+RESOLVED: Adam's stressor described the Ladder as LP-only/'Ladder(LP,12/24)'; the manual is explicit that BOTH filters are multimode (manual wins). The Steiner's exact dB/oct is never stated in the manual (no Steiner slope CC param, p.50) -> filters[0].slopes=['_verify'], slope_switchable=false rather than guess. Both have Drive (Brute Factor) + Resonance and can self-oscillate (p.30). key_tracking: the manual says the Steiner tracks the keyboard poorly and recommends the Ladder for octave tracking (p.30) -> Steiner key_tracking=false, Ladder=true. The Routing knob switches the two filters between Parallel and Series (VCF1->VCF2), user-selectable -> filter_routing 'switchable' (p.30, p.425).",
  "filter_routing": "switchable",
  "envelopes": {
    "count": 3,
    "assignments": [
      "filter",
      "amp",
      "aux"
    ],
    "stages": "ADSR",
    "note": "Three envelopes (manual p.31-32): ENV1 = 4-stage ADSR hardwired to the VCFs' Master Cutoff (filter); ENV2 = 4-stage ADSR hardwired to the VCA (amp); ENV3 = freely Matrix-assignable (aux) and adds a Delay stage before the ADSR (i.e. DADSR). 'stages' reports the dominant ADSR; ENV3 specifically is DADSR. ENV1/ENV2 carry velocity sliders (Velo/VCF, Velo/VCA)."
  },
  "lfo": {
    "count": 3,
    "waveforms": [
      "sine",
      "triangle",
      "square",
      "ramp",
      "sawtooth",
      "sample-hold",
      "random"
    ],
    "destinations": [
      "osc-freq",
      "filter",
      "pwm",
      "amp",
      "pitch",
      "pan"
    ],
    "sync": true,
    "note": "LFO1 and LFO2 are full LFOs with 7 preset waveforms (sine/triangle/square/reverse-saw[=ramp]/saw/S&H/random) plus a drawable custom waveform, both Seq-Syncable to tempo (manual p.27-28). LFO3 is VCO3 operating as a modulator (LFO Div 16/32/64/128, Kbd-Track) -> count=3 (p.19). LFO routing is via the 16x16 Matrix; destinations[] lists representative reachable targets. 'ramp' encodes the manual's 'reverse sawtooth'."
  },
  "modulation": {
    "mod_matrix": true,
    "mod_matrix_size": "16x16",
    "patchbay": false,
    "vibrato_lever": false,
    "note": "CONTESTED+RESOLVED: Adam's stressor said 12x16; the manual (p.34, p.36) states 16 sources (rows A-P) x 16 destinations (cols 1-16) = 16x16 (dests 1-12 hardwired, 13-16 access 16 user-assignable destinations). Sources A-P: ENV1/2/3, Env Follow, LFO1/2/3, Mod Wheel, Kbd/Seq, Aftertouch, Velocity, Seq Mod, M1-M4 (p.38-39). patchbay=false: the rear CV Ins/Outs (12 params) + Gate + Sync are captured by io.cv_gate; there is no normalled semi-modular audio patchbay. vibrato_lever=false: vibrato is achieved by assigning the mod wheel to an LFO (p.22), no dedicated lever."
  },
  "performance": {
    "velocity": true,
    "aftertouch": true,
    "mod_wheel": true,
    "pitch_bend": true,
    "note": "49-key (4-octave) keyboard with velocity (mod source K) and channel/pressure Aftertouch (mod source J; adjustable in Settings, p.55). Spring-return Pitch wheel (Bend Range up to +/-1 octave) and a continuous assignable Mod wheel (p.22, p.38-39)."
  },
  "fx_onboard": [
    "stereo delay",
    "mono delay",
    "chorus",
    "flanger",
    "reverb"
  ],
  "fx_onboard_note": "FACT (manual p.33): an Analog Effects section (Bucket-Brigade-Device based) with 5 modes -- Stereo Delay, Mono Delay, Chorus, Flanger, Reverb. There is NO Phaser (Adam's stressor guessed a Phaser; corrected). Use/bypass POLICY lives in rig.json (fx_policy.mode=outboard).",
  "io": {
    "audio_out": "stereo 1/4\" unbalanced +4dBu Master Out L/R (mono = left only); + mono 1/4\" TRS Insert Send/Return; external audio In (Inst/Line)",
    "midi": true,
    "usb": true,
    "cv_gate": true,
    "note": "Rear panel (manual p.153): Master Out L/R 1/4\" unbalanced +4dBu; Insert Send/Return TRS (mono); CV Ins/Outs 3.5mm for 12 parameters (VCA, LFO1 Amount, Ladder Cutoff, Steiner Cutoff, VCO2 Metal/PW/Ultra/Pitch, VCO1 Metal/PW/Ultra/Pitch); Gate In/Out (voltage trigger); Sync In/Out (DIN-24); Expression 1/2 + Sustain pedal inputs; MIDI In/Out/Thru 5-pin DIN; USB-B (class-compliant MIDI). cv_gate=true (both CV and Gate jacks present)."
  },
  "morphology_overrides": [],
  "provenance": {
    "manual_path": "manuals/synths--arturia-matrixbrute-manual.pdf",
    "confidence": "high",
    "last_verified": "2026-05-26",
    "manual_pages": [
      1,
      3,
      4,
      18,
      19,
      20,
      21,
      22,
      23,
      24,
      26,
      27,
      28,
      29,
      30,
      31,
      32,
      33,
      34,
      36,
      37,
      38,
      39,
      50,
      55
    ],
    "verify_via": "SM26 single-seat manual extraction (Opus general-purpose seat); SM34 (2026-05-26) STRUCTURAL migration capability-v3->v4 (control_style=mixed + morphology_overrides[]=[]); SM36 council re-extraction with panel-image SSOT (2026-05-26): CC/Opus + Codex CLI + Gemini browser 3-seat council, panel images at manuals/synths--<id>-panel.jpg (SM35-landed) -- panel-grounded re-extraction.",
    "verify_note": "Manual-grounded. Three of Adam's stressor priors corrected by the manual: (1) the matrix is 16x16 not 12x16 (p.34); (2) BOTH filters are multimode -- the Ladder 'also is a multimode filter and has both 12dB and 24dB options' (p.468), not LP-only; (3) onboard FX are Stereo/Mono Delay, Chorus, Flanger, Reverb -- no Phaser (p.33). 3 VCOs + 4-type noise (p.18-20); 3 envelopes (ENV1/2 ADSR + ENV3 DADSR, p.31-32); 3 LFOs (LFO1/2 + VCO3-as-LFO3, p.19/27); osc_fm confirmed via Audio Mod (p.20). Steiner exact dB/oct not stated -> filters[0].slopes left _verify. No ring mod, no unison, no physical vibrato lever found. SM34 (2026-05-26): STRUCTURAL migration capability-v3->v4 (top-level control_style='mixed', morphology_overrides[] of length 0). Morphology grounded in real-hardware knowledge + the SM34 brief's per-synth assignment (panel-image backfill at manuals/synths--*-panel.jpg is a separate follow-on node). SM36 (2026-05-26): 3-of-3 council seats CONFIRMED control_style=mixed; 2-of-3 (CC/Opus + Codex) CONFIRMED morphology_overrides[]=[] (the panel mixes OSC/VCF knobs with ENV faders, and the v4 mixed dispatch + ControlDetails defaults already produce the right rendering). Gemini outlier suggested OSC0/OSC1.level=knob overrides, NOT ADOPTED -- the MatrixBrute manual documents the MIXER section as sliders for VCO levels, contradicting Gemini's reading on this minor point. provenance.fields.control_style bumped medium -> high.",
    "fields": {
      "voices": {
        "conf": "high",
        "pg": 21
      },
      "multitimbral": {
        "conf": "high",
        "pg": 21
      },
      "voicing.unison": {
        "conf": "medium",
        "pg": 21
      },
      "voicing.portamento": {
        "conf": "high",
        "pg": 23
      },
      "voicing.mono_legato": {
        "conf": "high",
        "pg": 24
      },
      "oscillators.count": {
        "conf": "high",
        "pg": 18
      },
      "oscillators.noise": {
        "conf": "high",
        "pg": 20
      },
      "oscillators.per.0.waveforms": {
        "conf": "high",
        "pg": 19
      },
      "oscillators.per.0.sub": {
        "conf": "high",
        "pg": 18
      },
      "oscillators.per.0.sync": {
        "conf": "high",
        "pg": 20
      },
      "oscillators.per.1.sync": {
        "conf": "high",
        "pg": 20
      },
      "oscillators.per.2.waveforms": {
        "conf": "high",
        "pg": 19
      },
      "cross_mod.hard_sync": {
        "conf": "high",
        "pg": 20
      },
      "cross_mod.osc_fm": {
        "conf": "high",
        "pg": 20
      },
      "cross_mod.ring_mod": {
        "conf": "high",
        "pg": null
      },
      "filters.0.type": {
        "conf": "high",
        "pg": 464
      },
      "filters.0.slopes": {
        "conf": "_verify",
        "pg": null
      },
      "filters.0.key_tracking": {
        "conf": "high",
        "pg": 30
      },
      "filters.1.type": {
        "conf": "high",
        "pg": 468
      },
      "filters.1.slopes": {
        "conf": "high",
        "pg": 468
      },
      "filters.1.slope_switchable": {
        "conf": "high",
        "pg": 468
      },
      "filter_routing": {
        "conf": "high",
        "pg": 425
      },
      "envelopes.count": {
        "conf": "high",
        "pg": 31
      },
      "envelopes.stages": {
        "conf": "high",
        "pg": 31
      },
      "lfo.count": {
        "conf": "high",
        "pg": 19
      },
      "lfo.waveforms": {
        "conf": "high",
        "pg": 27
      },
      "lfo.sync": {
        "conf": "high",
        "pg": 27
      },
      "modulation.mod_matrix": {
        "conf": "high",
        "pg": 34
      },
      "modulation.mod_matrix_size": {
        "conf": "high",
        "pg": 34
      },
      "modulation.patchbay": {
        "conf": "medium",
        "pg": 153
      },
      "modulation.vibrato_lever": {
        "conf": "medium",
        "pg": 22
      },
      "performance.velocity": {
        "conf": "high",
        "pg": 39
      },
      "performance.aftertouch": {
        "conf": "high",
        "pg": 38
      },
      "performance.mod_wheel": {
        "conf": "high",
        "pg": 22
      },
      "performance.pitch_bend": {
        "conf": "high",
        "pg": 22
      },
      "fx_onboard": {
        "conf": "high",
        "pg": 33
      },
      "io.audio_out": {
        "conf": "high",
        "pg": 153
      },
      "io.midi": {
        "conf": "high",
        "pg": 153
      },
      "io.usb": {
        "conf": "high",
        "pg": 153
      },
      "io.cv_gate": {
        "conf": "high",
        "pg": 153
      },
      "control_style": {
        "conf": "high",
        "pg": null
      }
    }
  }
}