PROOF Behaviour, measurements, limits
Proof behind the instruments.
Measurements protect musical behaviour: how a filter holds its body, how a glide moves, how a voice changes with sample rate and whether the same session comes back the same way.
First principles
Behaviour comes before labels
Voltage Synths begins with relationships inside an instrument. The position of a nonlinear stage matters. Filter feedback establishes another relationship; a capacitor sets an envelope time, and component variation separates related voices.
Musical consequence: useful control interactions survive beyond one tuned patch.Filter structure defines the instrument
Substance uses a saturating 4-pole transistor ladder. Its pole-mixed outputs include compensation for low-frequency body.
Octet takes a 2-pole OTA state-variable structure. Mode crosses low-pass / notch / high-pass continuously, while band-pass stays separate. Resonance acts on the band around cutoff.
Musical consequence: the 2 instruments keep their own response under one engineering standard.
Substance: the original voice
Drive colours the signal before filtering
The mixer applies a small bias as it saturates, producing even harmonics before the signal enters the ladder. A second output stage adds density after the filter, with gain compensation that keeps the control from becoming only a loudness change. Engine checks confirm that increasing drive changes the harmonic balance.
Musical consequence. Clean weight / warm compression / dirty bass occupy different parts of one continuous drive range.
Resonance keeps more bass body
A textbook four-pole ladder loses low-frequency level as resonance increases. Substance compensates part of that loss inside the feedback design, retaining more of the fundamental at low and middle cutoff positions as resonance rises.
Musical consequence: a resonant bass can keep its weight while the filter adds pitch and movement.Note memory changes the articulation
Substance remembers up to 8 held notes with last-note priority. Releasing the top note restores the previous one legato; the envelopes continue their current path.
Glide runs at a constant rate, so time grows with interval. Downward movement is about 20% slower than upward movement.
Musical consequence: held notes and slides remain part of the phrase. Direction changes affect the timing.
Ten distinct starting points
Burgs and Roadtrain open the factory bank. Bitumen / Snag / Northerly take different bass positions, followed by 3 lead voices. Spectral balance and attack separate the patches; the static bass sounds keep most of their energy below 250 Hz.
Musical consequence. One focused architecture covers deep basses and percussive plucks. It reaches lead sounds too.
Octet: the state-variable voice
The oscillator meets its four audible-band targets.
The discrete saw core is checked at 48 kHz with legitimate harmonics removed from the analysis. Free-running saw, hard sync and full-depth pulse-width modulation all sit below their declared audible-band limits.
| Condition | Target | Audible band | Full band |
|---|---|---|---|
| Free saw, 1000.5 Hz | -96.0 | -109.3 | -60.0 |
| Free saw, 3997.6 Hz | -84.0 | -100.6 | -97.7 |
| Hard sync, worst ratio | -66.0 | -104.0 | -59.4 |
| Pulse-width modulation | -90.0 | -124.8 | -124.8 |
The full-band values are shown because they are materially higher in two of the four conditions, by more than 40 dB in each. A short band-limiting kernel has a transition region around Nyquist; later nonlinear processing can fold some of that ultrasonic energy back into the audible band. How much energy sits up there depends on where the harmonics fall relative to Nyquist, so the 3997.6 Hz row reads within 3 dB of its audible-band figure while the 1000.5 Hz row is nearly 50 dB above it.
Musical consequence: bright notes remain controlled in the audible band. The same applies to sync sweeps and pulse-width movement; the ultrasonic limit stays beside the result.The filter follows an independent continuous-time reference.
The state-variable filter is probed from the outside with steady-state tones and compared with a separately evaluated continuous-time version of the same topology. It holds within 0.02 dB at the centre frequency and within 0.15 dB across the tested band. The check runs at 6 sample rates in the oversampling configuration the instrument uses.
What this establishes: the digital filter follows the intended circuit equations. Hardware comparison belongs to the calibration section below.
Musical consequence: the cutoff stays where the circuit says when a session changes sample rate.
The circuit sets the distortion points
Both integrator stages saturate at the operational transconductance amplifier limits inside their feedback loops. The output-stage supply rails bound self-oscillation amplitude.
The nonlinear system is solved together each sample with a fixed amount of work. Difficult settings cost the same as easy ones.
Musical consequence: resonance compresses at one level, blooms at another and can reach self-oscillation inside the same circuit.Pitch and envelopes hold across 6 rates
Oscillator pitch is checked across 44.1–192 kHz to 0.005% relative error. Attack / decay / release follow resistor-capacitor trajectories over 1 ms–12 s. Timing holds within 0.5%; the sustain transition stays within 2%.
Musical consequence. A pluck keeps its timing. Long releases remain long, and a reopened project stays in tune.
Eight related voices move independently
The polyphonic engine owns voice allocation and stealing. Unison and glide operate inside that engine. Stable component variation comes from the patch seed plus voice index.
Musical consequence: chord width and movement return with the session.Engineering and quality
Buffer boundaries leave the samples unchanged
One render uses a continuous pass. The comparison render changes buffer size and places events inside those buffers. Notes / controls / seed stay fixed, and the resulting samples must be identical. Voice allocation and stealing are part of that comparison.
Practical consequence: a DAW buffer change cannot alter which voice played a note.
The audio path has a fixed work contract
The processing callback performs 0 allocations and takes 0 locks. It starts 0 background threads.
Feedback solves use a fixed iteration count per sample. Coefficients are prepared before processing; denormal states are flushed.
Practical consequence: a resonant peak uses the same bounded callback path as an ordinary note.Panel geometry and parameters share one definition
Octet's panel and editor share one control definition, including geometry and parameter bindings. The complete interface is checked at multiple scales as the design changes.
Practical consequence. The visible control and engine parameter remain joined as the interface changes.
Every number keeps its context
The oscillator table puts each target beside its audible-band and full-band result. The filter result states what the independent reference establishes and where hardware calibration still begins. Development limits stay beside the results they bound.
Practical consequence: measured and analytic results remain distinct. Open questions retain their label.Development
MADRE-8 publishes its oscillator floors
MADRE-8 is a working 8-voice instrument. Each voice carries 2 oscillators plus its sub-oscillator and noise source. The saturating mixer feeds a 4-pole transistor ladder. Unison and glide are active; aftertouch reaches the voice. A tempo-following arpeggiator runs in the current build.
Its oscillator has measured audible-band alias floors for every shape at all 6 supported rates. The gate sits two decibels below the measurement; each limit therefore stays 2 dB below its measured floor.
Free saw at 1 kHz measures -110.5 dBFS at 44.1 kHz, -125.1 at 48 kHz, -149.0 at 88.2 kHz, -145.7 at 96 kHz, -160.7 at 176.4 kHz and -164.7 at 192 kHz. Square holds -75.0; triangle holds -89.0. Hard sync measures -69.6 against a -66.0 target. Full-depth pulse-width modulation measures -110.9 against -90.0.
Musical consequence: chords stay clean across the keyboard at every supported session rate.
Octet voice spread remains provisional
Per-voice component spread is provisional. Warm-up settling and drift depth are provisional too; reference-hardware sessions determine their final ranges.
The analytic filter result above covers digital conformance only. Hardware calibration is a separate task.
Musical consequence: measurements from the studied circuit will set the final voice character.CPU depends on the test machine
Cost is measured on every build for each instrument at each sample rate. Regression limits are enforced on every run. The public page carries 0 CPU figures because a bare percentage would omit the workload and processor.
Practical consequence. The 8-voice instrument must retain enough headroom for a real session.
NEXT The instruments
See each circuit in its instrument
Compare the musical role and signal path of Substance / MADRE-8 / Octet. Current development status sits beside each instrument.