fm1-backup-restore, image 1 from its README
1/10
Firmware

fm1-backup-restore

Loud94/100

Back up and restore your M-VAVE FM-1 from an Android phone.

fm1-backup-restore is custom firmware for the M-VAVE FM-1, by @workeffortwaste. Open source under MIT, latest release v0.9.6 (November 2026), 5 stars on GitHub.

forM-VAVE FM-1·by@workeffortwaste

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

Downloads
0
Stars
5
Forks
0
Commits
37
Last commit
Download v0.9.6

fm1-backup-restore.apk· 9.2 MB

MIT· workeffortwaste/fm1-backup-restore·downloads come from the creator’s GitHub releases

36
Commits
7
Releases
36 commits and 7 releases in the last year
Activity · last 12 months

[!NOTE] Are you here to try and fix an FM-1 but don't have a previous backup? Generate a stock v15 recovery snapshot.

FM-1 Backup & Restore for Android

Back up and restore your M-VAVE FM-1 from an Android phone.

Back up your M-VAVE FM-1 and restore it whenever you need to from your Android phone. Each backup is a complete flash snapshot you can return to at any point; the firmware, settings, projects, songs, and other data, stored exactly as they were when you saved it. Restore puts that data back byte for byte, leaving the protected bootloader completely untouched.

Support this project
Help support the work that goes into creating and maintaining my projects and sponsor me via GitHub Sponsors.

Download

The latest version can be downloaded from the link below or from the releases section on the repo.

Download the latest APK

Screenshots

custom-black-connected custom-black-backup-75

Use cases

Keep a factory-fresh backup

Keep a full-flash snapshot from when your FM-1 first arrives, so you can always return to a byte for byte factory state at the tap of a button.

Save songs and projects

Back up your songs, projects and patches together in one complete flash snapshot and return to it any any time.

Disaster recovery

Restore a known-good backup if an experiment or a change leaves the FM-1 in a state you don't want.

Firmware hopping

Switch between saved firmware backups, or restore your own clean base before installing new firmware, without worrying about settings or data from the last firmware being strewn across your FM-1.

Tinkering with your FM-1

You just like playing with the new shiny thing for your FM-1

Use at your own risk

Flashing or restoring your device carries an inherent risk of data loss or leaving it unusable. I've tested this tool over 100 times with writes and restores across different firmwares and versions, but I can't guarantee it's free of issues or will work with every phone.

This tool is provided as-is. Use it at your own risk, and I accept no responsibility for damage, data loss or other problems caused by its use.

Using the app

Requirements
You'll need Android 8 or later and a data-capable USB OTG cable (OTG?! If you've got a USBC cable that works with data, and a phone with a USBC port, you're good).

First, a bit of house-keeping; when you first launch the app it will require you to turn off background optimisation for the app on your phone, this is labelled as allowing background transfers. This is critical as it means the app can continue a backup or restore while the phone's screen is off, or if you switch apps.

It won't let you continue unless you toggle the setting.

Making a backup

Connect your FM-1 and tap Connect to FM-1. The app will restart it into recovery mode and ask for USB access. Once it's ready, tap Backup FM-1.

The app reads the full 1 MiB flash twice and checks the saved copy before adding it to your backup library. You can rename backups, pin the ones you want to keep close, and export a copy through the menu.

Keep an exported copy somewhere safe. Backups stored only inside the app data for convenience and are lost if you uninstall it or clear its data. If you want to keep a copy somewhere else export it via the settings in the app.

Restoring

Choose Restore from a saved backup's menu, or Import from file in the top menu to add a verified .bin backup to your library. The imported backup is not restored automatically.

Read the confirmation carefully: restoring replaces the FM-1's firmware, settings and patches (everything) outside the protected bootloader region.

Keep the USB cable and power connected until the restore has finished and been verified. Restores cannot be cancelled once started, and an interrupted restore can leave the FM-1 unable to boot normally.

Create a stock v15 recovery snapshot

Didn't manage to take a backup of your device before you started flashing custom firmware?

A fresh install of the app will nudge new users to create a recovery snapshot, alternatively you can choose Create a recovery snapshot from the top menu.

Material You theme
Create a recovery snapshot

The app then downloads and verifies the official v15 firmware update directly from M-VAVE, reconstructs a clean stock v15 flash, and adds the FM-1_015 RECOVERY backup to your library.

Once FM-1_015 RECOVERY is available in your backups, opening the menu on the backup and selecting restore will take your FM-1 back to a clean slate.

How's this work?
It takes all the regions of data that are available in the v15 .fwsc update and creates a complete flash snapshot using them. Any regions of data that are missing from the .fwsc (settings, BTIF, etc) are filled with FF and get automatically populated when the FM-1 boots.

Emergency bootloader recovery

Still having weird issues with your device even after stock recovery?

It may be that there are issues with your bootloader, as this is the only region that's not touched by the restore feature of this app.

You can verify the state of your bootloader from the Diagnostics menu.

After Verify bootloader finishes, its result dialog offers Emergency restore if your bootloader differs from a known stock image or custom bootloader. A recognised custom bootloader with an unmatched hash also qualifies; an unknown hash alone does not mean that the bootloader is corrupt.

Emergency Recover downloads the official v15 firmware from M-VAVE's repository and extracts the bootloader before offering to Proceed at my own risk. Unlike an ordinary restore, this explicitly replaces only the first 16 KiB of your FM-1's flash. Firmware, projects and settings outside that area are untouched.

[!WARNING] Interrupted or incorrect bootloader programming can prevent booting or recovery via SysEx and may require additional hardware to repair.

Themes

The app is built with Material 3 Expressive, with support for your Material You dynamic colors alongside the built-in FM-1 styled themes.

FM-1 Themes

Want a fixed look to match your synth? Choose FM-1 Themes in Settings and pick one of the built-in FM-1 styled palettes. The app uses the Black palette by default.

Choose App icon in Settings to pick an icon independently of your theme. Applying an icon closes the app.

Black theme
Black
Orange theme
Orange
Purple theme
Purple
Green theme
Green
Blue theme
Blue
Gray theme
Gray

Yes, orange is pretty ick, but so's the device colour - sorry.

Material You

Choose Material You in Settings to use your device's colors throughout the app.

Material You theme
Material You

App updates and privacy

The app checks the latest stable GitHub Release when opened, at most once every 24 hours. You can also check manually in Settings > App updates. Update checks contact GitHub directly and there's no additional third party tracking or analytics within the app.

What next?

What would you like to see next? More themes? Firmware flashing? Hassle me on social media or open an issue.

Troubleshooting

FM-1 not recognised

Don't worry if the app doesn't recognise your FM-1 when you plug it into your phone. You might be using firmware that changes its USB vendor and product IDs (VID/PID) to a combination I haven't accounted for yet.

Get in touch or open an issue and let me know which firmware you're using. I'll help get it recognised.

Sponsors

If you find the app useful, please consider supporting the work that goes into creating and maintaining my projects via GitHub Sponsors or buy me a coffee on Ko-fi.

Author

Chris Johnson - defaced.dev - @defaced.dev (Bluesky)

What would you like to see next? More themes? Firmware flashing? Hassle me on social media or open an issue.

License

This project is licensed under the MIT License.