About MIDI. MIDI (Musical Instrument Digital Interface) is a standard which allows electronic musical instruments to communicate with each other, by sending and receiving compatible Note, Control Change, Program Change and various other types of MIDI data, or messages. This synthesizer can control other MIDI devices by transmitting note related data and various types of controller data. It can also be controlled by incoming MIDI messages which automatically determine the tone generator mode, select MIDI channels, voices and effects, change parameter values, and of course play the voices specified for the various Parts. Many MIDI messages are expressed in hexadecimal or binary numbers. Hexadecimal numbers may include the letter "H" as a suffix. The letter "n" indicates a certain whole number. The chart below lists the corresponding decimal number for each hexadecimal/binary number. MIDI channels. MIDI performance data is assigned to one of sixteen MIDI channels. Using these channels, 1 to 16, the performance data for sixteen different instrument parts can be simultaneously sent over one MIDI cable. Think of the MIDI channels as TV channels. Each TV station transmits its broadcasts over a specific channel. Your home TV set receives many different programs simultaneously from several TV stations and you select the appropriate channel to watch the desired program. MIDI operates on the same basic principle. The transmitting instrument sends MIDI data on a specific MIDI channel (MIDI Transmit Channel) via a single MIDI cable to the receiving instrument. If the receiving instrument's MIDI channel (MIDI Receive Channel) matches the Transmit Channel, the receiving instrument will sound according to the data sent by the transmitting instrument. For information on how to set the MIDI transmit channel and the MIDI receive channel, see page 35. MIDI data is assigned to one of sixteen channels. However, we can overcome the sixteen-channel limit by using separate MIDI "ports," each supporting sixteen channels. For details, see page 38. MIDI Messages Transmitted/Recognized by this synthesizer. MIDI messages can be divided into two groups: Channel messages and System messages. Below is an explanation of the various types of MIDI messages which this synthesizer can recognize/transmit. The messages transmitted/recognized by this synthesizer are shown in the MIDI Data Format and MIDI Implementation Chart of the separate Data List. NOTE. This synthesizer's tone generator and sequencer blocks handle different MIDI events. These are listed separately in the MIDI Data Format as well as in the MIDI Implementation Chart. CHANNEL MESSAGES. Channel messages contain data related to the performance on the keyboard for the specific channel. Note On/Note Off (Key On/Key Off). Messages which are generated when the keyboard is played. Reception note range equal C-2 (0) - G8 (127), C3 equal 60. Velocity range equal 1 to 127 (Only the Note On velocity is received) Note On: Generated when a key is pressed. Note Off: Generated when a key is released. Each message includes a specific note number which corresponds to the key which is pressed, plus a velocity value based on how hard the key is struck. Control Change. Control Change messages let you select a voice bank, control volume, panning, modulation, portamento time, brightness and various other controller parameters, through specific Control Change numbers which correspond to each of the various parameters. Bank Select MSB (Control No.000). Bank Select LSB (Control No.032) Messages which select variation voice bank numbers by combining and sending the MSB and LSB from an external device. The functions of MSB and LSB messages differ depending on the tone generator mode. MSB numbers select voice type (Normal Voice or Drum Voice), and LSB numbers select voice banks. (For more information about Banks and Programs, see Voice List in the separate Data List.) A new bank selection will not become effective until the next Program Change message is received. Modulation (Control No.001). Messages which control vibrato depth using the Modulation Wheel. Setting the value to 127 produces maximum vibrato and 0 results in vibrato off. Portamento Time (Control No.005). Messages which control the duration of portamento, or a continuous pitch glide between successively played notes. When the parameter Portamento Switch (Control No.065) is set to on, the value set here can adjust the speed of pitch change. Setting the value to 127 produces maximum portamento time and 0 results in minimum portamento time. Data Entry MSB (Control No.006) Data Entry LSB (Control No.038) Messages which set the value for the parameter specified by RPN MSB/LSB (page 183) and NRPN MSB/LSB (page 183). Parameter value is determined by combining the MSB and LSB. Main Volume (Control No.007) Messages which control the volume of each Part. Setting the value to 127 produces maximum volume and 0 results in volume off. Pan (Control No.010) Messages which control the stereo panning position of each Part (for stereo output). Setting the value to 127 positions the sound to the far right and 0 positions the sound to the far left. Expression (Control No.011) Messages which control intonation expression of each Part during performance. Setting the value to 127 produces maximum volume and 0 results in volume off. Hold1 (Control No.064) Messages which control sustain on/off. Setting the value between 64 to 127 turns the sustain on, between 0 to 63 turns the sustain off. Portamento Switch (Control No.065) Messages which control portamento on/off. Setting the value between 64 to 127 turns the portamento on, between 0 to 63 turns the portamento off. Sostenuto (Control No.066) Messages which control sostenuto on/off. Holding specific notes and then pressing and holding the sostenuto pedal will sustain those notes as you play subsequent notes, until the pedal is released. Setting the value between 64 to 127 turns the sostenuto on, between 0 to 63 turns the sostenuto off. Harmonic Content (Control No.071) Messages which adjust the filter resonance set for each Part. The value set here is an offset value which will be added to or subtracted from the voice data. Higher values will result in a more characteristic, resonant sound. Depending on the voice, the effective range may be narrower than the range available for adjustment. Release Time (Control No.072) Messages which adjust the AEG release time set for each Part. The value set here is an offset value which will be added to or subtracted from the voice data. Attack Time (Control No.073) Messages which adjust the AEG attack time set for each Part. The value set here is an offset value which will be added to or subtracted from the voice data. Brightness (Control No.074) Messages which adjust the filter cutoff frequency set for each Part. The value set here is an offset value which will be added to or subtracted from the voice data. Lower values result in a softer sound. Depending on the voice, the effective range may be narrower than the range available for adjustment. Decay Time (Control No.075) Messages which adjust the AEG decay time set for each Part. The value set here is an offset value which will be added to or subtracted from the voice data. Effect1 Depth (Reverb Send Level) (Control No.091) Messages which adjust the send level for the Reverb effect. Effect3 Depth (Chorus Send Level) (Control No.093) Messages which adjust the send level for the Chorus effect. Data Increment (Control No.096) Decrement (Control No.097) for RPN Messages which increase or decrease the MSB value of pitch bend sensitivity, fine tune, or coarse tune in steps of 1. You will need to assign one of those parameters using the RPN in the external device in advance. The data byte is ignored. When the maximum value or minimum value is reached, the value will not be incremented or decremented further. (Incrementing the fine tune will not cause the coarse tune to be incremented.) NRPN (Non-Registered Parameter Number) LSB (Control No.098) (Plug-in Board only) NRPN (Non-Registered Parameter Number) MSB (Control No.099) (Plug-in Board only) Messages which adjust a voice's vibrato, filter, EG, drum setup or other parameter settings. First send the NRPN MSB and NRPN LSB to specify the parameter which is to be controlled. Then use Data Entry (page 182) to set the value of the specified parameter. Note that once the NRPN has been set for a channel, subsequent data entry will be recognized as the same NRPN's value change. Therefore, after you use the NRPN, you should set a Null (7FH, 7FH) value to avoid unexpected results. For details, refer to the owner's manual of the relevant Plug-in Board. RPN (Registered Parameter Number) LSB (Control No.100) RPN (Registered Parameter Number) MSB (Control No.101) Messages which offset, or add or subtract values from a Part's pitch bend sensitivity, tuning, or other parameter settings. First send the RPN MSB and RPN LSB to specify the parameter which is to be controlled. Then use Data Increment/Decrement (page 183) to set the value of the specified parameter. Note that once the RPN has been set for a channel, subsequent data entry will be recognized as the same RPN's value change. Therefore after you use the RPN, you should set a Null (7FH, 7FH) value to avoid unexpected results. The following RPN numbers can be received.