A MIDI controller is defined by an index and a value. Index and value have a range of 0 to 127 (7 bit, 2 to the power of 7).
Example: Set controller 7 to 127 will set the "Volume" to maximum (because 7 is assigned to Volume by the MIDI standard).
Sometimes you wish to have more controllers and a finer control of the value. In this case you use NRPN:
instead of 7 bits you now use 14 bits with a range of 0 to 16383 (2 to the power of 14).
To be able to communicate this to the device you can use "NRPN" (Non Registered Parameter Number).
Since a controller can usually transport 7bits, you just use 2 controllers to communicate 2x7=14 bits. Just split the 14 bit into 2x7 bit and use the 7 bit controllers to send them to the device:
To address the 14 bit index controller number, you send Controller 99 with value of the "higher" 7 bits of the index and Controller 98 with value "lower"
To address the 14 bit value, you send Controller 6 with value of the "higher" 7 bits of the value and Controller 38 with the "lower" 7 bits.
The Profiler accepts the value change when Controller 38 arrives, so make sure you've send Controller 6 before.