Firmware

CTL-1

Hype: warming · 66

Turns the FM-1 into a MIDI controller that also carries a General MIDI sound set.

forM-VAVE FM-1·by@charlesvestal

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

Download v1.0

ctl-1.0.fwsc· 596 KB· +1 file

MPL-2.0· charlesvestal/fm1-ctl·charlesvestal.github.io/fm1-ctl/·downloads come from the creator’s GitHub releases

66 commits and 4 releases in the last year
4 releases
  1. v1.0CTL-1 1.0Latest2 files

    CTL-1 now runs on fm1-base, the MPL-2.0 base for FM-1 firmware on felucca-bsp, and is MPL-2.0 itself. That lets it ship with Bluetooth MIDI.

    • Bluetooth MIDI: the FM-1 shows up as "FM-1" to a computer or tablet (on a Mac: Audio MIDI Setup, Window, Show MIDI Studio, the Bluetooth button, Connect). Everything you play goes out over USB and Bluetooth at once.
    • It connects to Bluetooth MIDI devices too: on the Setup page, KNOB 1 picks a device found, SAVE connects or lets it go, and KNOB 4 turns Bluetooth on or off (kept).
    • The knobs follow their controllers when they're heard on the channel, so a device that sends back (like the OXI E16) stays in step.
    • A computer that has linked but isn't listening yet shows "No MIDI yet. Mac: reopen Audio MIDI Setup."
    • EDIT opens Sound and GLO opens Setup.
    • A held program change takes effect at once.
    • The autosave no longer rewrites the flash every few seconds while a device's knob turns (the lights flickered).

    Two files, either one installs over the other:

    • ctl-1.0.fwsc: USB, TRS and Bluetooth MIDI.
    • ctl-usb-1.0.fwsc: the same without Bluetooth.

    Install it from the browser (Chrome or Edge, the FM-1 plugged in): https://charlesvestal.github.io/fm1-ctl/install/ (it installs ctl-1.0.fwsc), or over USB with python3 base/tools/fm1_install.py ctl-1.0.fwsc.

  2. v0.9.2CTL-1 0.9.21 file
    • The screen reader no longer reads out the notes and chords you play (or a key's velocity on the Touch page). Pages, knobs, settings, steps, mutes, play/stop and messages are still read.
  3. v0.9.1CTL-1 0.9.11 file
    • Velocity and aftertouch support
    • Screen reader support
  4. v0.9CTL-1 0.91 file

    The first release of CTL-1: the M-VAVE FM-1 as a MIDI controller, with General MIDI sounds of its own.

    Install from Chrome or Edge with the FM-1 plugged in: https://charlesvestal.github.io/fm1-ctl/install/ Try it first in the browser, with sound: https://charlesvestal.github.io/fm1-ctl/emu/ Manual: https://charlesvestal.github.io/fm1-ctl/manual/

    What it does

    • Keys: 27 keys, ±3 octaves. With a scale (nine of them, any root) the white keys play its notes and the black keys its chords. Sustain on ENV (tap it twice to lock it), the mod wheel on LFO, panic on REC.
    • Knobs: four controllers in four banks, 16 in all, each with its own number (hold FX to set them). SELECT or FX steps through the banks; MASTER can send a controller too.
    • Arpeggiator: up, down, up-down, random or as played, 1/4 to 1/32, up to three octaves, with latch.
    • Sequencer: four drum tracks of Euclidean rhythms (steps, hits, rotation, note), edited on the keys, on their own channel.
    • Clock: its own (40–240 BPM) sent as MIDI clock with start and stop, or following yours.
    • Sounds: the 128 General MIDI sounds and the drum kit (Sonivox EAS) through the FM-1's speaker and headphones; PRESETS picks one, and the program change goes out too.
    • MIDI: USB out and in ("CTL-1 FM-1"); the TRS jack's MIDI in is passed on to USB.
    • Screen: X0X's top bar and knob row, in paper and ink. Settings save by themselves.

    Bluetooth MIDI comes in a later version.

    The file

    ctl-usb-0.9.fwsc (identity FM-1_6000900), for the command-line installer: python3 tools/fm1_install.py ctl-usb-0.9.fwsc. The web installer can also put M-VAVE's own firmware back.

    Built on Felucca by Leo Kuroshita (Hügelton Instruments), by way of X0X and FoMni-1. GPL-3.0-only.