fbpx


The MIDI Forum

  Thursday, 06 May 2021
  2 Replies
  1.5K Visits
1
Votes
Undo
  Subscribe
While I've been able to deduce that a MIDI Sysex message starts with F0 and ends with F7, is there any way to know the rest of the message and what it does?

Say there is a MIDI message being sent with the following: F0 00 20 1c 7f 04 02 01 F7

I think the bytes in the message above for 00 20 1c are the Manufacturer's ID. Which leaves the following bytes: 7f 04 02 0
6 months ago
·
#8843
Accepted Answer
0
Votes
Undo
Hello,

The type of message you describe here is a SysEx (System Exclusive) message. Yes, it is a 'midi message', but it's a specific sub-section of midi messages. The majority of midi messages are smaller, and relate to Note On/Off instructions, and other messages relating to musical data. These are standard, and their function is described in the Midi File specification.

Relating to your question, the big problem with SysEx data is that it is specific to indiv manufacturers, and specific devices, and messages may be created however required, and may not fit any specific pattern. There are some general SysEx messages which may be used by different makers, for example a GS Reset, but otherwise you might study a manual for, say, a Roland device, and find that a specific instruction does xxx, but the same instruction (or even similar) might do something different on a Yamaha device.

Geoff
6 months ago
·
#8843
Accepted Answer
0
Votes
Undo
Hello,

The type of message you describe here is a SysEx (System Exclusive) message. Yes, it is a 'midi message', but it's a specific sub-section of midi messages. The majority of midi messages are smaller, and relate to Note On/Off instructions, and other messages relating to musical data. These are standard, and their function is described in the Midi File specification.

Relating to your question, the big problem with SysEx data is that it is specific to indiv manufacturers, and specific devices, and messages may be created however required, and may not fit any specific pattern. There are some general SysEx messages which may be used by different makers, for example a GS Reset, but otherwise you might study a manual for, say, a Roland device, and find that a specific instruction does xxx, but the same instruction (or even similar) might do something different on a Yamaha device.

Geoff
6 months ago
·
#8854
0
Votes
Undo
Yes, the first 3 bytes are the manufacturer. However, there are several special values for the first byte of those 3:
7D = Non-commercial, not released to the public. For educational, research, etc. You should not find these "in the wild".
7E = Universal Exclusive ID (Non-Real Time)
7F = Universal Exclusive ID (Real Time)
Data for the 2 Universal Exclusive ID types are found in MIDI Specifications.

When you have 3 bytes to identify a specific manufacturer, the manufacturer gets to define all bytes that follow, then close with the F7.
A list of manufacturer IDs is here: https://www.midi.org/specifications-old/item/manufacturer-id-numbers
From that table, your example message is apparently meant for use by Artisan Classic Organ Inc.
You can only discover the meaning of the bytes after that ID in any information that Artisan might publish.
Products designed by Artisan Classic Organ and any products designed specifically to work with a product by Artisan will know what the data means.
Other MIDI products which do now "know" the message design by Artisan are not supposed to act in response to the message.

Mike.
  • Page :
  • 1
There are no replies made for this post yet.
Be one of the first to reply to this post!