Mocky
Mocky shows pictures on the FM-1's 240 × 240 screen, sent from a web page over the USB cable.
- Custom firmware
- Stable
- Low brick risk
- Reversible
Source codeWebsite: charlesvestal.github.io
This project hasn't been claimed by its maintainer yet, so its details come from the community. Is it yours? Claim it
Mocky 0.9.1: Mocky now works with the FM-1 Screen Reader.
Install: https://charlesvestal.github.io/fm1-mocky/install/ (Chrome or Edge, FM-1 on USB), or python3 tools/fm1_install.py mocky-0.9.1.fwsc.
Send pictures: https://charlesvestal.github.io/fm1-mocky/app/
- A picture can't be put into words, so Mocky tells the reader everything else it shows: which picture is on the screen ("picture 3 of 7"), a new picture arriving from the page and whether it was kept, the gallery being cleared, the slideshow and its pace, and the room left.
- Every note on the screen is said too: SAVE, HOME, the keys, the slideshow. When something doesn't happen (the gallery is full, there's nothing to keep, fewer than two pictures for a slideshow), the reader says what didn't happen and what to do.
- Open the reader in Chrome with the FM-1 plugged in. It speaks with its own voice, or hands the text to your computer's screen reader.
- The reader shares the USB cable with the picture page: sending pictures works just as before, with or without the reader open.
Identity FM-1_1000901. Built on Felucca by Hügelton Instruments, by way of FoMni-1. GPL-3.0.
Before you start
- How hard is it?
- MediumInstall an app on your computer and follow its steps.
- What you need
- A USB or MIDI cable
- Comfort with the command line
- A computer
- Can it break my device?
- Very unlikely to break anything.
- Can I undo it?
- Yes. You can go back to the official software.
Did it work for you?
Did Mocky v0.9.1 work on your M-VAVE FM-1?
No reports yet for v0.9.1.
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 ("Build, test, run"):
./build.sh # build/mocky.fwsc (identity FM-1100; --release X.Y) sh tests/runtests.sh # host tests, web coder, the whole app in the simulator (and the reader) python3 tools/fm1install.py build/mocky.fwsc --yes # flash the attached FM-1 cd web && python3 -m http.server 8000 # then http://localhost:8000/ in Chrome
How it works: web/mocky.js scales the picture to 240 × 240, reduces it to RGB565 and run-length codes it, then sends it in SysEx messages (F0 7D 4D ...), one reply each, resuming where the FM-1 says it is. firmware/src/app/mock.c takes them, checks the CRC, decodes into a framebuffer and, if asked, appends it to the gallery in flash (0x97000–0xDBFFF, Felucca's data area). Both files document the format and the protocol.
Built on Felucca by Leo Kuroshita (@kurogedelic), Hügelton Instruments, by way of FoMni-1. GPL-3.0-only. M-VAVE and FM-1 are trademarks of their respective owners.
Risk and recovery
- Brick risk
- Low
- Reversible
- Yes
- Requires opening the device
- No
From the project's README ("Screen reader"):
Mocky tells the FM-1 Screen Reader what it shows, over USB: which picture is on the screen ("picture 3 of 7"), a picture arriving from the page and whether it was kept, the slideshow, the room left, and what each button did. A picture itself can't be put in words, so the reader says what Mocky knows about it. Open the reader page in Chrome with the FM-1 plugged in; it speaks with its own voice, or hands the text to your computer's screen reader. (Its SysEx, F0 7D 53 52, shares the cable with the pictures' F0 7D 4D.)
Felucca's safety stays: OCT− + OCT+ held 5 s for update mode, safe mode after two failed starts, the web installers can put any firmware (or M-VAVE's) back.
Releases
| Version | Name | Released |
|---|---|---|
| v0.9.1 | Mocky 0.9.1Latest | 15 October 2026 |
| v0.9 | Mocky 0.9 | 10 October 2026 |
Credits, license and support
- License
- GPL-3.0