Firmware

LOOM-8

Hype: on fire · 96

Eight-track groovebox with nine sound engines and step-level tricks.

forM-VAVE FM-1·by@charlesvestal

Unclaimed. Is this yours? Sign in with GitHub as @charlesvestal to claim it.

Download v0.11

loom-0.11.fwsc· 597 KB· +2 files

MPL-2.0· charlesvestal/fm1-loom·downloads come from the creator’s GitHub releases

302 commits and 16 releases in the last year

LOOM-8 for the M-VAVE FM-1

LOOM-8 turns the M-VAVE FM-1 into a pocket groovebox: eight instrument tracks, each in its own colour, on ten engines (six synths: knit, rayon, jacquard, bellows, cane and voile; a sample player, a break slicer, a drum kit, and MIDI out to drive another synth), 85 factory presets; a 64-step sequencer with step tricks and parameter locks; players (arp, strum, hold); weave, which crosses two patterns (bar by bar, step by step, or one's rhythm with the other's notes); throws (momentary effects); a conductor track that moves the song through a progression; two send-effect tracks (the reverb with the PlayStation's reverbs among its modes), a mixer with EQ and a compressor on the master, scenes and a song. MIDI over USB, Bluetooth and the TRS jack, and as a USB MIDI host for a keyboard or synth (through a powered hub). Built on fm1-base and felucca-bsp, from Felucca by Leo Kuroshita (Hügelton Instruments), with X0X's sequencer discipline and Polly's menu paradigm.

Installing is at your own risk, though it's hard to get stuck: the web installer can put M-VAVE's firmware back, and an FM-1 that keeps crashing starts in a safe mode.

The design is in docs/superpowers/specs/2026-10-15-xy1-design.md.

Your projects and presets can be backed up to a computer and put back (the site's Backup page); your own samples load from their WAV files with tools/loom_samples.py (see the manual).

Building and testing

LOOM-8 is an app (app/) on fm1-base, a git submodule (base/): clone with --recursive. See BUILDING.md. tests/run_tests.sh runs everything on the host, silently (the audio goes to WAV files). LICENSING.md says where the code comes from.

Credits

The platform: fm1-base and felucca-bsp (MPL-2.0), from Felucca by Leo Kuroshita (Hügelton Instruments), with his permission (felucca-bsp#4). cane and voile: Mutable Instruments Braids by Emilie Gillet (MIT). The reverb's PlayStation modes: PSXVerb (MIT). The x drums: after MACHINEDRUM by Omodaka9375 (MIT); sophie: Sophie by Matt Estela (MIT); clang: digisophie (MIT). The factory breaks: free loops by u/FCTRYBEATS, with their permission; the plate reverb and the 909 kick, snare and clap: 9W9 by athousanddetails, under MPL-2.0 with his permission; the 909 hat: ER-99's sample by Matthew Cieplak, through 9W9 (GPL-3.0, in the sound bank only); the recorded instruments: Versilian Studios Chamber Orchestra 2 Community Edition (CC0). The fonts: Barlow and Terminus (SIL OFL 1.1). The second core's lessons: Melodee (keremimo) and Jangada (zednaked). The USB MIDI host: Melodee's, by Adrien Tibi and Kerem Kilic (MPL-2.0, in felucca-bsp). Bluetooth MIDI and Bluetooth audio: Optimist's own stack by Henri David (MPL-2.0, in fm1-base), with Android's SBC encoder (Apache-2.0) and micro-ecc by Kenneth MacKay (BSD-2-Clause); the radio's start-up tables and calibration after JieLi's AC79 SDK (Apache-2.0). The idea of a browser emulator: Groove OS.

LOOM-8's way of working owes a great deal to teenage engineering's OP-XY; LOOM-8 is not affiliated with teenage engineering.