LUSP Formatted String Message (02 hex)
This message provides a formatted string version of a Class (parameter, etc..) value. This message was included to allow external systems to display parameter values without having to worry about how to convert the raw data to a formatted string. This is particularly useful for parameters who's values only appear as lists of text strings.

Transmit only
Byte # Value HEX  Description Notes 
1 F0 Sysex ID (Start)   
2 06 Lexicon ID   
3 0bbb bbbb Product ID   
4 0bbb bbbb Device ID  0-127
5 02 Class Display  Message type
6-9 0n Number of characters (2 bytes)  This is the number of chars (bytes) in the string 
10-x 0n String characters  "Number of characters" of nibblized ASCII characters 
-- 0n Number of control levels (2 bytes)  This field defines how many control levels are used in the "Data Type"'s address. This is a 16 bit field so the address can have up to 64k digits (control levels) 
-- 0n Control level 0 (A) (address) (2 bytes)  This is the first control level. It defines the level 0 (A) control address of the "Data Type". The control level addresses are 16 bit fields so the control addresses can be 64k deep. Note that letters are used to help differentiate between levels and their values. 
-- 0n Control level 1 (B) (address) (2 bytes)  same as previous
-- 0n Control level 2 (C) (address) (2 bytes)  same as previous
-- 0n --- up to Control level 65535  same as previous
--- 0n Checksum  This is an optional "Checksum" field. The checksum is the low 7 bits of the sum of all preceeding bytes in the message following the "Message Class". 
F7 End of Sysex 
The alternative to using this message is to use the Class Data Message and to interpret the data off-line.

The "Control Levels" are used in the request message for this packet:
0n - Number of Control Levels (lo nib) (Nibble 1 of argument)
0n - Number of Control Levels (lo mid nib) (Nibble 2 of argument)
0n - Number of Control Levels (hi mid nib) (Nibble 3 of argument)
0n - Number of Control Levels (hi nib) (Nibble 4 of argument)
0n - Control Level 0 (A) (lo nib) (Nibble 5 of argument)
0n - Control Level A (lo mid nib) (Nibble 6 of argument)
0n - Control Level A (hi mid nib) (Nibble 7 of argument)
0n - Control Level A (hi nib) (Nibble 8 of argument)
0n - Control Level 1 (B) (lo nib) (Nibble 9 of argument)
0n - Control Level B (lo mid nib) (Nibble 10 of argument)
0n - Control Level B (hi mid nib) (Nibble 11 of argument)
0n - Control Level B (hi nib) (Nibble 12 of argument)
...

For example, to request Program - EQ - 1 Band (M) - Gain (control address A:0, B:2, C:1, D:2) on an MPX 1 system with the Device ID set for 0, send:

               request   Num Control    Level A
----header----  class    levels        (Program)
F0 06 09 00 06  02 00   04 00 00 00    00 00 00 00

Level B        Level C     Level D
(EQ)         (1 Band (M)) (Gain)
02 00 00 00  01 00 00 00  02 00 00 00 F7

The number of characters varies depending on the Data Type, the arguments and the actual value of the data.