one-synthesizer

Editor and librarian

A desktop application that edits the instrument's patch parameters over the same binary parameter plane the built-in UI uses. In progress; not yet released.

Editor showing the Oscillators section: rows of knobs, segmented selectors and toggles for oscillators 1 to 3, each labelled with its parameter name and tree path, some showing live values and a not-equal marker.
The Oscillators section in a live session. Every control is generated from the parameter model; the small text under each name is its path in the parameter tree. Values appear where the editor knows them, and the ≠ badge marks controls whose local value differs from the instrument's.

What it does

Reading a control

Each control carries two small markers showing how much is known about it:

MarkerMeaning
Tier dotHow well the parameter's id and value mapping are established: value-proven (solid), order-proven (half), order-only (hollow).
Provenance dotWhere the displayed value came from: unknown, the panel, a preset, sent by the editor, or confirmed by readback.
HW badgeThe id has been verified on hardware.
Dirty markerThe local value differs from what the instrument is believed to hold.

The kind of control follows the parameter's type: continuous values get a knob (cutoffs get a full-width slider), small enumerations get segmented buttons, booleans get a toggle. A continuous parameter whose range is not yet known is shown read-only and cannot be sent.

How it reaches the instrument

flowchart LR
  ED["Editor
desktop"] subgraph BOX["Instrument"] RL["Relay
whitelist + tap"] VC["Voice controller
UDP 7770"] FE["Built-in frontend"] end ED -->|"/x ,b records over LAN"| RL RL -->|"validated records"| VC FE -->|"/x ,b records"| VC RL -.->|"mirrored frames"| ED FE -.->|"sniffed"| RL
The voice controller is only reachable on the instrument's internal link, so a small relay runs on the instrument. It forwards only well-formed parameter records whose ids and types are in a generated whitelist, and mirrors the built-in frontend's traffic back for readback.

The relay runs from temporary storage and installs nothing. It can be restricted to datagrams from one configured source address.

State

AreaState
Parameter model, record encodingDONE tested against captured traffic
Editable surface, arm gate, batched pushDONE against a mock voice controller
All wire types on real hardwarePENDING
Safe automation ratePENDING default held at 50 Hz until measured
Mod matrix, effectsNOT MODELLED