Questions

What is MIDI SysEx?

SysEx, short for System Exclusive, is the MIDI message for everything the standard messages cannot say. It starts with the byte F0, names the maker it is meant for, carries as many data bytes as it needs, and ends with F7. Makers use it for patch dumps, firmware updates and settings that have no Control Change number. A device that does not recognize the maker ignores the whole message.

The format is part of the MIDI standard. Most everyday MIDI work never touches it, and the last section says when you can leave it alone.

Read the message

PartBytes (hex)Meaning
StartF0System Exclusive begins
Maker IDOne byte, or three bytes beginning 00Which maker's devices should read it
DataAny number of bytes, each 00 to 7FWhatever the maker defined
EndF7System Exclusive ends

Everything between the maker ID and F7 means only what that maker says it means. The MIDI message decoder reads pasted bytes and reports how long a System Exclusive message is.

Download InputConfig on the Mac App StoreInputConfig is free on the Mac App Store. macOS 14 or later, no account, no tracking, open source.

Know the universal messages

Two maker IDs belong to no maker. 7E marks a universal message that is not tied to timing, and 7F marks a universal real-time one. Any device may answer them.

MessageBytes (hex)What it does
Identity RequestF0 7E 7F 06 01 F7Asks every device to report its maker, model and version
General MIDI OnF0 7E 7F 09 01 F7Puts a General MIDI instrument into its standard state
Master VolumeF0 7F 7F 04 01, two value bytes, F7Sets the whole device's volume

An Identity Request is the standard way to ask a device what it is.

Know what it is used for

  • Patch dumps. Saving a synth's sounds to a computer and sending them back, the job of a SysEx librarian.
  • Firmware updates. Many devices take new firmware as a long run of SysEx messages.
  • Deep settings. Parameters that have no Control Change number, edited from a maker's editor app.
  • Sample and bulk transfers. Any large block of data a device needs to move over MIDI.

SysEx moves data, where the other messages play music.

Send and receive it on a Mac

  • A librarian or editor app. The maker's own editor, or a SysEx librarian, sends a file to the device and records what the device sends back.
  • The right port. The device must be connected and online in Audio MIDI Setup's MIDI Studio.
  • A browser. Web pages need a separate, stronger permission to use SysEx, because it can rewrite a device. The MIDI tools on this site do not ask for it, so they neither send System Exclusive to a device nor receive it from one.

Send a device only the SysEx its own maker published for it. Audio MIDI Setup on a Mac covers the MIDI Studio window.

Leave it alone for everyday control

Notes, knobs, pedals and patch changes all have standard messages, and those are the ones a mapper uses. InputConfig, the free Mac app I make, binds notes, Control Change, pitch bend, aftertouch, Program Change and the transport messages, and sends the same set apart from aftertouch. System Exclusive is not among them. If a control has a CC number, you do not need SysEx to reach it. The MIDI CC list shows which numbers are standard.

The short version

  • Shape. F0, a maker ID, data, F7.
  • Meaning. Up to the maker, apart from the universal messages.
  • Use. Dumps, firmware and settings with no CC.

SysEx is MIDI's envelope for anything a maker wants to send.

Questions

What does SysEx stand for?

System Exclusive. The name means the message is exclusive to one maker's system: other makers' devices ignore it.

What is the format of a SysEx message?

It starts with F0, then a maker ID of one byte or three, then any number of data bytes from 00 to 7F, and ends with F7.

What is a SysEx file?

A file, usually ending in .syx, that holds one or more SysEx messages, such as a bank of synth patches or a firmware update.

What is SysEx used for?

Backing up and restoring a device's patches, updating firmware, and editing settings that have no Control Change number.

Can SysEx damage a device?

The wrong data can overwrite patches or interrupt a firmware update. Send only files the maker published for that exact model, and back up first.

Is SysEx sent on a MIDI channel?

No. It is a system message with no channel. Some makers put a device number inside the data so one unit of several can be addressed.

Download InputConfig on the Mac App StoreFree. macOS 14 or later. No account, nothing leaves your Mac. Open source on GitHub.

Updated