Tools
MIDI Out
CV-to-MIDI bridge - drive external synths, drum machines, and DAWs from inside the rack.
Try one in your browser →
What is a MIDI Out?
A MIDI Output module is the inverse of a MIDI Input module. Where MIDI In takes external MIDI events and converts them into modular CV/Gate voltages, MIDI Out takes modular voltages and converts them back into MIDI messages, then sends them out over the system to drive *external* gear: hardware synths, drum machines, DAWs, software plugins, anything that listens for MIDI.
Why would you want this? Because the strengths of a modular sequencer are not the strengths of a hardware synth - and vice versa. A Step Sequencer running through Euclidean and a Quantizer produces unique melodic patterns. A vintage analog synth produces beautiful tone. Patch the modular's V/Oct and gate into a MIDI Out and you can drive that hardware synth from your modular brain - the rack does the composition, the hardware does the sound.
The conversion is non-trivial. A gate is a continuous voltage that is high or low; MIDI uses discrete Note On and Note Off events with note numbers and velocities. The MIDI Out module has to detect every gate rising edge, sample the V/Oct CV at that exact moment, convert it to a MIDI note number, and emit a Note On - then watch for the falling edge and emit a Note Off. Continuous CV (mod wheel, aftertouch, cutoff) becomes streams of CC (Continuum Controller) messages. Pitch bend becomes 14-bit pitch-bend events. Modular clock pulses become MIDI clock bytes.
Our MIDI Out
Webrack's MIDI Out is 8 HP with 8 inputs (V/Oct, Gate, Vel, Aft, Bend, CC1, CC2, Clock) and a pair of pass-through outputs so you can also monitor the same line locally inside Webrack while the hardware plays in parallel. Drive it from any sequencer in the rack - or even by hand from a MIDI In further upstream, effectively turning Webrack into a MIDI processor.
Internally we batch outgoing events per audio block (~2.9ms) and post them to the main thread, which forwards to the browser's Web MIDI API. Pitch changes while the gate is held automatically retrigger the note (Note Off old, Note On new) so glides and slides work the way a hardware synth expects. CCs are debounced - identical successive values do not re-emit - to keep the MIDI bus clean.
The Vel switch toggles between INPUT mode (use the VEL CV, falling back to 100 if unpatched) and FIXED mode (always use the FxVel knob value). FIXED is the right choice for drums and consistent-level sequenced lines; INPUT is the right choice for performance with velocity envelopes from a MIDI In upstream. Channel select runs 1-16; bend range matches the receiving synth's range setting.
In a patch
The classic use case: a SEQ8 plays a melodic pattern, its row1 (V/Oct) and gate outputs feed the MIDI Out's V/OCT and GATE inputs, MIDI Out is set to channel 1, and your external synth (a vintage Juno, a Prophet, a soft synth in your DAW) plays the line. The modular composes; the hardware sings.
Layer external CC modulation by patching LFOs or envelopes into the CC1 / CC2 inputs and configuring the CC numbers to match parameters on the receiving synth (most synths publish a MIDI implementation chart). A slow LFO on CC74 (filter cutoff) animates the hardware's filter from inside the rack; a random CV source on CC1 adds unpredictable mod-wheel motion.
Use multiple MIDI Out modules on different channels to play multitimbral hardware. One module on channel 1 plays a bass line, another on channel 2 plays leads, a third on channel 10 (the General-MIDI drum channel) drives a drum machine. The modular becomes a multi-track sequencer with the hardware as its sound bank.
Inputs
- V/OCT (cv) — 1V/octave pitch input. 0V = MIDI note 60 (middle C). Pitch changes while GATE is held emit a new Note On (legato glide).
- GATE (gate) — Note trigger. Rising edge above 2.5V sends Note On at the current V/OCT pitch. Falling edge sends Note Off.
- VEL (cv) — Velocity CV. 0-10V scales to 1-127 MIDI velocity. Patch an envelope or accent CV here for dynamic playing. Ignored when Vel switch is set to Fixed.
- AFT (cv) — Channel aftertouch CV. 0-10V scales to 0-127. Use a slow LFO or pressure-style envelope for breath/pressure expression.
- BEND (cv) — Pitch bend CV. Bipolar +/-V scaled by the Bend Range knob (semitones). 14-bit resolution for smooth glides.
- CC1 (cv) — CC1 modulation. 0-10V scales to 0-127 on the CC number set by CC1#. Defaults to CC1 (mod wheel). Rate-limited to ~1 ms intervals.
- CC2 (cv) — CC2 modulation. Same as CC1 but on the CC number set by CC2#. Defaults to CC11 (expression).
- CLK (gate) — MIDI clock input. Each rising edge sends a 0xF8 MIDI clock byte. Standard MIDI clock is 24 PPQN - patch a Clock-Div /24 from a quarter-note clock.
Outputs
- V/OCT (cv) — Pass-through of V/OCT input. Useful for chaining to another MIDI Out module on a different channel, or for monitoring inside Webrack.
- GATE (gate) — Pass-through of GATE input. Same use as V/OCT pass-through.
Controls
- Chan — MIDI channel 1-16. Set to match the receiving synth's MIDI channel.
- CC1# — CC number for the CC1 input (0-127). 1 = mod wheel, 7 = volume, 10 = pan, 71 = resonance, 74 = filter cutoff. Check your synth's MIDI implementation chart.
- CC2# — CC number for the CC2 input (0-127). 11 = expression, 64 = sustain pedal, 91 = reverb send, 93 = chorus send.
- Bend — Pitch bend range in semitones (1-24). Must match the receiving synth's pitch bend range setting for accurate intonation.
- Vel — Velocity source. INPUT = use VEL CV (or 100 if unpatched). FIXED = always use the Fixed Vel knob value, ignoring the VEL input.
- FxVel — Fixed velocity (1-127) when Vel switch is set to FIXED. Useful for consistent levels on drum hits or when you don't want dynamic accenting.
← Back to all modules