Web Flasher https://18nelli18.github.io/Modded-Cycles/flasher/
Hey everyone,
I’ve been digging deep into the Model:Cycles firmware (OS 1.13) with Claude Code to push the little FM groovebox beyond its factory limits.
The project is called Modded-Cycles, and it is completely open-source (Python/C/JS toolchain). No official proprietary Elektron binaries are distributed in the repository — patches are applied directly to your own official syx file.
GitHub Repository: github.com/18nelli18/Modded-Cycles
What’s working right now
1. In-Browser Web Flasher (Web MIDI)
You don't need a compiler or command line:
If you prefer raw command line or custom builds:
Bas
Safety & Recovery
Let me know what you think or if you take it for a spin!
Hey everyone,
I’ve been digging deep into the Model:Cycles firmware (OS 1.13) with Claude Code to push the little FM groovebox beyond its factory limits.
The project is called Modded-Cycles, and it is completely open-source (Python/C/JS toolchain). No official proprietary Elektron binaries are distributed in the repository — patches are applied directly to your own official syx file.
GitHub Repository: github.com/18nelli18/Modded-Cycles
What’s working right now
- 6-Track USB Multi-Out: Stream each of the 6 tracks as independent mono stems over USB into your DAW instead of just the stereo sum.
- Safe USB Updates (6ch-usbup): Unlike earlier multi-output experiments, this build preserves the USB bootloader/upgrade path so you don’t get locked out of future USB flashes.
- Syntakt’s SD VINTAGE Machine on Model:Cycles:
- The Syntakt audio engine shares a ColdFire architecture with the Model series. By supplying both official model-cycles_OS1.13.syx and Syntakt_OS1.41.syx, the tool relocates and injects the actual Syntakt SD VINTAGE engine and lookup tables into the Cycles (replacing the stock SNARE engine). Knobs map 1:1 to their Syntakt behavior (pitch sweep, decay, noise balance). Verified sample-identical in emulation and successfully tested on real hardware.
- The Syntakt audio engine shares a ColdFire architecture with the Model series. By supplying both official model-cycles_OS1.13.syx and Syntakt_OS1.41.syx, the tool relocates and injects the actual Syntakt SD VINTAGE engine and lookup tables into the Cycles (replacing the stock SNARE engine). Knobs map 1:1 to their Syntakt behavior (pitch sweep, decay, noise balance). Verified sample-identical in emulation and successfully tested on real hardware.
- Workflow Quality-of-Life Tweaks (thanks to drumkilla):
- Latching Mute: Hold TRK + tap FUNC to lock mute mode — mute tracks freely with one hand.
- Trig Preview: Sequencer stopped? Hold a step and press PAGE to audition it (including p-locks, length, and pitch).
- Browser Scroll: Long preset/sound names smoothly scroll in the sound browser.
- Latching Mute: Hold TRK + tap FUNC to lock mute mode — mute tracks freely with one hand.
- Cross-flashing Model:Samples OS: Verified working on real hardware (requires MIDI IN interface to return to Cycles OS).
1. In-Browser Web Flasher (Web MIDI)
You don't need a compiler or command line:
- Open the web flasher in a Chromium browser (Chrome, Edge, Opera, Brave).
- Connect your Model:Cycles over USB and enter CONFIG > UPGRADE.
- Select your desired tweaks and drop your official model-cycles_OS1.13.syx and Syntakt_OS1.41.syx (if running SD Vintage).
- The patched binary is assembled client-side in your browser's memory and sent via Web MIDI. Nothing is uploaded to any server.
If you prefer raw command line or custom builds:
Bas
Code:
# Example: 6 channels + SD Vintage + QoL tweaks
python3 tools/build.py -i model-cycles_OS1.13.syx -t 6ch-usbup,sdvintage-snare,latching-mute,trig-preview,browser-scroll
# Send to device
./flash.sh # macOS / Linux
flash.bat # WindowsSafety & Recovery
- Stock Firmware Recovery: If a bad flash occurs, you can always recover via the hardware bootstrap menu: hold FUNC while powering on, press TRIG 4 , and send the official .syx firmware via the physical MIDI IN jack (standard 3.5mm TRS Type-A adapter).
- Legal / Disclaimer: Not affiliated with Elektron. Modifying firmware is done at your own risk and technically voids your warranty.
- Working toward an 8-channel milestone (6 mono stems + stereo FX return) and eventually full 12-channel output (per-track stereo panned).
- Exploring porting other engines from the Syntakt digital engine.
- Investigating deeper chromatic scale modes and polyrhythmic tracks.
Let me know what you think or if you take it for a spin!
