Skip to content

M-VAVE FM-1 (DUELL 1.0): 128 free presets & MIDI CC chart

128 free presets to load from the browser, and M-VAVE FM-1 MIDI implementation: 72 CC, 3 SysEx commands, each named, for Claude (MCP), SuperCollider or any OSC app.

Device M-VAVE FM-1
Vendor M-VAVE
OSC prefix /fm1_duell
Source 📘 From the manufacturer's documentation
Firmware duell-1.0
Revision DUELL 1.0 (alternative firmware by OSCILL/R)
Upstream vendor-doc
Driver file devices/m-vave/fm-1.vendor.fw-duell-1.0.json
Not tested on the device yet

This driver comes from documentation or community data and has not been checked on real hardware. If you own one, a quick test and a pull request promoting it helps everyone — see CONTRIBUTING.

Other versions of the M-VAVE FM-1 (93)

stock firmware V15 · stock firmware V16 · 386DX 1.0.2 · AMB-1 1.3 · BEETLE 1.4.25 · Bunker Evolved 1.0.0 · Bytemania 1.2.0 · Carnac OS 0.9.3 · Chipbox 1.2.4 · ChoralRoot 0.26.1 · fm1-chord 0.3 · Clipper 1.1-experimental · CoralFlower 0.5 · CS-1 2026.10.22 · CTL-1 1.0 · Cut-A-Dor 1.2.1 · Dinghy 0.4 · DRIFT 0.8 · DUB-1 1.3.0 · Evander's Music Box 1.5.2 · ETCH 1.61 · Fart Machine One 1.1.0 · Felucca 1.6.1 · Felucca [Salt] 0.9-salt14 · Felucca 8 Patterns 1.6.1_and_sequences · FiMba-1 0.6.1 · Flyfish 1.0.1-4e5efb8 · FM-106 Beta4 · FM1-GM 1.0.2 · FMEL-1 1.0 · FMini-1 1.8.0 · FOMAJAM 0.1.6 · FoMni 0.4 · FRASIL 1.0 · Frodhes 0.9.4 · FuMi-1 1.1.0 · Pocket GammaWave 1.0-GW · GHOULBOX 2.3.2 · Golana 1.2 · Golana DZ Edition 0.1.0-beta · GR!MM 1.0 · HERA 1.1 · Hortator 0.23.3 · HYP-1 1.5.54 · Jangada 1.0.1 · JIANT FM 0.9.9-beta4a-813869d · KAWA 0.5 · Ketch 0.1-beta · LOOM-8 0.7 · MAKU 1.0 · MC-1 1.2.0 · Melodee 1.4.5 · MIN-1 0.2.1 · Mini-Tone 1.0.2 · MODELAR 0.3 · MONK-1 0.9.1 · MORPHEUS 1.0.0 · Mutable Dreams 1.0 · MYCELIUM 1.0-test · Niagara Drift 0.2 · No Man Sky FM 0.5 · NOIZ DEMONS 666 · OberVave 3.0.1 · FM1 Open V14 · OPN-1 2.0.0 · ORBIT 0.7.1 · PIGEON 0.5.0-beta.1 · Polly 0.5 · PurpleMonkey 0.11 · FM1 Quest 38 · Rainbow Mode 1.1.5-rb · Shine On 3.0.1 · FM-1 SID 0.1 · SID-1 1.0.0 · SIDOU 0.3.1 · Skiff 1.4 · SLOOP 2.8.1 · SLOOP ALG ALG05-TEST · SLOOP DX7 Banks 2.5-b28-test · SLOOP Floyd FM 2.4 · sloopDX 4.0 · Tessera 2.0.1 · Tonitor 2026.10.23 · TRIBE 0.3-beta · Tuna 1.0-fbc56d3 · Unholy Union 0.2.3 · Vector37 0.3.2 · WaveLoop FM-1 1.0.5.2-midi23 · winampFM Synth 0.12 · X0X 1.1.0 · X0X-RMX 1.1.0 · ZEN-1 1.2 · zp12 2.5

Try it in your browser

Play a virtual FM-1 with any of its community firmwares: M-VAVE FM-1.

Sounds for it

128 sounds shared for it, each with its author's credit and licence: open one to listen and load it into your device from the browser.

All 128 sounds for it

How do you control it?

Find the MIDI ports, then start the bridge with this driver:

osc-bridge detect        # prints the ready-to-run line for what is plugged in
osc-bridge run --device devices/m-vave/fm-1.vendor.fw-duell-1.0.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /fm1_duell/mod_wheel 63

From Claude or any MCP client, the osc-bridge mcp server exposes this driver as fm1_duell: ask “what can the M-VAVE FM-1 do?” and it reads this map with list_routes. See the MCP guide.

MIDI CC and NRPN parameters (72)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/fm1_duell/mod_wheel 1 0–127 continuous Track
/fm1_duell/glide 5 0–127 continuous Track
/fm1_duell/level 7 0–127 continuous Track
/fm1_duell/pan 10 0–127 continuous Track
/fm1_duell/insert_a 12 0–127 continuous Track
/fm1_duell/insert_b 13 0–127 continuous Track
/fm1_duell/sub_osc_1_14_17_sub_oscillator 14 0–127 continuous Track
/fm1_duell/sub_osc_2 15 0–127 continuous Track
/fm1_duell/sub_osc_3 16 0–127 continuous Track
/fm1_duell/sub_osc_4 17 0–127 continuous Track
/fm1_duell/multi_filter_1 18 0–127 continuous Track
/fm1_duell/multi_filter_2 19 0–127 continuous Track
/fm1_duell/multi_filter_3 20 0–127 continuous Track
/fm1_duell/twin_filter_1_21_29 21 0–127 continuous Track
/fm1_duell/twin_filter_2 22 0–127 continuous Track
/fm1_duell/twin_filter_3 23 0–127 continuous Track
/fm1_duell/twin_filter_4 24 0–127 continuous Track
/fm1_duell/twin_filter_5 25 0–127 continuous Track
/fm1_duell/twin_filter_6 26 0–127 continuous Track
/fm1_duell/twin_filter_7 27 0–127 continuous Track
/fm1_duell/twin_filter_8 28 0–127 continuous Track
/fm1_duell/twin_filter_9 29 0–127 continuous Track
/fm1_duell/lfo1_twin_cutoff 30 0–127 continuous Track
/fm1_duell/lfo2_twin_cutoff 31 0–127 continuous Track
/fm1_duell/spread 34 0–127 continuous Track
/fm1_duell/saturation 35 0–127 continuous Track
/fm1_duell/insert_c 36 0–127 continuous Track
/fm1_duell/multi_filter_4 41 0–127 continuous Track
/fm1_duell/engine_e1 44 0–127 continuous Track
/fm1_duell/engine_e2 45 0–127 continuous Track
/fm1_duell/engine_e3 46 0–127 continuous Track
/fm1_duell/engine_e4 47 0–127 continuous Track
/fm1_duell/engine_e5 48 0–127 continuous Track
/fm1_duell/engine_e6 49 0–127 continuous Track
/fm1_duell/engine_e7 50 0–127 continuous Track
/fm1_duell/engine_e8 51 0–127 continuous Track
/fm1_duell/env2_attack 52 0–127 continuous Track
/fm1_duell/env2_decay 53 0–127 continuous Track
/fm1_duell/env2_sustain 54 0–127 continuous Track
/fm1_duell/env2_release 55 0–127 continuous Track
/fm1_duell/sustain 64 0–127 switch Track
/fm1_duell/morph_fader 70 0–127 continuous Track
/fm1_duell/resonance 71 0–127 continuous Track
/fm1_duell/release 72 0–127 continuous Track
/fm1_duell/attack 73 0–127 continuous Track
/fm1_duell/cutoff 74 0–127 continuous Track
/fm1_duell/decay 75 0–127 continuous Track
/fm1_duell/lfo_rate 76 0–127 continuous Track
/fm1_duell/vibrato_depth 77 0–127 continuous Track
/fm1_duell/vibrato_fade 78 0–127 continuous Track
/fm1_duell/sustain_79 79 0–127 continuous Track
/fm1_duell/chorus_rate_global 80 0–127 continuous Track
/fm1_duell/chorus_depth_global 81 0–127 continuous Track
/fm1_duell/delay_time_global 82 0–127 continuous Track
/fm1_duell/delay_feedback_global 83 0–127 continuous Track
/fm1_duell/delay_colour_global 85 0–127 continuous Track
/fm1_duell/delay_mix_global 86 0–127 continuous Track
/fm1_duell/reverb_size_global 87 0–127 continuous Track
/fm1_duell/reverb_damp_global 89 0–127 continuous Track
/fm1_duell/reverb_low_cut_global 90 0–127 continuous Track
/fm1_duell/reverb_send 91 0–127 continuous Track
/fm1_duell/delay_send 92 0–127 continuous Track
/fm1_duell/chorus_send 93 0–127 continuous Track
/fm1_duell/detune 94 0–127 continuous Track
/fm1_duell/imix 95 0–127 continuous Track
/fm1_duell/morph_roll 102 0–127 continuous Track
/fm1_duell/morph_amount 103 0–127 continuous Track
/fm1_duell/cycle_envelope_1_114_118 114 0–127 continuous Track
/fm1_duell/cycle_envelope_2 115 0–127 continuous Track
/fm1_duell/cycle_envelope_3 116 0–127 continuous Track
/fm1_duell/cycle_envelope_4 117 0–127 continuous Track
/fm1_duell/cycle_envelope_5 118 0–127 continuous Track

SysEx commands (3)

OSC address Arguments
/fm1_duell/program program: u7
/fm1_duell/system/info
/fm1_duell/system/identify

Performance MIDI

Notes, pitch bend and any CC are also available: /fm1_duell/note/on <note> <velocity>, /fm1_duell/cc/<number> <value>, /fm1_duell/pitchbend <0-16383>, /fm1_duell/program_change <n>.

Limitations

DUELL 1.0 by OSCILL/R (GPL-3.0), a instrument firmware for the FM-1. 2 parts; 128-entry CC table (docs/MIDI_MAP_DEFAULTS.csv); CC92 = delay send, CC94 = detune (differs from Felucca); bank select CC0/CC32 + PC. Channels: 2 parts; routing CH1-4: ch1 -> part 1, ch2 -> part 2; SEL -> selected part; LAYER uses part 1's channel. Pitch bend: RPN0 (Felucca). Aftertouch: Felucca. Clock: in AUTO/INT/USB/TRS. MIDI out: Felucca. NRPN: none. SysEx `F0 7D 46 4C`: Felucca editor + raw patch records (editor_patchraw.c); INFO 'FELUCCA DUELL x.y'. SysEx `F0 43`: DX7 .syx parsed only in web editor (web/editor/patchfile.js:90). SysEx `F0 00 32 45 00 00 00 40 7F F7`: vendor update identify query (00 59 11 packed); update protocol kept. Identity: vendor identify FM-1_901; editor INFO 'FELUCCA DUELL x.y'; USB 'DUELL'.

Frequently asked questions

Where can I find free presets for the M-VAVE FM-1?

SynthHub has 128 free sounds for the M-VAVE FM-1, shared by 2 creators with their credit and licence. Open one and load it into the synth from the browser (Chrome, Edge, Opera or Firefox), with nothing to install.

Which MIDI CC controls the filter cutoff on the M-VAVE FM-1?

CC 30 (0–127), named /fm1_duell/lfo1_twin_cutoff in SynthHub's map.

How many parameters of the M-VAVE FM-1 can be controlled over MIDI?

SynthHub's map of the M-VAVE FM-1 lists 72 MIDI CC parameters, each with its number, range and a readable name; the full chart is on this page.

Can an AI agent like Claude control the M-VAVE FM-1?

Yes: SynthHub's hosted MCP server knows the M-VAVE FM-1's MIDI map, and its browser relay lets the agent send it parameter changes or load a sound, each sound change confirmed by you.