custom firmware
pro 8000
not connected
Not connected. Needs Chrome or Edge (WebMIDI with SysEx).

Drag a knob up and down (shift: fine), or click it and use the scroll wheel or arrow keys; double-click resets it. The page follows the synth about once a second, and moving a control here puts that knob in pickup on the panel, as loading a patch does. Switches show the panel buttons as the sound uses them; a click holds the state until you press that button on the panel. Knobs, depth bars and the mod matrix edit the layer you're editing (Layer 1 / 2 at the top). Amber knobs are shared by both layers.

Everything this firmware adds, reached from the synth itself. Buttons are as printed on the panel; codes are what the display shows. Web-only features are listed at the end.

Buttons that do new jobs

Seq 1 / Seq 2Choose the layer the knobs edit L 1 L 2
Hold Rec + Seq 1Record steps from MIDI rSEq (REC blinks fast): each note is the next step St 3, Seq 2 a rest, Rec or Seq 1 ends donE. The first note is offset 0. Rec then saves it with the patch.
Arp Up-DnLFO knobs, Shape button and LFO routing edit LFO 1 or LFO 2 (LED lit = LFO 2) LFO1 LFO2
Arp AssignMod assign: the mod matrix (LED blinks) SrC
LFO ShapeNext shape at every press; for 2 s after, VALUE steps both ways
Keyboard-tracking switchKeyboard tracking, as printed (a loaded patch's value holds until it moves)
Sync ClockTap the tempo (LED blinks on the beat), hold to restart the bar, Shift + press cycles the clock: nIdI Int SYnC.
Sync SourceShift: hold, or press twice to latch (LED). Filter ADSR knobs → Env 3, amp ADSR knobs → Env 4; LFO FREQ / AMOUNT → the LFO's delay / fade; GLIDE → drift; M TUNE → detune; FINE → bend range; CUTOFF / RESONANCE → macro offsets; A / B LEVEL → CC A / B numbers. With Rec: compare; Perf: undo; Preset: save here; Seq 1 / 2: copy the layer; 1-9: a Settings page; 0: panic.
PresetPreset mode (a patch loaded) ↔ manual mode (the whole panel live)
RecSave: it blinks, pick a slot, Rec again donE
PerfLoad the init sound (one saw, filter open)
SettingsThe settings menu SEt (keys 0-9 below)
TuneAutotune, about 25 s, silent tUnE

The display

  • A knob shows its value while turned, in real units: semitones (FREQ A/B), cents (FINE), −99..99 (M TUNE, Macro 1), Hz with a point from 1 kHz (CUTOFF), ms / s (envelopes, GLIDE), divisions when synced (LFO FREQ).
  • No plus sign: positive values have none.
  • A dot after the value = the knob hasn't picked up yet. Turn it past (or onto) the stored value and it takes over. Happens after loading a patch, switching layer / LFO / envelope, or editing from the web page.

Patches

  • Load: in preset mode, type the number (1-128; a third digit or a pause ends it), or VALUE steps through them (P 7, P128).
  • Save: Rec, two digits or VALUE, Rec. Preset cancels.
  • Init: Perf, then Rec to keep it anywhere.
  • A patch keeps both layers, settings, routes, LFO shapes and step patterns, and its sequence. M VOL isn't stored.

Layers

  1. Settings 3 LAYr, VALUE: OFF SPLt StAC CHAn (MIDI channel 2 = layer 2) 8CH (a voice per channel 1-8) nPE (MPE: channel 1 master, 2-9 a voice each).
  2. Voices per layer: on that page Arp Up-Dn Lr.Uo, VALUE: AUto (4 + 4, 7 + 1 with one layer mono) or 1-7 … 7-1 (layer 1 - layer 2).
  3. Split point: Settings 4, then VALUE or play the note.
  4. Seq 1 / Seq 2 choose the layer you edit.

Shared by both layers: mixer, noise, resonance, PW A/B, PMOD OSC B, M VOL, every button.

LFOs

  1. Arp Up-Dn picks LFO 1 / LFO 2 (LED lit = 2).
  2. LFO Shape: trI PULS SA.UP SA.dn SInE S-H drFt StEP nOIS
  3. LFO 2 routing: select it, press LFO → Freq / Filter / PW Fr.on FL.oF. The button positions keep showing LFO 1.
  4. Sync: Settings 1 SYnC/SYn2 → FrEE CLoC. With the clock, LFO FREQ picks 8bAr … 1-32.
  5. Retrigger: Settings 2 trIG/trI2 → FrEE 1St EACH PoLY (per voice).

The mod wheel adds LFO 1 depth. The StEP pattern is edited on the web page.

Envelopes

  1. Shift (Sync Source) + the filter ADSR knobs edit Env 3, + the amp ADSR knobs Env 4 (with pickup). The keyboard-tracking switch is keyboard tracking.
  2. Env 3 / 4 do nothing until a mod route uses them (sources 7, 8).
  3. Keytracking itself: Settings 5 trAC → OFF HALF FULL.
  4. Mode: Settings 6 En.A En.F En.3 En.4 (6 again: next), VALUE: AdSr dAHd, cycling CYCL or a division (synced).
  5. Mode: Settings 6 En.A En.F En.3 En.4 (6 again: next), VALUE: AdSr dAHd, from key up UP.AS UP.dA, cycling CYCL or a division (synced).
  6. Trigger: on that page Arp Up-Dn tr.A…, VALUE: dn (key down) UP (key up), in any mode.
  7. On that page ATT sets the delay dLY and DEC the hold HoLd (DAHDSR); the knobs leave the attack and decay alone meanwhile.
  8. Timing: Arp Up-Dn again tI.A…, VALUE: SEC or SYnC (the time knobs, delay and hold step through 0, 1/32 … 8 bars at the tempo).
  9. Curve: Arp Up-Dn again CU.A…, VALUE: AnLG LIn SUEL.
  10. Curve: on that page Arp Up-Dn CU.A…, VALUE: AnLG LIn SUEL.
  11. Cycles: Arp Up-Dn again Cn.A…, VALUE: LOOP or 1-99 (then it rests; from key up it ends).

Key up: the envelope runs when the key is let go (attack, decay for its time, release; cycling: its cycles) and fades at the next key.Key up: the envelope runs when the key is let go (attack, decay for its time, release) and fades at the next key; cycling takes it over. Cycling knobs: ATT rise, SUS hold, DEC fall, REL rest; synced, the four are shares of the division (shown in %).

Mod assign (the matrix)

  1. Arp Assign SrC (the knob touched last is offered as the destination)
  2. the source: a number key, a touch of an LFO or ADSR knob, or scroll with VALUE
  3. the destination: touch its knob (ADSR knobs = envelope stages) or an LFO routing button, or scroll and press Arp Assign
  4. VALUE: depth −99…99 (0 removes; FULL = 16 in use)
  5. Arp Assign to finish; hold it to browse the routes (VALUE steps, press to edit, hold to leave)
KeySource
1Selected LFO (1 again: the other) LFO1 LFO2
2Filter env FEnV
3Amp env AEnV
4Velocity VEL
5Mod wheel nod
6Aftertouch, per voice with poly pressure PrES
7 / 8Env 3 / Env 4 EnV3 EnV4
9Random per note rAnd
0Note number notE
TouchDestination
FREQ A / FREQ B, FINEPitch A P.A, B P.b, both PIt
M TUNEMacro 1 nAC1
CUTOFFCutoff CUt
FIL ENV AMT / PMOD FIL ENVEnv amounts F.EA P.EA
AMP SUSVCA gain VCA
LFO AMOUNT / LFO FREQLFO depth / rate L.An L.rt (L2. for LFO 2)
LFO → Freq / Filter / PW buttonLFO routing depths L.Fr L.FL L.PU
A LEVEL / B LEVEL / NOISEMixer A.LE b.LE noIS
RESONANCE, PW A / B, PMOD OSC BrES A.PU b.PU P.ob

Settings menu

1SYnC LFO sync
2trIG LFO retrigger
3LAYr layer mode (Arp Up-Dn: Lr.Uo voices per layer)
4SPLt split note
5trAC keytracking
6En.x envelope mode (Arp Up-Dn: tr.x trigger, tI.x timing, CU.x curve, Cn.x cycles; ATT / DEC: delay / hold)
7bEnd bend range, 1-12 st
8dEtU unison detune, 0-50 ct
9UOIC voice mode POLY nono LEG
0drFt drift, 0-99

Settings opens and closes it; VALUE changes. Settings live in the patch: save to keep them.

MIDI

  • USB MIDI or the 5-pin MIDI IN, on any channel (SysEx over USB only). MIDI clock drives sync; Start lines up the bar, Continue picks up at Song Position. Or the internal clock (tap Sync Clock) or the SYNC IN jack: Shift + Sync Clock picks the source.
  • Sustain (CC 64), pitch bend (range: Settings 7), mod wheel, poly and channel aftertouch; in channel mode each channel's reach only its layer.
  • Program change 0-127 picks patch 1-128; bank select is ignored.
  • CCs: 74 cutoff, 71 resonance, 5 glide, 14 / 15 FREQ A / B, 16 FINE, 17 / 18 PW, 19 / 20 levels, 21 noise, 22 filter env amount, 23-26 filter ADSR, 73 / 75 / 70 / 72 amp A / D / S / R, 76 / 77 LFO 1, 27 / 28 LFO 2, 29 / 30 poly-mod, 31 tune, 85-90 + 102-103 Env 3 / 4.

Recovery

  • A firmware that won't start: hold 0 and 7 while switching on → bootloader; flash any .syx.
  • Retune after the synth has warmed up: Tune.

On the web page only

The step sequencer, its lanes, arpeggio, probability and ratchets (the panel only plays it, from a key) · LFO step patterns · scale and root · morph target and source · note priority · Mutate · mod routes from Seq A-D and to Morph · patch names, export, the factory bank · copying an LFO or envelope from the other layer.

Mod matrix

Sixteen routes per layer. Each route adds source × depth to its destination, per voice. The ones marked wire are a single wire for all voices, so they follow the most recently played note. Macro 1 and Macro 2 are both destinations and sources (the M TUNE knob is Macro 1's own knob, added to its offset): route anything into a macro, then the macro into several destinations with their own depths; a macro moves once a pass (1-2.4 ms). Envelope stage destinations scale that stage's time up to 16× either way at depth 99 (sustain adds to the level). On the panel: Arp Assign, then a source (a number key, a touch of an LFO or ADSR knob, or scroll with VALUE), then a destination (touch its knob or LFO button, or scroll and press Arp Assign), VALUE for the depth; hold Arp Assign to browse the routes.

the layer you're editing
SourceDestinationDepth
New route: pick a source, a destination and a depth, then Add route. It does nothing until it's added.
50

Patches

128 patches (P1-P128, program change 0-127), each with its own sequence. Saving takes the sound as it is now on the synth. Names travel with the sound; rename by typing in the name and pressing Enter (or click the loaded patch's name on the screen at the top). Export saves one patch as a 256-byte .p8p file, which Import writes back into any slot.

SlotNameKind

Factory bank

The 100 sounds the PRO-800 shipped with are still in the EEPROM, untouched. Copy any of them into an empty slot. The conversion is close rather than identical, because our engine's curves differ from the stock firmware's.

#NameInto slot

Play

Click the keys, or play from the computer keyboard: A W S E D F T G Y H U J K O L P ; ' (two rows, like a DAW). Z / X shift the octave, C / V change the velocity. Keys don't play while you're typing in a text field.

Octave 4 Velocity 100 Channel

MIDI routing

Forwards notes, controllers, pitch bend, aftertouch and program changes from another MIDI input (for example the Ableton Move) to the PRO 800 while this page is open. SysEx is never forwarded, so the tools' own messages stay separate.

From

Firmware

Tuning

Autotune measures every oscillator and filter through the tuning comparator and stores the tables in the EEPROM. It takes about 25 seconds, during which the synth is silent and doesn't answer. The Tune button on the panel does the same.

Pots

needed for the sections below; while it's on, the page owns the synth's display

Turn a knob: its card lights up. Type the knob's name (as printed on the panel) into that card. Names are saved in this browser as you type.

Switches

Inputs read directly by the MCU. Names are the schematic's net names; rename them if the panel says otherwise.

Buttons (HT16K33 key scan)

Press a button: the bits it sets turn green. Name the bit.

Encoder: 0 transitions (4 per quadrature cycle; the knob has no detents)

Display and LEDs (HT16K33 RAM)

Each square is one bit of display RAM. "Walk" lights one bit at a time: name what lights up (for example "digit 1 segment a", "SEQ1 LED", or "nothing"), then press Next.

Map