Floyd Steinberg published a video called “Please steal this FM synthesizer UI idea”. A 4-operator FM synth where every operator envelope is drawn on one shared time axis. The full desktop synth (VST3/AU/LV2, with the editor) is free and MIT: GitHub - JonathanZeppa/FloydFM: Four-operator FM synthesizer after Floyd Steinberg's interface concept -- shared-axis envelope editor with his brightness gradient. VST3 / AU / LV2, MIT. · GitHub
For Zynthian and other Pi-based hosts there’s a companion build: FloydFM-Pi. This is the same FM engine as a headless LV2 in dependency-free Rust. Classic control ports (broadest host support), presets shipped as pset:Preset Turtle, the whole bundle is 334 KB. The .ttl is generated from the parameter table, so the manifest can’t drift from the code. GitHub - JonathanZeppa/FloydFM-Pi: FloydFM as a headless LV2 for Zynthian / Raspberry Pi -- Rust, no dependencies, 334 KB bundle. Sibling of JonathanZeppa/FloydFM. · GitHub
Honest status: verified on x86_64 Linux and in REAPER on Windows. Both ARM targets (aarch64 for current Zynthian images, armv7 for 32-bit Pi OS) compile clean but haven’t run on real hardware yet. If anyone here tries it on a Zynthian, I’d genuinely love to hear what happens. Prebuilt x86_64 download and the desktop versions are free at FLOYD-FM — FREE FM SYNTHESIZER — ZEDTRONICS .
This video got me interested in the challenge of building this synth, but also served as a way for me to better structure my coding environment for LV2, which I had not built before. I would eventually like to share one of my larger plugins with the Zynthian community - Ganymede in particular, both as a thank you to the community, and to promote the work that I’ve been doing over the past year.
Enjoy!
Jonathan