Firmware Hero
0

fm1-base

An MPL-2.0 base and template for M-VAVE FM-1 firmware, on felucca-bsp: platform, host simulator, browser emulator, Bluetooth MIDI, WiFi, USB audio

  • Custom firmware
  • Beta
  • Low brick risk

Source code

This project hasn't been claimed by its maintainer yet, so its details come from the community. Is it yours? Claim it

Before you start

How hard is it?
EasyWith Slipway.
What you need
  • Comfort with the command line
  • A computer
Can it break my device?
Very unlikely to break anything.
Can I undo it?
The project doesn't say. Assume you can't.

Did it work for you?

Did fm1-base work on your M-VAVE FM-1?

No reports yet.

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 ("fm1-base"):

A base for M-VAVE FM-1 firmware, on felucca-bsp: the platform layer above the hardware (screen, drawing and fonts, panel, LEDs, audio, MIDI over USB and TRS, storage, the screen reader), a host simulator and a browser emulator that run the same app, and the tools to build, package and install it. MPL-2.0: an app built on it may use any licence. See DESIGN.md, LICENSING.md and CREDITS.md.

Status: beta. Two firmwares are built on it so far, and they are its proof points: CTL-1 (with Bluetooth MIDI) and Radio (with WiFi). Expect the platform interface (include/plat.h) and fm1.toml's settings to change before 1.0.

The template (template/) runs on an FM-1: screen, keys and their LEDs, sound, MASTER, encoders, settings kept across a power cycle, USB-MIDI both ways, the screen reader, and an update started from the template itself. The same app runs on the computer in the host simulator and in the browser: try the template's at .

git clone --recursive https://github.com/charlesvestal/fm1-base

Optional parts

A firmware has only what its fm1.toml asks for (and its app.h, for velocity and pressure); every build prints the parts it has.

PartHow to include itWhat the app calls
Bluetooth MIDI with a computer or tabletble = true (tools/build.py --no-ble leaves it out of one build)TOBLE, PORTBLE; platblestate, platbleconnected; platbleenable
…

Read the full instructions

Risk and recovery

Brick risk
Low
Requires opening the device
No

Credits, license and support

License
MPL-2.0