{"id":24294645,"url":"https://github.com/violet-black/midiverb3","last_synced_at":"2026-05-03T22:05:26.386Z","repository":{"id":272299141,"uuid":"916120710","full_name":"violet-black/midiverb3","owner":"violet-black","description":"Patch editor for Alesis Midiverb III hardware FX unit","archived":false,"fork":false,"pushed_at":"2026-04-30T18:10:54.000Z","size":1673,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-04-30T20:10:32.298Z","etag":null,"topics":["midi","midi-controller","midiverb","reverb"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/violet-black.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-13T13:51:48.000Z","updated_at":"2026-04-30T18:11:04.000Z","dependencies_parsed_at":"2025-01-13T15:29:39.848Z","dependency_job_id":"92e14f20-dd11-428c-b0f7-288ab0f95c7d","html_url":"https://github.com/violet-black/midiverb3","commit_stats":null,"previous_names":["violet-black/midiverb3"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/violet-black/midiverb3","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/violet-black%2Fmidiverb3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/violet-black%2Fmidiverb3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/violet-black%2Fmidiverb3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/violet-black%2Fmidiverb3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/violet-black","download_url":"https://codeload.github.com/violet-black/midiverb3/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/violet-black%2Fmidiverb3/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32586191,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["midi","midi-controller","midiverb","reverb"],"created_at":"2025-01-16T17:55:30.321Z","updated_at":"2026-05-03T22:05:26.379Z","avatar_url":"https://github.com/violet-black.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MidiVerb 3\n\nPatch editor for the [Alesis Midiverb III](https://www.vintagedigital.com.au/alesis-midiverb-iii/) hardware FX unit.\n\n![Screenshot](/resources/screenshot.jpg?raw=true)\n\n- [INSTALLATION](#Installation)\n- [SETUP](#Setup)\n- [USAGE](#usage)\n- [MENU REFERENCE](#menu-reference)\n- [PATCH REFERENCE](#patch-reference)\n- [ROUTING](#routing)\n- [TROUBLESHOOTING](#troubleshooting)\n\n## Installation\n\nDownload the [latest build](https://github.com/violet-black/midiverb3/releases) for your OS. It may require some\nOS permissions to launch.\n\nAll the app settings and the default bank are stored at your home folder, inside `.mverb3` hidden directory.\n\n*For advanced users: you can download the sources as Python package, install the dependencies with `pip3 install -r pyproject.toml`\nand run `python3 -m mverb3` with the same result. This should be a foolproof option if you have some compatibility problems\nwith the app.*\n\n## Setup\n\nOf course, you need a Midiverb III connected to your MIDI interface.\nGo to `File/Settings` (`midiverb3/Preferences` on Mac) and set up your Midiverb ports and MIDI channel.\n\nGo to `Device/Request Bank` and wait until the bank is loaded (~10s).\n\nIgnore the next step you don't need to store programs on the device and only wish to edit the parameters\nof the current buffer / store them manually from the device.\n\nDump the same bank back to the device unless you set up the MIDI program id to Midiverb program id mapping table by yourself.\nThe editor is organized in such a way that it maps all the editable presets to program numbers from 0 to 100.\nI.e. preset 100 becomes MIDI prog num 0, preset 101 becomes 1 etc...\n\n## Usage\n\nNOTE: Midiverb III is an old artefact. To make the work process more smooth and to preserve the device memory the editor\ndoesn't send parameter changes to the device buffer automatically. So if you have loaded a program or bank what is not\nstored on the device you have to manually send that program to the device buffer using `SYNC` button.\n(However, when you edit particular parameters from the UI their values are synchronized instantly).\n\nSelect a program slot. Check that the device changed its program number on the LCD.\n\nEdit some parameters. Check that the device noticed that (a dot should appear on the LCD).\n\nUse `File/Save Bank` to save to the current bank *on the computer* or `File/Export Program` to export as a single\nprogram SYX file. You can then load it to any other slot in any bank.\n\nIf you also want to store the edited parameters on the device itself, use `Device/Store Program`. It will be stored\nto the currently selected program slot.\n\n## Menu Reference\n\n### File/New\n\nCreate a new bank from the default template and open it.\nThe action will NOT automatically sync the bank to the device.\n\n### File/Open\n\nOpen a bank or a single program in the sysex format from a file. This way you can import banks and programs.\nThe action will NOT automatically sync the bank to the device.\n\n### File/Save Bank\n\nSave the current bank changes on the computer. The buffer is saved to the currently selected program slot.\nThe action will NOT automatically sync the bank to the device.\n\n### File/Save Bank As\n\nCopy the current bank to another location on the computer. You can use this for backups.\nThe action will NOT automatically sync the bank to the device.\n\n### File/Export Program\n\nSave a content of the buffer to a sysex file. Note that the program is stored with its current program id.\nThe action will NOT automatically sync the bank to the device.\n\n### File/Copy\n\nCopy the content of the buffer to the clipboard.\n\n### File/Paste\n\nPaste the content of the buffer from the clipboard. You can use this to copy patches between the slots.\nThis will automatically sync the buffer on the device but will NOT store in in the program slot.\n\n### Device/Store Bank\n\nSend the whole bank to the device. This operation may take up to 10 seconds.\nCAUTION: This operation will overwrite all the device data.\n\n### Device/Request Bank\n\nRequest the whole bank from the device.\nCAUTION: This operation will overwrite all the bank data on the computer.\n\n## Patch reference\n\n### LPF\n\nInput EQ which is actually a lowpass filter.\n\n### CHORUS\n\nSelect a chorus or flanger algorithm. Letters `XS` to `XL` indicate the depth of the effect. The slider indicates\nthe rate (speed) of the effect.\n\n### DELAY\n\nThe delay parameters. The `time` is in milliseconds. `Regen` is the feedback level. `Level` indicates how much of the\ndelay is routed to the mix.\n\n### REVERB\n\n`Decay` is the reverb decay, `Level` indicates how much of the reverb is routed to the mix. `ALGORITHM` allows you to\nselect the reverb algorithm.\n\n### LPF\n\nAnother lowpass filter may be either delay or reverb feedback signal filter depending on the algorithm.\n\n### MODULATION\n\nYou can select the source and the destination for the MIDI modulation of one of the delay parameter (yes, only one).\nThe modulation itself can be kinda glitchy, so I'd recommend limiting the rate of MIDI messages and use mono mode\nif using the note number or velocity modulation. The slider indicates the depth of the modulation.\n\n### SYNC\n\nSend current buffer (GUI values) to the device. To do this automatically on program switch you can set\n`Send buffer to device on prog change` flag in the app settings. By default on program change the device retains its\nstored program.\n\n### RECALL\n\nDiscard the edit buffer and revert to the program stored in the local bank (not on the device).\n\n## Routing\n\nAlthough not ideal, there's a certain notation for the internal routing in the algorithm select menu. You may try to\nget familiar with it or just tweak by ear.\n\n- `LP` - input lowpass filter (*EQ* in the manual)\n- `CHS` - chorus or flanger\n- `DLY` - standard delay up to 100ms\n- `XDLY` - extended delay up to 500ms\n- `REV` - reverb\n- `\u003e` - section routed to another, for example `CHS \u003e DLY` means *chorus routed to reverb*\n- `( )` - section is not mixed to the output bus, for example `(LP)` means that the lowpass filtered signal,\n   although routed somewhere, is not *directly* mixed to the output. Note that both delay and reverb may be routed to\n   the mix bus, but their level may be set to zero. The chorus doesn't have a separate level parameter, so it's eiter\n   all or nothing.\n- `|` - parallel routing, for example `CHS \u003e DLY | CHS \u003e REV` means *chorus routed to the reverb and to the delay in parallel*\n\nExamples:\n\n`(LP)  \u003e  CHS  \u003e  DLY  |  (LP)  \u003e  CHS  \u003e  REV`\n\n*Lowpass filter is routed to the chorus which routed to the delay. Also in parallel lowpass filter is routed to the chorus\nwhich is routed to the reverb. Lowpass filter is not mixed to the output.*\n\n`(LP)  \u003e  (CHS)  \u003e  XDLY`\n\n*Lowpass filter is routed to the chorus which is routed to the extended delay.\nBoth the lowpass filter and the chorus are not routed to the mix bus, but delay is.*\n\n## Troubleshooting\n\n### Will the app work with Midiverb I / II?\n\nI don't have one, so I don't know.\n\n### Which file format does the editor use?\n\nThe editor stores everything in the Midiverb III sysex format (programs and banks). Since Midiverb doesn't have program\nnames, the names are stored separately in a text file. You should be able to load any Midiverb III sysex data into the\neditor without a problem.\n\n### Unable to select programs below 100 using MIDI program change\n\nThere's no program bank feature on the Midiverb III, so the total number of selectable programs is limited to 127.\nCurrently, I don't have a feature to manually map those slots from the editor, but it's planned for the future.\n\n### Presets are not saved on the device\n\nBy default, the app is configured such way that it uses the internal memory as less as possible.\nYou can press `Device/Store Program` button to actually save the program in the selected program slot. Alternatively\nyou can store your banks / programs on the computer and use the `SYNC` button to load single patches into the current\ndevice buffer only when you need them.\n\n### The app doesn't start anymore\n\nTry going to your user home folder, locate and delete `.mverb3/settings.json` file.\nThis should reset the app to its default settings.\n\n### App doesn't switch programs etc\n\nCheck that the `program change` option is enabled on your MidiVerb device.\n\n### Strange behavior of sliders\n\nTo minimize the load on the device the sliders are designed to send their values only when you release the slider.\n\n### Hard to set a precise value\n\nClick on a slider once and then use the arrow up/down keys to set the exact value.\n\n### There's a time lag during tweaking\n\nYes, there is some mandatory MIDI lag, which is recommended by the Midiverb III service manual. It's an old piece of\ngear after all.\n\n### The device produces pops / clicks when using MIDI modulation from my DAW\n\nWell, for old hardware with a 3 mips CPU it's kinda expected. I've noticed that the unit can handle certain modulations\nbetter than another. Note number modulation works much better for chorus speed than for delay time for example. You\nhave to experiment.\n\nCheers.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fviolet-black%2Fmidiverb3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fviolet-black%2Fmidiverb3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fviolet-black%2Fmidiverb3/lists"}