
synthesthetic
Loud86/100Turns the M-VAVE FM-1 and SMK-37 into an audio/video synth. It's the first firmware for them that sends video over USB, so the instrument shows up as a camera in OBS, Zoom and FaceTime.
synthesthetic is custom firmware for the M-VAVE FM-1, by @michaeljsmalley. Open source under GPL-3.0, 2 stars on GitHub.
forM-VAVE FM-1·by@michaeljsmalley
Unclaimed. Is this yours? Sign in with GitHub as @michaeljsmalley to claim it.
Betasynthesthetic-0.3.fwsc· 596 KB· +4 files
GPL-3.0· michaeljsmalley/synthesthetic·michaeljsmalley.github.io/synthesthetic/·downloads come from the creator’s GitHub releases
v0.3-betaSynthesthetic 0.3 betaBeta5 files
Synthesthetic turns the M-VAVE FM-1 and the M-Vave SMK-37 into an audio/video synth. It sends 30 visualizers to your computer over USB, on the same cable as USB-MIDI and USB audio, and the instrument is still a four-track groovebox underneath. This release brings the groovebox up to SLOOP 2.8.3 and runs on the SMK-37. It's still a beta, tested on one FM-1 and one SMK-37 Elite, with macOS.
What's new
- The SMK-37 (Pro, Elite and MKE-P37) runs Synthesthetic. The middle 27 keys are the FM-1's keys, with velocity; the outer keys play more notes, or drums on the drum track; the 16 pads show the step grid and play the drum kit; the faders have five banks, levels, filters, reverb and delay sends, and VISUAL, the visualizer's four knobs; the pitch wheel bends and the mod wheel adds vibrato. USB video and SCREEN mode work the same, from the keyboard's own display. The board layer is M. Geisler's (genkigenki), from the SMK-37 port of SLOOP. SMK37.md has every control.
- SLOOP 2.8.3 underneath, up from 2.7.1: a NOTES piano-roll editor on the synth tracks and a per-step sheet on the drums, filter resonance on every track, a settable punch-in fade, MIDI expression and bank select, a steadier external MIDI clock, held notes kept under others while recording, drums that no longer drop out, a sample played again starting from silence, and a hardened second core.
- SYSTEM > RESET in the menu: forget MIDI LEARN, put every setting back, or erase everything, with two presses of OCT+ to confirm.
- The installer carries a package for each instrument and picks the right one for the device it finds. The Play page is 0.3 too.
Updating from 0.2
- On the FM-1, install it the same way as 0.2. Your projects, presets, kits and samples are kept. The USB audio interface is listed in a new order for macOS 15, so if the Synthesthetic audio input is missing afterwards, unplug the FM-1 and plug it back in once.
- On an SMK-37 running one of genkigenki's ports, or M-Vave's official V016, the installer writes Synthesthetic directly. The first boot clears the previous firmware's data in the shared store; the keyboard's calibration and the way back to the official firmware are untouched. Back up the whole flash first, as with every custom firmware.
- The HOME menu has six sections on the FM-1 now, SCREEN, LIGHTS, AUDIO, SEQ, SYSTEM and VJ, and nine on the SMK-37.
Known limits
- On the SMK-37, DAW mode, the TRS MIDI OUT jack and the pedal input come from genkigenki's layer unchanged and have not been tried on a unit yet.
- Windows and Linux are untested, as before.
v0.2-betaSynthesthetic 0.2 betaBeta1 file
Synthesthetic turns the M-VAVE FM-1 into an audio/video synth. It sends 30 visualizers to your computer over USB, on the same cable as USB-MIDI and USB audio, and the FM-1 is still the same four-track groovebox underneath. This release is about recording that video and sound cleanly. It's still a beta, tested on one FM-1 and with macOS only.
What's new
- SCREEN mode sends the FM-1's display pixel for pixel. The video used to shrink the display to three quarters of its size, which merged thin strokes, so an M could read as an N. To fit the whole display, the USB video is now 320 × 240 instead of 320 × 180. The visualizers keep their exact pixels, with a black band above and below.
- USB audio no longer has little blips while an app records the video at the same time. The FM-1 now answers the computer's requests for audio on time even while video goes out on the same cable.
- Changing a setting during a USB recording no longer repeats a moment of sound in the recording. The change shows at once, and the FM-1 saves it to memory after a second of silence.
- The USB rescue screen says SYNTHESTHETIC USB RESCUE.
Updating from 0.1
- Install it the same way you installed 0.1. Your projects, presets, kits and samples are kept.
- Your computer picks up the new picture size by itself. If an app still shows the old one, choose the FM-1 again in its camera list or restart the app.
- Some apps crop a camera's picture to fill a wide window, which cuts off the top and bottom of SCREEN mode. Look for a setting that keeps the camera's original shape, such as Original ratio in Zoom's video settings.
Installing
- The easiest way is the web installer in Chrome or Edge: https://michaeljsmalley.github.io/synthesthetic/webapp/installer/
- From a terminal, with this repository:
python3 tools/fm1_install.py synthesthetic-0.2.fwsc - You can install directly over official V15, Dinghy, SLOOP or Synthesthetic 0.1. If your FM-1 runs any other custom firmware, go back to official V15 with M-UPGRADE first.
- Back up your flash before you install a custom firmware for the first time. The handbook explains how: https://michaeljsmalley.github.io/synthesthetic/handbook/#back-up-first
The firmware file
synthesthetic-0.2.fwsc, package identity FM-1_952, version SYNTHESTHETIC 0.2 BETA.SHA-256:
5563ab139360ae58b26152cf453c04f6b19d1070bad6d87393f8d19d34826928Known limitations
- It has only been tested on macOS. Windows and Linux use the same standard USB video driver, so they should work, but nobody has tried them yet.
- To make room for the video code in the flash, SLOOP's PIANO and FLUTE sample sets were left out, and the sampled drum kits use Felucca's Hügelton Sample Pack instead of SLOOP's CC0 kit.
If something goes wrong
Hold OCT− while switching on to open the USB rescue, then install again. The handbook's recovery section covers the other options: https://michaeljsmalley.github.io/synthesthetic/handbook/#recovery-and-safety
Thanks to isod89 for SLOOP, Leo Kuroshita and Hügelton Instruments for Felucca, zvenson for Dinghy, and everyone in the FM-1 community who shared their research and tools.
v0.1-betaSynthesthetic 0.1 betaBeta1 file
Synthesthetic turns the M-VAVE FM-1 into an audio/video synth. It's the first FM-1 firmware that sends video to a computer over USB. Plug your FM-1 in, choose it from the camera list in OBS, Zoom, FaceTime or another video app, and you'll see 30 visualizers that react to your music. There's no camera in the FM-1. It's in that list because a USB camera is the standard way to get video onto a computer, so you don't need a driver or capture card. The FM-1 is still the same four-track groovebox, with the synth engines, sequencer and drum machine of SLOOP 2.7.1.
This is the first release, and it's a beta. It has been tested on one FM-1, and with macOS only, so expect rough edges and use it at your own risk.
What's in it
- 31 visual modes, including scopes, spectrum displays, drum-reactive shapes, Milkdrop-style feedback effects and SCREEN, which sends the FM-1's own display as the video.
- Video over USB that needs no driver. It sends 320 × 180 MJPEG at 30 frames per second, on the same cable as USB-MIDI and USB audio.
- Nine palettes, an autopilot that changes the picture on the bar, an attract mode, and an overlay on the video that can show the tempo and a title.
- Control over the visuals from the FM-1's knobs, MIDI, the VJ page in the web editor or the camera settings in your video app.
- A Play page that runs this firmware in your browser on a 3D FM-1, so you can try it first: https://michaeljsmalley.github.io/synthesthetic/play/
Installing
- The easiest way is the web installer in Chrome or Edge: https://michaeljsmalley.github.io/synthesthetic/webapp/installer/
- From a terminal, with this repository:
python3 tools/fm1_install.py synthesthetic-0.1.fwsc - You can install directly over official V15, Dinghy or SLOOP. If your FM-1 runs any other custom firmware, go back to official V15 with M-UPGRADE first.
- Your projects, presets, kits and samples are kept.
- Back up your flash before you install a custom firmware for the first time. The handbook explains how: https://michaeljsmalley.github.io/synthesthetic/handbook/#back-up-first
The firmware file
synthesthetic-0.1.fwsc, package identity FM-1_951, version SYNTHESTHETIC 0.1 BETA.SHA-256:
981c42c8dd6a361684415594fb595016449abd3ba149777f5163f9d697a5cdf5Known limitations
- It has only been tested on macOS. Windows and Linux use the same standard USB video driver, so they should work, but nobody has tried them yet.
- To make room for the video code in the flash, SLOOP's PIANO and FLUTE sample sets were left out, and the sampled drum kits use Felucca's Hügelton Sample Pack instead of SLOOP's CC0 kit.
- The USB rescue screen still says SLOOP USB RESCUE.
If something goes wrong
Hold OCT− while switching on to open the USB rescue, then install again. The handbook's recovery section covers the other options: https://michaeljsmalley.github.io/synthesthetic/handbook/#recovery-and-safety
Thanks to isod89 for SLOOP, Leo Kuroshita and Hügelton Instruments for Felucca, zvenson for Dinghy, and everyone in the FM-1 community who shared their research and tools.