MIDI STRINGS
Any MIDI message can be assigned to a fader by entering the message as a hexadecimal string. A flexible
"parameter format" allows the current fader position to be inserted into the message in one of many different
formats. A programmable minimum and maximum parameter value allows the parameter to span practically any
range. To define a MIDI message string:
1. Select the function "String." Next, press the up direction button when the function field is not blinking. The
following page will be displayed:
2. To edit the string, use the four direction buttons, the data wheel, and the current fader. The left /right
direction buttons are used to select a specific byte, while the up/down direction buttons, the data
wheel, and the current fader are used to edit a digit of the string. Pressing the up button when be-
tween bytes inserts a byte and pressing the down button deletes the byte to the right of the cursor.
3. Replace with "pr" any byte that will be determined by the fader position. This is done by incrementing the
byte until "pr" is displayed. When the string is finished, press Exit.
4. Access the minimum and maximum parameters by pressing the up direction button when the underscore
cursor is not displayed.
5. Cursor over to either parameter and edit the value. Use the fader to set the parameter to the approximate
value necessary. Use the data wheel or the up/down buttons to enter the exact value.
6. When neither field is flashing, press the up direction button to access the parameter format page:
7. The value selected here determines how the "pr" bytes will be filled with the parameter value. Refer to your
unit's owner's manual to determine which format to use. For a detailed description of the parameter
formats, see Appendix B.
DEALING WITH CHECKSUM VALUES
Some products call for checksum bytes in their SysEx implementation. In order to specify a byte as checksum, a
"cs" can be added to the string. To program, just edit the byte up to what would normally be FC. Displayed in its
place will be "cs." Here is an example string with an extended display to show you the entire string:
The PC 1600x™ will compute the checksum as follows:
*Adds up all bytes from byte #5 (or higher, see below, when F0 is byte #0) to the last byte before the
"cs." Note: byte #5 is typically the start of the data portion of the SysEx.
*Takes the 2's complement (flips all the bits, then add 1).
*Uses the least significant 7 bits of the result as the checksum byte. The 8th byte is always zero.
With some SysEx messages, the unit ID (byte #3), and command ID (byte#4) could be extended beyond a single
byte by using leading zeroes before the non-zero byte. In this case, the PC 1600x's checksum calculation will start
later in the string accordingly: at byte #(5 + number of leading zeroes). Note: The "cs" computation is unavailable
in button and set-up strings. In these cases, the checksum must be calculated and inserted into the string as a
constant by the programmer. Be sure and refer to your product owner's manual for the necessary values/mes-
sages.
ASSIGNING STRING DEVICE IDs AND MIDI CHANNELS TO GLOBAL SETTINGS
Many devices use SysEx command strings that include a MIDI channel or device number as one of the bytes. This
practice is beneficial to the user since it allows separate SysEx control when differentiating one unit from an
identical unit on the same MIDI stream.
FDR01: String
F0 00 F7
FDR01: Min
Max
0
127
FDR01: Param format
Single Byte
FDR01: String
F0 41 10 70 12 00 00 01 pr cs F7
23