mc-1
MC-1: original groovebox firmware for M-VAVE FM-1 — LA-inspired, acid and synthesized drums
- Custom firmware
- Stable
- Medium brick risk
- Reversible
This project hasn't been claimed by its maintainer yet, so its details come from the community. Is it yours? Claim it
MC-1 1.2.0 - rebuilt LA-PCM engine and sound bank
A new LA-PCM engine. All 112 LA sounds replaced.
Install and hear the new engine · Web emulator
This is an engine and instrument-data replacement, not just a preset expansion. Real recorded attacks restore piano, nylon guitar and orchestral character. Source-derived harmonic sustain frames share one phase accumulator, replacing the old generic detuned blend and repeated sustain motion. The 16 Acid presets, eight synthesized drum kits, eight melodic voices and four FX banks are retained.
New sound engine and recordings
- All 112 LA presets use real PCM attacks plus synthesized harmonic sustain. This remains LA-PCM, not a GM/SoundFont player or a full-note sample loop.
- Twenty-four source zones cover 17 instrument families: six piano registers, three nylon-guitar registers and 15 other families.
- Individual attack colours, PCM contribution and envelopes distinguish each preset. Phase-coherent, energy-matched sustain avoids unintended beating and per-note swells; plucked instruments retain measured non-cyclic decay.
- Reverb return level and mode-specific decay make ROOM and HALL easier to hear and distinguish, using the existing delay storage.
- Shorter attack-cache snapshots and family-indexed zone lookup remove the deadline misses found in the first installed candidate without changing the accepted audio. All eight approved representative WAVs remain byte-identical.
The selected recordings are CC0-1.0: Meta Open Sound piano/nylon guitar and VSCO 2 Community Edition's other 15 families. Firmware, original patches and compositions remain GPL-3.0-only. See NOTICE, the 24-zone source manifest and both retained Meta / VSCO licenses. The downloaded 752,311,261-byte piano source ZIP is not installed on the FM-1.
Hear 1.2.0
- Hip-hop piano, 86 BPM.
- Pop nylon guitar, 110 BPM.
- Chamber strings, 90 BPM.
- Updated NIGHT CIRCUIT and NEON SPIRAL full-groove demos.
These original compositions are native shared-C renders, not FM-1 recordings. The five 320 kbps MP3s have working native browser players and downloads on the product page. Audio hashes and export settings are retained. The representative four timbres have listener approval; numerical checks are not a blanket listening-approval claim for every remaining preset.
Installed and measured on an FM-1
The final package was installed successfully, restarted and reidentified as
FM-1_900. This is the updater identity, not an installed-version readout.
The package hash below identifies the tested image. A new flash backup was
explicitly declined by the operator; none was taken.
Eleven captures cover both built-in demos and four maximum-load cohorts: 8 melodic / 6 drum voices with 0, 1 or 2 Acid parts, and three monophonic Acid parts / 6 drums. The maximum-load settings use four FX banks, Analog 127, kit 6, R/D type 5, C/F type 5, sends 127 and active USB audio.
All eleven frozen 8,192-block timing windows pass. The accompanying 44.1 kHz/16-bit stereo USB recordings total 495 seconds; each 45-second file includes warmup, the active measurement and a post-STOP tail.
- Deadline misses, DMA-half changes and USB error deltas: 0.
- CPU1 remains READY, worker failures 0, guards intact.
- Minimum unused CPU1 user stack: 3,524 bytes.
- Every recording contains non-silent audio with no integer rail clipping.
- The originally failing first demo also passes three additional full captures.
The highest recorded whole-audio maximum is 69,184 raw timer ticks. This is tested-workload evidence, not a guarantee for arbitrary arrangements. A few captures contain physical master-ADC drift and are not matched speed comparisons. No new power-loss or forced-worker-failure trial is claimed. See raw counters and recording hashes.
The first installed candidate failed with deadline/DMA/USB errors. A cache-only candidate still failed the first demo once. Neither is the release image.
Size and reproducible identity
| Resource | Final | Limit or previous budget |
|---|---|---|
| PCM audio data | 384,240 B | 390,144 B |
| App | 503,980 B | 581,564 B |
| Globals | 55,692 B | 65,536 B policy |
| Pool | 303,464 B | 335,872 B policy |
| FWSC package | 610,089 B | Includes loader and fixed padding |
App SHA256:
9ebcd27952284c2298f4f8f51ac490b3f49cf012aa64ab15fe899d344ef51256
Package SHA256:
cb0b5454d3e459da11489f73818d4537093907aa13adee0230f3404227a701e4
Target source fingerprint:
54122b1698f1880d7b5895890e65ab7d87c57276dcbcc6f0747fd1f955081556
Checks include 31 native C executables, 51 Python tests, a fresh 31-executable ASan/UBSan build, exact single/dual-core PCM and complete state, all 4,096 FX combinations, 129 current audio renders, deterministic assets, pi32v2 linking, package/OTA/loader simulation and product/installer resource checks.
Installation and saved projects
Install mc-1-1.2.0.fwsc using the web installer or bundled desktop installer.
The unchanged original 1.0.2 single-core package remains available as a fallback,
Before you start
- How hard is it?
- EasyCopy a file or use a web page. No extra software.
- What you need
- A USB or MIDI cable
- Comfort with the command line
- A computer
- Can it break my device?
- Small chance of trouble, with a way to recover.
- Can I undo it?
- Yes. You can go back to the official software.
Did it work for you?
Did mc-1 v1.2.0 work on your M-VAVE FM-1?
No reports yet for v1.2.0.
One-tap reports from owners. Bricked reports are checked before they count.
Compatibility
Devices: M-VAVE FM-1.
No compatibility information yet.
Getting started
From the project's README ("Install on an FM-1"):
The firmware web installer belongs to this repository's GitHub Pages site. mc-1-web is only the emulator.
- Connect the FM-1 directly by USB and stop playback. Close other MIDI applications.
- Open the installer in a secure browser with Web MIDI SysEx support, such as desktop Chrome or Edge. Choose Connect FM-1 to discover the instrument automatically and read its identity; no MIDI port selection is needed.
- Choose 1.2.0 dual-core or 1.0.2 single-core, check the verified package, then choose Install firmware. Keep the page, USB and power connected until restart verification finishes.
The page verifies the pinned package's SHA256, CRCs, product identity and update loader before installation. It handles the loader and application stages and checks the restarted protocol identity. FM-1900 identifies the update protocol, not the MC-1 version. If interrupted during writing, reconnect the update-loader ports and retry the same package. The release also provides a desktop installer path for browsers without Web MIDI SysEx.
A raw .app.bin is not an installer. Updating does not reformat MC-1's project banks, but it is not a backup or a saved-data verification protocol. Electrical power-loss recovery remains unverified. See the package boundary.
Downgrading is not project conversion: 1.2.0 saves format 8; 1.0.2 cannot load those saves. The firmware switch retains the project banks, but saving after a downgrade can overwrite earlier projects. Keep a compatible backup …
Risk and recovery
- Brick risk
- Medium
- Reversible
- Yes
- Requires opening the device
- No
From the project's README ("Restore official V15"):
The same installer can return a working MC-1 to M-VAVE's official V15 firmware, including existing 1.0.1 installations. No intermediate firmware update is required.
- Download and keep M-VAVE's original V15 FM-1.fwsc from M-VAVE downloads. Do not select V14 or a renamed custom firmware.
- Open Restore official V15, select that file, and wait for verification. The page checks its exact SHA256, byte size and package layout locally; it does not upload or redistribute M-VAVE's firmware.
- Connect the FM-1, read the data-compatibility notice and acknowledge it, then choose Restore official V15. Keep the page, power and USB connected.
- Wait for restart verification as FM-1015. If writing is interrupted, reopen the page, select the same official file and retry from the update loader.
MC-1 projects and patches are not usable in V15. This is firmware restoration, not a backup, project conversion or factory reset; saved-data retention is not guaranteed. The separate factory USR patch bank is not rewritten. The browser preserves the official application image and pairs it with MC-1's verified RAM update loader, so the flash head is never rewritten and the recovery-record sector stays separate from the loader.
Releases
| Version | Name | Released |
|---|---|---|
| v1.2.0 | MC-1 1.2.0 — Rebuilt LA-PCM engine and 112 new soundsLatest | 20 October 2026 |
| v1.1.0 | MC-1 1.1.0 - dual-core firmware | 19 October 2026 |
| v1.0.2 | MC-1 1.0.2 | 18 October 2026 |
| v1.0.1 | MC-1 1.0.1 | 16 October 2026 |
| v1.0.0 | MC-1 1.0.0 | 16 October 2026 |
Credits, license and support
- License
- GPL-3.0