Skip to content
altstrument

FM-SWITCH

Tool for FM-1 (M-VAVE)

iOS app that installs and swaps FM-1 firmwares from an iPhone over USB-C using CoreMIDI, with a catalogue of community firmwares that can be saved on the phone for offline flashing.

by Drew Robinson (ocean)

ActiveSource: openunspecified
M-VAVE FM-1 FM synthesizer, top view
Photo: M-VAVE, manufacturer product image, via m-vave.com

Brick risk. Flashing this carries a known, documented risk of damaging the device.

Distribution
Build from source yourself
License notes
No LICENSE file or license statement in the repository. The FM1Kit package it depends on is MIT.
Source
github.com https://github.com/ocean/FM-SWITCH

Description

The app speaks the FM-1's SysEx update protocol through the FM1Kit Swift package, including the reboot into the update loader, the identity check and resuming an interrupted write. Its firmware list merges the Firmware Hub catalogue with the list on fm1-editor.com and finds .fwsc packages in GitHub releases and project pages. It shows a note on whether each firmware supports USB rescue mode. M-VAVE's official firmware is not bundled: the app links to M-VAVE's download page and checks the downloaded file against the known hash. A simulated FM-1 lets it run in the iOS Simulator. The project's notes record a first install on one FM-1, and the project is built from source with XcodeGen and Xcode.

Install notes

No release is published. Generate the Xcode project with xcodegen and build it for an iPhone (iOS 17 or later); project.yml expects an FM1Kit checkout next to it. The app says that it cannot repair a device that no longer starts, since the chip's ROM recovery needs a computer.

Version history

FM-SWITCH version history
VersionDateNotes
main @ 0726e742026-10-16No tagged releases; this is the latest commit.

Back to FM-1