Repository navigation
Releases: JackMechem/open-stomp-manager
Releases · JackMechem/open-stomp-manager
Release list
v0.9.0
Added
- Release channels: the
stablebranch follows the newest release andunstablethe newest release or pre-release
(vx.y.z-beta.ntags, published as GitHub pre-releases). Follow one from Nix or cargo instead of a version tag. - License files: dual-licensed under MIT or Apache-2.0, at your option.
- A contributing guide (
CONTRIBUTING.md) and issue and pull request templates.
Changed
- New interface. The app is now built with Tauri: the same Rust engine, with a React
interface in the system's web view (WebKitGTK on Linux, WebView2 on Windows, WKWebView on macOS) instead of egui.
Everything the egui app did is still there; the window is laid out the same way and adapts to narrow windows. - New downloads:
.deb,.rpmand.AppImageon Linux, a.dmg(and the zipped app) on macOS, and an
installer (plus a portable.zip) on Windows. On Linux the app now needs WebKitGTK 4.1; the packages pull it in. - Rewrote the README to be shorter and easier to follow.
- Developing:
pnpm tauri devinapp/reloads the window as you edit the interface (docs/building.md). The Nix dev
shell has Node, pnpm and WebKitGTK;tools/dev/shot.pytakes screenshots through WebDriver, headless.
Removed
- The egui interface (
crates/open-stomp-manager). ItsSTOMP_SCREENSHOThook is replaced bytools/dev/shot.py,
andtools/dev/watch.shbypnpm tauri dev.
v0.8.1
Changed
- Built against open-stomp-lib 0.6.1 (a CI-only patch; no library behaviour change from 0.6.0).
v0.8.0
Added
- Built against open-stomp-lib 0.6.0 (Bluetooth).
- Wireless: with the pedal's Wireless setting on, the app also finds and connects to it over Bluetooth LE MIDI, with
no pairing (open-stompblefeature). It is listed in the port menu as "JME STOMPBOX (Bluetooth)" with a Bluetooth
sign, the header says "· Bluetooth", and everything works as over USB except that the sync takes about 20 s.
Auto-connect and the port menu prefer USB. NAM/IR imports work over Bluetooth too (about 10 s per upload), which
the official app doesn't offer.
Changed
- macOS: the bundle's Info.plist has a Bluetooth usage description (macOS kills an app that uses Bluetooth without one).
- Linux: building needs the D-Bus headers (
libdbus-1-dev) too. - Turning the pedal's preset knob several clicks jumps to where it stopped instead of stepping through every preset
on the way: after a preset change from the pedal, its messages are held until it has been quiet for 0.15 s (at
most 5 s), then applied together. Over Bluetooth each click's data trickles in for a few tenths of a second. - The edit-buffer read is padded like the official app's (open-stomp fix), so it can't return a stale record.
v0.7.1
Added
- Rename… on user AMP and IR slots (right-click a slot under User slots): changes only the name, the sound stays
(open-stomp-lib 0.5.1'srename_user_amp/rename_user_ir; the official app can't rename).STOMP_DEV=rename
opens the dialog at startup.
Changed
- Built against open-stomp-lib 0.5.1 (0.5.0 brought the NAM low-end fix, 0.5.1 rename). NAM imports (optimised) are much closer to the model in the low end: the fit
now weights every octave equally instead of leaving the bass almost unweighted. Re-amping a bass DI through the
pedal, the error against the model and IR drops from 5.2 to 3.3 dB at 40–160 Hz and from 3.5 to 2.1 dB overall,
together with the optimised IR import, whose fit now covers 30 Hz – 16 kHz.
v0.7.0
Added
- Built against open-stomp-lib 0.4.0.
- Import NAM model: Normalise level (on by default), every model at the same volume like NAM plugins, instead of
the often quiet level the model was captured at. A pure volume change. - Import IR… (menu, the user slots list, or right-click a user IR slot): pick a WAV impulse response and a slot;
it is converted with open-stomp's optimised IR conversion (default: fitted to the 384 samples the pedal plays,
much closer to the real IR on the pedal) or exactly like the official app, and uploaded. STOMP_DEV=import-iropens the Import IR dialog at startup.
v0.6.0
Added
- Import NAM model… (menu, the user slots list, or right-click a user AMP slot): pick a
.namfile and a slot;
the model is converted in the background (progress bar, cancel) and uploaded. The default is open-stomp's
optimised conversion (about a minute, closer to the real model than the official app's on hardware); the official
algorithm is the fast alternative. Native file dialogs viarfd(XDG portal on Linux through a runtime-loaded libdbus, no
GTK; the Nix package and dev shell provide libdbus). STOMP_DEV=importopens the import dialog at startup (for screenshots).
Changed
- Built against open-stomp-lib 0.3.0 (optimised NAM conversion).
- Debug builds compile the open-stomp library and
rustfftoptimised, so the NAM conversion stays usable.
v0.5.0
Added
- Preset search above the preset list: filter by name or slot (
lead,5,P05); Ctrl+F (⌘F) focuses it, Enter
selects the first match, Esc clears it. - The open-stomp library version is shown in the version chip's tooltip, the menu,
--versionand--help.
Changed
- The top bar is down to the app name, the status pill and one menu button. The menu holds the port picker,
connect/disconnect, re-sync, listen only, replay and the activity log toggle. - Calmer look: sentence-case headings and labels instead of all caps, and borders only on what should stand out
(the active preset, the selected block, focused fields). The menu has proper padding. - No monospace text: everything is set in Inter, with tabular digits built into the bundled font so changing
numbers stay put. JetBrains Mono is no longer bundled. - The activity log is hidden by default; open it from the menu or with Ctrl+L (⌘L on macOS), close it from its
header. - Builds against open-stomp-lib v0.2.0 (CI, releases and the Nix flake). The flake now locks
the library input instead of fetching the library's latestmain.
v0.4.0
Changed
- The protocol library and the connection engine moved to a separate repository and crate,
open-stomp (open_stomp), which the app now uses.
It replacescrates/stomp-protoand the app's owndevicemodule, carries the full protocol
documentation plus a library guide, and the capture-driven tests. Building the app now needs a
checkout ofopen-stomp-libnext to this repository (CI, the release workflow and the Nix
flake fetch it; CI and releases pin open-stomp-lib v0.1.0). - Documentation split: the protocol and reverse-engineering docs (01–09) now live in
open-stomp-lib and this
repository links there. Its own docs are about the app: a user guide,
building and architecture, and the README is
rewritten around the app.
v0.3.0
Changed
- Renamed the project and app to Open Stomp Manager, to keep clear of the vendor's
Stomp Manager name. The binary and crate are nowopen-stomp-manager(wasstomp-manager),
the macOS app isOpen Stomp Manager.app, the Linux desktop entry and icon are
open-stomp-manager, and the repository is
JackMechem/open-stomp-manager.
Fixed
- Repository and release links pointed at the wrong GitHub account.
- The declared minimum Rust version is now 1.95 (what egui 0.36 requires; 1.88 never built).
v0.2.0
Added
- Editor: control the pedal from the app.
- Select presets; Save and Save as… (rename and/or store in another slot) using the official
app's exact message sequence. - Pick effect models, switch blocks on/off, turn knobs (drag, scroll wheel, Shift for fine
steps), set preset volume. - Looper transport (rec/play/dub, stop, undo/redo, clear), levels, sync and mode; drum
play/stop, pattern and level. - System settings: input trim, global EQ, wireless, loopback.
- Select presets; Save and Save as… (rename and/or store in another slot) using the official
- Opening a block in the app shows its page on the pedal, like the official app.
stomp-proto: preset and settings encoders (Preset::to_raw,Settings::to_raw) and the
midi::hostcommand builders, tested byte-for-byte against the capture.- Cross-platform releases: CI on Linux, macOS and Windows; tag-triggered release builds
(Linux tarball, universal macOS.app, Windows.exe); app icons for every platform. - Version display in the app (and the window title),
--version, and this changelog.
Fixed
- macOS: the pedal is detected when plugged in after the app starts (CoreMIDI hotplug
notifications need a run loop on the MIDI thread). - Windows:
--help/--versionprint to the terminal in release builds.
Protocol findings
- Host → pedal CCs
0x40(drum pattern) and0x42/0x43(loop levels) confirmed on hardware. - The first byte of the
0x12preset-name write is the active preset.