Firmware

SEQ-4

Rising64/100

SEQ-4 for M-Vave FM-1

SEQ-4 is custom firmware for the M-VAVE FM-1, by @devrvega. Open source under GPL-3.0, latest release v0.1.0 (October 2026).

forM-VAVE FM-1·by@devrvega

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

Downloads
0
Stars
0
Forks
0
Commits
2
Last commit
Download v0.1.0

seq4-0.1.0.fwsc· 595 KB

GPL-3.0· devrvega/SEQ-4·downloads come from the creator’s GitHub releases

2
Commits
1
Releases
2 commits and 1 release in the last year
Activity · last 12 months

SEQ-4 for the M-VAVE FM-1

Build and test Latest release License: GPL-3.0

SEQ-4 turns the M-VAVE FM-1 into four MIDI sequencers for the instruments around it. Each sequencer plays on its own channel and USB port (four ports, A–D: 64 channels) and runs in one of six modes: a melody, chords, eight tracks of drums, or one of two generative modes. The screen is the grid, sixteen steps by eight rows of lit pads; the white keys are the steps, the black keys the rows. Patterns, songs, LFOs, mod lanes, Euclidean and drum generators, a harmonizer, recording and capture are all there. The FM-1 makes no sound of its own apart from a metronome click: SEQ-4 is a controller.

SEQ-4 on the FM-1's screen: the grid of a melody, chords, drums

Try it in the browserThe same code the FM-1 runs, playing your synths through Web MIDI. No FM-1 needed.
Install itFrom Chrome or Edge, with the FM-1 on USB. Nothing to install on the computer.
Read the manualGetting started in ten steps, then every key, mode and menu.
DownloadThe firmware file (seq4-X.Y.Z.fwsc) of every release, and its source.

The six modes

ModeWhat a sequencer plays
MonoA melody: a note a step on the rows of a scale (31 scales), with ties, legato, glide, octaves
PolyUp to seven notes a step: play a hand on the keyboard, tap a step and it is there
ChordA chord a step: its type (two banks, from triads to thirteenths), voicing, spread, strum, bass; its own arpeggiator
MultitrackEight tracks of triggers, each its own note, channel, port, length and division: drums. Euclid and a drum generator
StochasticChances: how likely each of the twelve notes is, how far up or down, how long; it improvises
MatricealFour tracks of ten lanes (triggers, note, interval, pulses, velocity, octave, gate, chance, repeats, glide), each its own length and speed

Each step has its velocity, gate (up to a tie or legato), octave, glide, timing offset, repeats (x1–x5, or skipped) and a condition: a chance, A:B (play the A-th of every B times), first, fill, previous and their opposites. A sequence is up to 128 steps in eight pages, any division from four bars to 1/64, forward, back, pendulum, ping-pong, random or drunk, with a loop inside it.

In short

ALGORITHM · PRESETSThe sequencer (1–4) · its pattern (in at the next bar while it plays)
White keysThe page's 16 steps: tap on / off; hold one and press another: a tie
Black keys 1–8 · 9, 10 · 11The rows (Multitrack: its tracks) · the page back and on · MUTE
A step held + a black key · a black key held + stepsThe step's note · drawn on that row
Knobs 1–4Velocity, octave, gate, mod (a step held: its own; GLO held: tempo, swing, scale, root)
PLAY · RECPlay / stop (held: a fill) · record (stopped: step by step; twice: capture)
SEQ · ENV · LFO · ARP · FX · SELThe keyboard · mod lanes · LFOs · arpeggiator · random · division, length, loop
HOME · SAVE · EDIT · GLOBack (held: the patterns) · save · undo (held: copy, paste) · shift (held: the setup)

Hold any button for a second and a card says what it does.

Installing, and going back

  • From the browser: the web installer (Chrome or Edge, a USB data cable).
  • From the command line: download seq4-X.Y.Z.fwsc from the latest release, then pip3 install mido python-rtmidi and python3 tools/fm1_install.py seq4-X.Y.Z.fwsc.
  • Going back: the installer's "Back to the stock firmware" puts M-VAVE's firmware back, as does M-VAVE's own updater, M-UPGRADE. Any other FM-1 firmware installs over SEQ-4 as it would over the stock one.
  • Your saved work, and other firmwares': SEQ-4 keeps its project, its 64 patterns and its songs in the FM-1's main store, where some firmwares keep their samples or songs. Its first save replaces what another firmware had saved there.

Installing other firmware is at your own risk, though it's hard to get stuck: an FM-1 that fails to start twice comes up in a safe mode the installer can reach, and the manual's Troubleshooting covers the rest.

MIDI

The FM-1 has one USB port and a TRS MIDI input; SEQ-4's MIDI goes out over USB, on four ports (A–D) that a computer sees as four MIDI devices, sixteen channels each. Its clock and start / stop go out on the ports you choose. MIDI coming in (USB, or the TRS jack: a keyboard, a clock) records, transposes, plays the keyboard's sequencer, follows the clock, loads patterns by program change, and drives MIDI mappings; the TRS jack's messages can be passed on to a port. To play hardware synths, connect the FM-1 to a computer or a USB MIDI host.

Status

SEQ-4 is young (0.x). It has been measured on an FM-1: the sequencers run every 0.73 ms. With all four as busy as they get (eight tracks of drums with repeats and eight mod lanes, seven-note chords on every step, strummed and arpeggiated chords, a 1/32 melody under two fast LFOs: about 1,800 MIDI messages a second at 200 BPM), a tick takes at most 545 µs of its 725 and none is late. At 120 BPM its sixteenths arrive at a computer 125.0 ms apart, give or take 0.4 ms. The screen draws about 60 frames a second. Feedback on how it plays is what helps most now.

Ideas and problems

  • Something you'd like: a feature request.
  • Something wrong: a bug report (the version is on the screen when the FM-1 starts).

Make it your own

Fork it, change it, release your own: CONTRIBUTING.md says where things are, how to give your version its own name and identity, and how to send changes back. Every push is built and tested on GitHub; a tag vX.Y.Z makes a release, and the site (emulator, installer, manual) follows it.

tests/run_tests.sh                               # the tests, the app in a simulator
./build.sh                                       # build/seq4.fwsc (see BUILDING.md)
python3 tools/fm1_install.py build/seq4.fwsc     # install it over USB

Credits

Many of SEQ-4's ideas come from the OXI One sequencer by OXI Instruments: its modes, conditions, generators, arranger and ways of working. SEQ-4 is its own, written for the FM-1; no code, text or design of theirs is in it. The drum generator uses the drum map of Grids by Emilie Gillet (Mutable Instruments, GPL-3.0-or-later). SEQ-4 is built on CRT-4, LCD-4 and IND-1, themselves built on AMB-1 by Charles Vestal: the frame, screen, simulator and emulator. The platform (hardware layer, USB, update loader, storage, installer) is Felucca's by Leo Kuroshita (Hügelton Instruments), by way of X0X, FoMni, AMB-1, IND-1, LCD-4 and CRT-4. The idea of running FM-1 firmware in the browser comes from Groove OS. GPL-3.0-only; see LICENSING.md.

M-VAVE and FM-1 are trademarks of their owners, as is OXI One. SEQ-4 is not affiliated with M-VAVE, OXI Instruments, Mutable Instruments, Charles Vestal or Hügelton Instruments.