How to Change MIDI Pitch Bend Range with RPN
This guide explains the Registered Parameter Number (RPN) sequence required to change a MIDI instrument's pitch bend range from the default 2 semitones to 12 semitones (one full octave). Below, you will find the exact Control Change (CC) messages, parameter definitions, and byte values in both decimal and hexadecimal formats to execute this configuration properly.
Understanding the Pitch Bend Sensitivity Parameter
In standard MIDI specification, pitch bend range is governed by the Pitch Bend Sensitivity parameter, which is registered as RPN 0 (MSB: 0, LSB: 0).
Adjusting this parameter involves sending four consecutive Control Change (CC) messages to select the parameter, apply the new value, and reset the active parameter to prevent unintended modifications:
- CC 101 (RPN MSB): Selects the parameter category (0 for Pitch Bend Sensitivity).
- CC 100 (RPN LSB): Selects the specific parameter (0 for Pitch Bend Sensitivity).
- CC 6 (Data Entry MSB): Sets the coarse value in semitones (set to 12 for one octave).
- CC 38 (Data Entry LSB): Sets the fine value in cents (typically set to 0).
The Exact RPN Message Sequence
Send the following sequence of messages on the target MIDI channel (example uses MIDI Channel 1):
| Order | Message Type / Function | Controller (CC) | Value (Decimal) | Raw MIDI Bytes (Hex) |
|---|---|---|---|---|
| 1 | Select RPN MSB | CC 101 | 0 | B0 65 00 |
| 2 | Select RPN LSB | CC 100 | 0 | B0 64 00 |
| 3 | Set Semitones (Data Entry MSB) | CC 6 | 12 | B0 06 0C |
| 4 | Set Cents (Data Entry LSB) | CC 38 | 0 | B0 26 00 |
| 5 | Null RPN MSB (Reset) | CC 101 | 127 | B0 65 7F |
| 6 | Null RPN LSB (Reset) | CC 100 | 127 | B0 64 7F |
Note: For channels other than Channel 1, replace the first nibble
B0 with Bn, where n is the
zero-indexed channel number (e.g., B1 for Channel 2,
BF for Channel 16).
Why the Reset Step Matters
Steps 5 and 6 send the "Null" or "End of RPN" command
(127, 127). Closing the RPN session deselects the pitch
bend sensitivity parameter. This prevents any subsequent, accidental
Data Entry commands (CC 6 or CC 38) from altering the pitch bend range
during a performance or playback.