Skip to content

M-VAVE FM-1 (FM-106 Beta4): 192 free presets & MIDI CC chart

192 free presets to load from the browser, and M-VAVE FM-1 MIDI implementation: 54 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_fm106
Source 📘 From the manufacturer's documentation
Firmware fm106-beta4
Revision FM-106 Beta4 (alternative firmware by PatttF)
Upstream vendor-doc
Driver file devices/m-vave/fm-1.vendor.fw-fm106-beta4.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 · DUELL 1.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 · 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

192 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 192 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-fm106-beta4.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /fm1_fm106/bank_select_msb 63

From Claude or any MCP client, the osc-bridge mcp server exposes this driver as fm1_fm106: 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 (54)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/fm1_fm106/bank_select_msb 0 0–127 continuous Track
/fm1_fm106/mod_wheel_dco_lfo_depth 1 0–127 continuous Track
/fm1_fm106/volume_vca_level 7 0–127 continuous Track
/fm1_fm106/sub_level 9 0–127 continuous Track
/fm1_fm106/vca_level 11 0–127 continuous Track
/fm1_fm106/hpf_mode 12 0–127 continuous Track
/fm1_fm106/noise_level 13 0–127 continuous Track
/fm1_fm106/bank_select_lsb 32 0–127 continuous Track
/fm1_fm106/sustain 64 0–127 switch Track
/fm1_fm106/env_sustain 70 0–127 continuous Track
/fm1_fm106/vcf_resonance 71 0–127 continuous Track
/fm1_fm106/env_release 72 0–127 continuous Track
/fm1_fm106/env_attack 73 0–127 continuous Track
/fm1_fm106/vcf_cutoff 74 0–127 continuous Track
/fm1_fm106/env_decay 75 0–127 continuous Track
/fm1_fm106/vcf_env_mod 76 0–127 continuous Track
/fm1_fm106/vcf_lfo_mod 77 0–127 continuous Track
/fm1_fm106/vcf_key_track 78 0–127 continuous Track
/fm1_fm106/dco_pwm_depth 79 0–127 continuous Track
/fm1_fm106/lfo_rate 80 0–127 continuous Track
/fm1_fm106/lfo_delay 81 0–127 continuous Track
/fm1_fm106/arp_rate 82 0–127 continuous Track
/fm1_fm106/fx_1_type 83 0–127 continuous Track
/fm1_fm106/fx_1_mix 84 0–127 continuous Track
/fm1_fm106/fx_1_rate 85 0–127 continuous Track
/fm1_fm106/fx_1_character 86 0–127 continuous Track
/fm1_fm106/bender_dco 87 0–127 continuous Track
/fm1_fm106/bender_vcf 88 0–127 continuous Track
/fm1_fm106/arp_mode 89 0–127 continuous Track
/fm1_fm106/arp_range 90 0–127 continuous Track
/fm1_fm106/dco_pulse_on 91 0–127 continuous Track
/fm1_fm106/dco_saw_on 92 0–127 continuous Track
/fm1_fm106/chorus_mode 93 0–127 continuous Track
/fm1_fm106/dco_sub_on 94 0–127 continuous Track
/fm1_fm106/dco_range 95 0–127 continuous Track
/fm1_fm106/pwm_mode 96 0–127 continuous Track
/fm1_fm106/env_polarity 97 0–127 continuous Track
/fm1_fm106/vca_mode 98 0–127 continuous Track
/fm1_fm106/step_accent 99 0–127 continuous Track
/fm1_fm106/step_slide 100 0–127 continuous Track
/fm1_fm106/step_ratchet 101 0–8 continuous Track
/fm1_fm106/seq_tempo 102 0–127 continuous Track
/fm1_fm106/seq_step_division 103 0–9 continuous Track
/fm1_fm106/seq_pattern_length 104 0–127 continuous Track
/fm1_fm106/seq_gate_length 105 0–127 continuous Track
/fm1_fm106/seq_swing 106 0–100 continuous Track
/fm1_fm106/transport 107 0–3 continuous Track
/fm1_fm106/record_arm 108 0–127 continuous Track
/fm1_fm106/clear_all_p_locks 109 64–127 continuous Track
/fm1_fm106/edit_cursor_step 110 0–127 continuous Track
/fm1_fm106/edit_cursor_pitch_row 111 1–127 continuous Track
/fm1_fm106/clear_cursor_step 112 64–127 continuous Track
/fm1_fm106/sync_mode 113 0–2 continuous Track
/fm1_fm106/debug_telemetry_query 119 0–127 continuous Track

SysEx commands (3)

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

Performance MIDI

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

Limitations

FM-106 Beta4 by PatttF (GPL-3.0), a instrument firmware for the FM-1. real firmware in firmware/src/ (src/ is an older copy); Roland Juno-106 SysEx subset (F0 41 3x); no CC120/123, no CC10/91. Channels: one MIDI IN channel: 0 = All/omni (default) or 1-16; separate MIDI OUT channel (default 1); USB and TRS MIDI IN. Pitch bend: 14-bit pitch bend; depth via bender DCO/VCF params (CC87/88); no RPN. Aftertouch: none. Clock: SYNC mode (CC113 / menu): slave follows F8 and FA/FB/FC; master sends F8/FA/FB/FC; off ignores. MIDI out: USB: every sound parameter change as its CC (g_param_cc table) on MIDI OUT channel, seq params CC102-106, transport CC107, seq notes, clock when master; Juno-106 APR patch dumps. NRPN: none. SysEx `F0 pack7(00 59 cmd len24 body chk) F7`: M-UPGRADE vendor update protocol (installers, hub): cmd 0x11 handshake answers the package identity; F0 22 24 35 7F F7 starts the pulled update. SysEx `F0 22 24 35 7D F7`: soft key: reboot into the bootloader. SysEx `F0 41`: Roland Juno-106 style: 32 IPR param (ctrl 0x00-0x0F + switches), 31 APR manual audition, 30 APR store to slot, 33 rename, 34 dump request -> APR reply, 35 commit to flash (ack), 36 reset user presets (ack), 37 patch/bank select, 39 battery query; channel nibble not checked. SysEx `F0 7D 46 4C`: absent: no Felucca editor protocol, no INFO reply. SysEx `F0 43`: absent: no raw DX7 SysEx parser. Identity: vendor identify FM-1_906 (tools/build.py:50; platform.c default FM-1_907 overridden), rescue FM-1_000; no editor INFO; USB product "FM-106" (usb.c:278).

Frequently asked questions

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

SynthHub has 192 free sounds for the M-VAVE FM-1, shared by 1 creator 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 74 (0–127), named /fm1_fm106/vcf_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 54 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.