The M-Vave FM-1 is exactly the type of device I have a soft spot for. I may not have an intended use for the FM synthesizer, but when a low price is combined with a high cool factor, I’m unable to keep it out of my cart.
Initially advertised as a pocket-sized cousin of the famous Yamaha DX7 synthesizer, the FM-1 is a bargain at just $59.72 after fees. At launch, it was a great device that did what it said on the box, but not much more.
But in July, some intrepid experts on Reddit’s r/synthdiy board began reverse engineering the FM-1’s original firmware to expand the device’s capabilities. In September, custom firmware began to appear. We haven’t even made it to October and there are already more community firmware projects available to install on the FM-1 than I could hope to cover.
I decided to check out some of them. And in case you’re wondering: Yes, it plays. Condemn.
Original firmware and open FM1
On October 17, M-Vave announced FM1 Open, a software package that encourages FM-1 owners to develop custom firmware for the synth turned into anything else you can imagine. Along with the FM1 Open package came an SDK, a browser-based workbench, and version 15 of the original firmware, now an open platform that you can update and develop. The unit’s 27 physical piano keys and modest 1.54-inch TFT display lend themselves well to a host of projects, musical or otherwise.
Typically, when a community of enthusiasts reverse-engineers a closed device, an official patch quickly appears. However, M-Vave has taken the opposite approach. The app’s source code is released under GPLv3, and the company even includes an in-browser emulator to test custom firmware before updating the actual hardware. There is one caveat, however: the underlying synthesizer engine that powers the original FM-1 package is still distributed as a closed binary, so it is the application layer of the stack that is actually open. I don’t think that diminishes M-Vave’s gesture towards the community, but it’s worth noting.