Schwung - Mini-JV Module
ROM-based PCM synthesizer emulator module for Schwung.
Based on mini-jv880 by giulioz (which is based on Nuked-SC55 by nukeykt).
Quick Start
Already have ROMs and Schwung installed?
- Launch Schwung → Module Store → Sound Generators → Mini-JV → Install
- Copy your ROM files to Move (see Requirements below)
- Select Mini-JV from the main menu
- Play pads - you're making Mini-JV sounds!
- Jog wheel to browse 192+ patches
- Encoders 1-8 for quick sound shaping (Cutoff, Resonance, Attack, etc.)
- Menu button for deep editing
See the full manual for complete control documentation.
Features
- Full Mini-JV emulation with 192 internal patches
- Multiple SR-JV80 expansion card support (sorted alphabetically for easy browsing)
- Menu-driven parameter editing with real-time value display
- Encoder macros for quick sound shaping:
- Patch mode: Cutoff, Resonance, Attack, Release, LFO Rate, LFO Depth, FX Send, Level
- Performance mode: Level, Pan, Coarse/Fine Tune, Key Range, Velocity
- Touch-sensitive encoders show current parameter values
- Full Patch mode editing (all 4 tones with complete parameter access)
- Full Performance mode editing:
- Part parameters (level, pan, tune, key range, velocity, patch selection)
- Save performances to 16 Internal slots
- Select expansion card for Card patches (with bank pages for >64 patch expansions)
Prerequisites
- Schwung installed on your Ableton Move
- SSH access enabled: http://move.local/development/ssh
Requirements
ROM files (v1.0.0):
jv880_rom1.bin(32KB)jv880_rom2.bin(256KB)jv880_waverom1.bin(2MB)jv880_waverom2.bin(2MB)jv880_nvram.bin(32KB)
Note: ROM version 1.0.0 is required. Version 1.0.1 ROMs do not work correctly.
Expansion Cards
Multiple SR-JV80 expansion cards are supported simultaneously. Place expansion ROMs in the roms/expansions/ subfolder with filenames containing "SR-JV80".
Examples:
SR-JV80-01_Pop.binSR-JV80-04_Vintage_Synth.binSR-JV80-10_Bass_Drum.binSR-JV80-97_Experience.bin
ROMs are automatically unscrambled on first load. A patch cache is created to speed up subsequent loads.
Supported expansion cards:
- 8MB cards: SR-JV80-01 through SR-JV80-19 (Pop, Orchestral, Piano, Vintage Synth, World, Dance, etc.)
- 2MB cards: SR-JV80-97, 98, 99 Experience series
Installation
Quick Install (pre-built)
- Download and install the module:
curl -L https://raw.githubusercontent.com/charlesvestal/schwung-jv880/main/minijv-module.tar.gz | \
ssh ableton@move.local 'mkdir -p /data/UserData/schwung/modules/sound_generators && tar -xz -C /data/UserData/schwung/modules/sound_generators/'
- Copy your ROM files to the device:
scp jv880_rom1.bin jv880_rom2.bin jv880_waverom1.bin jv880_waverom2.bin jv880_nvram.bin \
ableton@move.local:/data/UserData/schwung/modules/sound_generators/minijv/roms/
Build from Source
Requires Docker (recommended) or ARM64 cross-compiler.
git clone https://github.com/charlesvestal/schwung-jv880
cd schwung-jv880
./scripts/build.sh
- Place your ROM files in
dist/minijv/roms/ - Run:
./scripts/install.sh
User Manual
See docs/JV880_MOVE_MANUAL.md for the full control map and editor workflow.
MIDI Channel
In Patch mode the JV-880 listens on a single MIDI channel (the "basic channel"), so the channel that Schwung forwards pads/external MIDI on must match it or you'll hear silence even though notes reach the plugin. Set the Schwung receive/forward channel to 1 for the default JV-880 basic channel, or change the JV-880's basic channel via its System menu and match Schwung to that.
In Performance mode each part can listen on its own channel, so multi-channel input works as expected without any host-side configuration.
Signal Chain Integration
Mini-JV works both as a standalone module and as a sound generator in Signal Chain patches. The install script adds chain presets for using Mini-JV with arpeggiators and effects.
Current Limitations
- Patch saving: Patch edits affect the temporary working patch but cannot be saved to Internal bank yet.
- Some packed parameters: A few part parameters (transmit/receive switches, output select, MIDI channel routing) aren't exposed in the UI yet.
Performance
- CPU usage: ~38% on Move's CM4 (varies with patch complexity)
- Latency: ~46ms (buffered emulation)
License
This module includes code from:
- mini-jv880 by giulioz
- Nuked-SC55 by nukeykt
See LICENSE file for details.
AI Assistance Disclaimer
This module is part of Schwung and was developed with AI assistance, including Claude, Codex, and other AI assistants.
All architecture, implementation, and release decisions are reviewed by human maintainers.
AI-assisted content may still contain errors, so please validate functionality, security, and license compatibility before production use.