MIDI Controller Destination message

The MIDI controller destination message tells a MIDI device what its response should be to MIDI controllers.

This is a universal real time system exclusive message. It was introduced with the General MIDI 2 standard to standardize responses to common MIDI controllers, such as the MIDI channel pressure message.

As described below, the controller destination message provides the MIDI device with a set of parameters and ranges. The ranges tell the device what the magnitude of its response should be for the specific parameter. For example, the message may tell a device that the change in pitch for the channel pressure controller should be one semitone. There could be more than one set of parameters and ranges and this message has variable length.

Types of MIDI controller destination messages

The message can take one of the two forms. The first is the following.

0xF0 0x7F 0xid 0x09 0xnn 0x0c 0xpp 0xrr 0xpp 0xrr … 0xF7

0xF0 tells the MIDI device that this is a system exclusive message. 0x7F shows that this is a real time universal system exclusive message. 0xid is the target device ID (if this byte is also 0x7F, the message would be sent to all devices). 0x09 is sub-ID 1 of the message and, in this case, it shows that this is the controller destination message. 0xnn is the sub-ID 2 of the message and can be either 0x01 or 0x02, showing that this message defines the response to the channel pressure controller or the polyphonic key pressure controller respectively (only channel pressure is required by General MIDI 2). 0x0c is the MIDI channel (from 0x00 to 0x0F, but the rhythm channel is not supposed to respond). The pairs 0xpp 0xrr are the parameter and range pairs. These are described below. 0xF7 signifies the end of the message.

The second form of the controller destination message is the following.

0xF0 0x7F 0xid 0x09 0x03 0xmm 0x0c 0xpp 0xrr 0xpp 0xrr … 0xF7

As above, 0xF0 0x7F 0xid tells the MIDI device that this is a universal real-time system exclusive message with a target device specified by 0xid. 0x09 shows that this is the controller destination message. 0x03 shows that this is a control change message. 0xmm defines the controller and can have values between 0x01 and 0x1F and between 0x40 and 0x5F (see MIDI Controller message). 0x0c is the MIDI channel. The pairs 0xpp 0xrr are the parameter and range pairs. 0xF7 is the end of the message.

Parameter and range pairs

The following controller parameters and ranges are recommended in the General MIDI 2 standard (for both message forms above).

Parameter Parameter description Range Range description Default
0x00 Pitch control 0x28-0x58 -24 to +24 semitones 0x40
0x01 Filter cutoff control 0x00-0x7F -9600 to +9450 cents 0x40
0x02 Amplitude control 0x00-0x7F 0 to (127/64)*100 percent 0x40
0x03 Low-frequency oscillation (LFO) pitch depth 0x00-0x7F 0 to 600 cents 0x00
0x04 LFO filter depth 0x00-0x7F 0 to 2400 cents 0x00
0x05 LFO amplitude depth 0x00-0x7F 0 to 100 percent 0x00

An example controller destination message

The following is an example MIDI controller destination message.

0xF0 0x7F 0x7F 0x09 0x01 0x02 0x00 0x41 0x05 0x10 0xF7

0xF0 0x7F 0x7F shows that this is a universal real time system exclusive message sent to all devices. 0x09 shows that this is the controller destination message. 0x01 shows that this is the channel pressure controller. 0x02 is the MIDI channel. 0x00 is the pitch control destination. 0x41 is +1 semitone for the pitch control destination. 0x05 is the LFO amplitude depth control. 0x10 is the range sent to the LFO amplitude depth control (about 13 percent). 0xF7 is the end of the message.

See also:
Musical Instrument Digital Interface (MIDI)

Add new comment

Filtered HTML

  • Freelinking helps you easily create HTML links. Links take the form of [[indicator:target|Title]]. By default (no indicator): Click to view a local node.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.