Firmware Update 9.1.0 to 9.3.2

Firmware Update: What's New in 9.3.2

We've been busy. Here's everything that's landed since the last update post — firmware 9.2.0 through 9.3.2.


The Big One: SysEx Mode (9.3.0)

Starting from firmware 9.3.0, every ParksTool device supports a new SysEx content type. You can now send fully custom System Exclusive messages from any encoder, potentiometer, fader, or key — opening direct communication with hardware synthesizers, effects units, and samplers that use proprietary SysEx protocols.

To use it: in the Web Configuration Tool, set any control's Content Type to SYSEX (v9.3+), then enter your message in hex format starting with F0 and ending with F7.

Dynamic value substitution is the key feature. Insert {value7bit} anywhere in the byte sequence and the current control value is injected there automatically before transmission:

SysEx variable substitution diagram

The highlighted byte is replaced with the live control value before the message is sent.

Practical uses:

  • Control filter cutoff, oscillator pitch, or envelope parameters on a hardware synth in real time
  • Select presets on an effects unit (0–127 range via encoder or potentiometer)
  • Control sampler playback, sample selection, or effect depth

Limitations:

  • Payload limited to 12 bytes (excluding F0 / F7)
  • One {value7bit} token per message
  • Available bank count is reduced on larger devices: 4-knob → max 15 banks, 8-knob → max 7, 16-knob → max 3, 24+ knob → max 2

Check your hardware's MIDI Implementation Chart for the correct SysEx format — every manufacturer uses a different structure.


Global Toggle Mode (9.2.7)

A single dedicated key can now switch every key on the device between momentary and toggle behavior — live, without reconfiguring anything in the web tool.

Assign one key as SPECIAL → Global Toggle On. When pressed, all keys switch to latch mode: the first press sends Note On, the next press sends Note Off. A paired Global Toggle Off key (or the same key) returns everything to normal momentary behavior.

Most useful in live performance — for example, switching between momentary and latched solo on a Dirtywave M8, or toggling sustain-like behavior across your entire controller on the fly.


Key Sustain / Latch — SPECIAL Mode (9.2.6)

SPECIAL mode added two dedicated functions for key-type controls:

  • Sustain Pedal On/Off — the key sends Sustain On while held, Sustain Off on release. Exactly like a physical sustain pedal, mapped to any button on your device.
  • Global Toggle On / Global Toggle Off — as described above.

Assign these in the Web Configuration Tool by setting the key's Content Type to SPECIAL.


Burst Mode (9.2.3)

Burst Mode lets a single button fire a sequence of MIDI messages stored across multiple banks — in one press. The most common use case is sending a bank select (MSB + LSB) before a Program Change, which many synthesizers and rack units require.

Burst Mode message order diagram

Upper banks always fire first. Set MSB/LSB in Bank 2, Program Change in Bank 1, then enable Burst Mode in Global Variables.

Burst Mode also works for sending chords: assign different notes to the same key across multiple banks, enable Burst Mode, and a single press fires all of them simultaneously.

Burst Mode cannot be used at the same time as Octave Only Mode.


13K1ES — Full 10-Octave Range (9.2.0 / 9.2.1)

The 13K1ES now supports Octave Only Mode, giving the keyboard full coverage from octave 0 through octave 9. The standard Bank system couldn't cleanly express all 10 octaves — Octave Only Mode repurposes the Bank+/Bank− controls exclusively for octave shifting. Enable it in Global Variables: ENABLE OCTAVE ONLY MODE.

9.2.1 also resolved a Windows 11 compatibility issue by removing a dependency on WMIC, which Microsoft deprecated in recent Windows 11 builds.


Expression Pedal Deadzone Calibration (9.0.3)

Expression pedals often don't reach true 0 or 127 at the physical extremes. Two new Global Variables settings fix this:

  • Expression Pedal Deadzone Low (default: 30) — raise if the pedal doesn't reach 0 at heel-down
  • Expression Pedal Deadzone High (default: 40) — raise if the pedal doesn't reach 127 at toe-down

Important: Deej Support Removed (9.3.0)

Deej serial output has been permanently removed as of firmware 9.3.0. This freed up significant memory and simplified the firmware internals. The "Enable Deej" checkbox in the Web Configuration Tool no longer has any effect.

If Deej is part of your workflow, stay on firmware 9.2.7 or earlier — all previous versions remain available on the legacy firmware archive (9.2.x and earlier).


Stability Fixes — 9.3.x

9.3.2 (current) — Fixes a critical bug in bank configuration saving introduced in 9.3.0. If you use banks and settings are not persisting between sessions, update immediately.

9.3.1 — Fixes a memory overlap bug in SysEx saving that could corrupt the 10th payload byte.


How to Update

  1. Download the latest package from the firmware download page
  2. Extract the archive fully before running — the executable will not work from inside the zip
  3. Run uploader_windows.exe (Windows) or right-click → Open With → Terminal (macOS)
  4. The Web Configuration Tool opens automatically on completion

Upgrading from 9.2.x or earlier to 9.3.x? You must reset your configuration after updating: in the Web Configuration Tool, run Reset Local Defaults and Default Global Reset. The memory format changed and old settings are not compatible.

Screenshot your current configuration before updating, especially on large version jumps.


For more details, visit the ParksTool Manual.

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.