Make hardware instruments behave like plugins. A Raspberry Pi 4B plays as an instrument track in Ableton Live today — Git-style total recall through the project’s own save/reopen, knobs as sample-accurate automation lanes, and offline bounce through the physical box.
Hardware synths, drum machines, and effects have connected to computers for forty years, and the connection is still fragile in one specific way: recall. Audio mostly works, MIDI mostly works — but reopen last month’s project and the hardware is not in the state you saved, and nothing will tell you. The deep integrations that fix this (multichannel USB audio, plugin-shell control, total recall) have existed only inside closed single-vendor ecosystems, because every vendor has to rebuild drivers, state sync, and DAW compatibility from scratch.
HARP is a complete, working implementation of that integration — with an open spec underneath, if you want to build a device on it. The reference device is a Raspberry Pi running a 16-part multitimbral, 8-voice-polyphonic synth (13 params per part); anything that speaks the protocol gets the same treatment from any conforming host:
- Total recall, Git-style — device state is content-addressed and hash-verified; a saved project reopens with the hardware provably in the saved state, every overwrite preceded by a free snapshot, every mismatch resolved through explicit safe actions — never silently. The archive doubles as patch time-travel: every state the box has ever been pushed over is one click away.
- Audio as a plugin — a dedicated stream into the plugin shell that bypasses the OS audio stack (no aggregate-device hacks), including a host-paced mode where the hardware renders deterministically, byte- identical, faster than real time: offline bounce through a physical box at ~25× real time, with 16 ms of reported latency at DAW buffers ≤ 256 — in the neighborhood of a good audio interface.
- Multitimbral, addressed like plugins — one physical device is one session, and several shell instances can share it: drop the plugin on a handful of DAW tracks and each instance drives its own part — its own channel, params, recall state, and stereo output (16 parts, with a summed main mix alongside the per-part outputs). A recall-safe Part knob persists each track’s part in the project, and that per-part state moves intact between the VST3 and AU formats (the CLAP shell writes the same recall bundle).
- Polyphonic, with per-voice modulation — each part is an 8-voice pool with deterministic voice allocation, so overlapping notes ring out on their own voices instead of stealing one. Modulation is non-destructive and per voice: a VST3 Note Expression or a CLAP per-note parameter modulation bends a single sounding note’s filter cutoff without touching the stored patch — and the two formats render byte-identically (the device applies the §9.5 mod the same regardless of which shell sent it).
- Sample-accurate everything — DAW automation becomes device-interpolated ramps applied within ±1 sample; notes travel as UMP; an event fence makes “applied late” structurally impossible rather than statistically rare. Turn a knob on the hardware and the DAW records the automation (echo).
- Musical time — devices follow the DAW’s transport: tempo, position, loops. The reference device’s arpeggiator locks to Live’s grid sample-exactly, survives loop wraps, and renders a byte-identical groove — determinism extended to musical time.
- Identity, timing, diagnostics — engine versioning and parameter-map hashing protect old songs from new firmware, latency is measured (never guessed), and error counters at every layer end “it glitched” support threads with evidence.
- Roadie-proof sessions — unplug the cable mid-song and plug it back: the shell reconnects, re-asserts the project’s state, and audio resumes. Hostile or corrupt wire input ends in a clean session reset, never a crash (every parser is fuzzed; a live abuse test is part of CI).
Tag Archives: polyphonic
Synth1 ~ Analog Virtual Synthesizer
A software synthesizer intended for use with DTM software. Supports VSTi plug-in / AU plug-in format. This software is freeware. Functionally, it is modeled after the red synth Clavia NORD LEAD2 and has the following features:
- 2 Oscillator + 1 Sub Oscillator, FM Modulation, Ring Modulation, Synchro, Modulation Envelope
- 4 types of filters and distortion
- 2LFO (host sync possible)
- Equipped with arpeggiator (host synchronization)
- Equipped with tempo delay (host synchronization) and stereo chorus / flanger
- Legato mode, portamento
- 32-tone polyphonic
- With 128 preset tones.
- Thorough reduction in operation weight. Use of SSE, etc.
- Automation compatible
Triple Cheese ~ Cross-platform Synth
Triple Cheese: Luscious and cheesy, winner of the 2006 KVR Developer Challenge, is a truly unique freeware synthesizer. No traditional oscillators or wavetables, no FM or phase distortion and no analogue modelled filters here. A touch unusual and a little cheesy, Triple Cheese is quite capable of some surprising sounds.
Triple Cheese avoids classic synthesis techniques—no subtractive, frequency modulation (FM) or additive synthesis. Rather, it employs various types of comb filter, often in series, to generate and modify sound. Think of the comb filters as very short chromatically tuned delays. Three modules are arranged in series and either generate their own sound, or process the output of the previous module.
The features for each module can result in sounds that might seem a little “cheesy” or retro (think early 1980s digital synths). But when pushed, you will find Triple Cheese creates some surprisingly lush sounds.
- 8 different modes per comb filter module (11 modes total)
- Polyphonic (up to 16 voices), duophonic, monophonic (retriggered) or legato mode
- VCA with amplitude modulation, pan
- Skinnable User Interface
- 170 factory presets

mp3tomid ~ Polyphonic mp3 To MIDI
mp3tomid_chung is a realtime free polyphonic high quality mp3 audio to MIDI converter written in freebasic with fbsound. It converts mp3 files to polyphonic piano MIDI data sent to the chosen MIDI out port, connected, for example, to a MIDI recorder to produce MIDI files, or to the onboard PC MIDI mapper for direct listening.
Features:
chungswebsite.blogspot.com/search/label/mp3tomid_chung
- converts mp3 files to MIDI in realtime
- compatible with freemp3_chung & mp3_chung playlists (.mp3list files)
- include 3 band equalizer, autovol+compressor, speed control for the mp3 input
- auto pitch lock
- written in compiled freebasic and uses fbsound to handle mp3 files
- source code (.bas .bi freebasic files) is included in the zip file
- can run on a small netbook with Windows 7
- can export to MIDI files
- works with Windows 10 64 bits
sourceforge.net/projects/mp3tomidchung
Triceratops ~ Polyphonic Synthesizer LV2 Plugin
Triceratops is an analogue style polyphonic subtractive synthesizer plugin, for use with the LV2 plugin architecture, at this time there is no standalone version. An up to date version of the LV2 library is required along with a suitable host (e.g. Qtractor, Jalv, Ardour).
www.thunderox.com/triceratops
sourceforge.net/projects/triceratops
Canorus ~ Music Score Editor
Canorus is a free cross-platform music score editor. It supports an unlimited number and length of staffs, polyphony, a MIDI playback of notes, chord markings, lyrics and import/export filters to formats like MIDI, MusicXML, ABC Music, MusiXTeX and LilyPond.

sourceforge.net/projects/canorus
github.com/canorusmusic/canorus
samplv1 ~ Old-School Polyphonic Sampler
samplv1 is an old-school all-digital polyphonic sampler synthesizer with stereo fx.
Features:
- a pure stand-alone JACK client with JACK-session, NSM (Non Session management) and both JACK MIDI and ALSA MIDI input support;
- a LV2 instrument plug-in. (URI: samplv1.sourceforge.net/lv2)

samplv1

