Simple MIDI programming on Leonardo

That code is way too complicated.

I would recommend something like this. It uses the Control Surface library.

[color=#5e6d03]#include[/color] [color=#434f54]<[/color][b][color=#d35400]Control_Surface[/color][/b][color=#434f54].[/color][color=#000000]h[/color][color=#434f54]>[/color] [color=#434f54]// [/color][u][color=#434f54]https://github.com/tttapa/Control-Surface[/color][/u]
[color=#5e6d03]using[/color] [color=#5e6d03]namespace[/color] [color=#000000]MIDI_Notes[/color][color=#000000];[/color]

[color=#434f54]// Add a MIDI interface to use:[/color]
[b][color=#d35400]USBMIDI_Interface[/color][/b] [color=#00979c]midi[/color][color=#000000];[/color]

[color=#434f54]// Add potentiometer controls:[/color]
[b][color=#d35400]CCPotentiometer[/color][/b] [color=#000000]modulation[/color] [color=#434f54]=[/color] [color=#000000]{[/color][color=#000000]A0[/color][color=#434f54],[/color] [color=#000000]{[/color][b][color=#d35400]MIDI_CC[/color][/b][color=#434f54]:[/color][color=#434f54]:[/color][color=#00979c]Modulation_Wheel[/color][color=#434f54],[/color] [color=#00979c]CHANNEL_1[/color][color=#000000]}[/color][color=#000000]}[/color][color=#000000];[/color]  
[b][color=#d35400]CCPotentiometer[/color][/b] [color=#000000]volume[/color]     [color=#434f54]=[/color] [color=#000000]{[/color][color=#000000]A1[/color][color=#434f54],[/color] [color=#000000]{[/color][b][color=#d35400]MIDI_CC[/color][/b][color=#434f54]:[/color][color=#434f54]:[/color][color=#00979c]Channel_Volume[/color][color=#434f54],[/color]   [color=#00979c]CHANNEL_1[/color][color=#000000]}[/color][color=#000000]}[/color][color=#000000];[/color]
[b][color=#d35400]CCPotentiometer[/color][/b] [color=#000000]pan[/color]        [color=#434f54]=[/color] [color=#000000]{[/color][color=#000000]A2[/color][color=#434f54],[/color] [color=#000000]{[/color][b][color=#d35400]MIDI_CC[/color][/b][color=#434f54]:[/color][color=#434f54]:[/color][color=#00979c]Pan[/color][color=#434f54],[/color]              [color=#00979c]CHANNEL_1[/color][color=#000000]}[/color][color=#000000]}[/color][color=#000000];[/color]
[b][color=#d35400]PBPotentiometer[/color][/b] [color=#000000]pitch[/color]      [color=#434f54]=[/color] [color=#000000]{[/color][color=#000000]A3[/color][color=#434f54],[/color] [color=#00979c]CHANNEL_1[/color][color=#000000]}[/color][color=#000000];[/color]

[color=#434f54]// Add transposer with three states: [/color]
[color=#434f54]// one octave down (-1), not transposed (0), and one octave up (+1)  [/color]
[b][color=#d35400]Transposer[/color][/b][color=#434f54]<[/color][color=#434f54]-[/color][color=#000000]1[/color][color=#434f54],[/color] [color=#434f54]+[/color][color=#000000]1[/color][color=#434f54]>[/color] [color=#000000]octaveTransp[/color][color=#000000]([/color][color=#000000]12[/color][color=#000000])[/color][color=#000000];[/color] [color=#434f54]// 12 semitones = one octave[/color]

[color=#434f54]// Add buttons to control the transposer[/color]
[b][color=#d35400]IncrementDecrementSelector[/color][/b][color=#434f54]<[/color][color=#000000]octaveTransp[/color][color=#434f54].[/color][color=#000000]N[/color][color=#434f54]>[/color] [color=#000000]selector[/color] [color=#434f54]=[/color] [color=#000000]{[/color]
  [color=#000000]octaveTransp[/color][color=#434f54],[/color] [color=#000000]{[/color][color=#000000]10[/color][color=#434f54],[/color] [color=#000000]11[/color][color=#000000]}[/color][color=#434f54],[/color] [color=#000000]Wrap[/color][color=#434f54]:[/color][color=#434f54]:[/color][color=#000000]Clamp[/color][color=#434f54],[/color] [color=#434f54]// pin 10 transposes up, pin 11 down  [/color]
[color=#000000]}[/color][color=#000000];[/color]

[color=#434f54]// Add note buttons that can be transposed:[/color]
[b][color=#d35400]Bankable[/color][/b][color=#434f54]:[/color][color=#434f54]:[/color][b][color=#d35400]NoteButton[/color][/b] [color=#000000]buttons[/color][color=#000000][[/color][color=#000000]][/color] [color=#434f54]=[/color] [color=#000000]{[/color]
  [color=#000000]{[/color][color=#000000]octaveTransp[/color][color=#434f54],[/color] [color=#000000]2[/color][color=#434f54],[/color] [color=#000000]note[/color][color=#000000]([/color][color=#000000]C[/color][color=#434f54],[/color] [color=#000000]4[/color][color=#000000])[/color][color=#000000]}[/color][color=#434f54],[/color] [color=#434f54]// pin 2, middle C[/color]
  [color=#000000]{[/color][color=#000000]octaveTransp[/color][color=#434f54],[/color] [color=#000000]3[/color][color=#434f54],[/color] [color=#000000]note[/color][color=#000000]([/color][color=#000000]D[/color][color=#434f54],[/color] [color=#000000]4[/color][color=#000000])[/color][color=#000000]}[/color][color=#434f54],[/color] [color=#434f54]// pin 3, middle D[/color]
  [color=#000000]{[/color][color=#000000]octaveTransp[/color][color=#434f54],[/color] [color=#000000]4[/color][color=#434f54],[/color] [color=#000000]note[/color][color=#000000]([/color][color=#000000]E[/color][color=#434f54],[/color] [color=#000000]4[/color][color=#000000])[/color][color=#000000]}[/color][color=#434f54],[/color]
  [color=#000000]{[/color][color=#000000]octaveTransp[/color][color=#434f54],[/color] [color=#000000]5[/color][color=#434f54],[/color] [color=#000000]note[/color][color=#000000]([/color][color=#000000]F[/color][color=#434f54],[/color] [color=#000000]4[/color][color=#000000])[/color][color=#000000]}[/color][color=#434f54],[/color]
  [color=#000000]{[/color][color=#000000]octaveTransp[/color][color=#434f54],[/color] [color=#000000]6[/color][color=#434f54],[/color] [color=#000000]note[/color][color=#000000]([/color][color=#000000]G[/color][color=#434f54],[/color] [color=#000000]4[/color][color=#000000])[/color][color=#000000]}[/color][color=#434f54],[/color]
[color=#000000]}[/color][color=#000000];[/color]

[color=#434f54]// Add transport control buttons:[/color]
[b][color=#d35400]NoteButton[/color][/b] [color=#000000]transportButtons[/color][color=#000000][[/color][color=#000000]][/color] [color=#434f54]=[/color] [color=#000000]{[/color]
  [color=#000000]{[/color][color=#000000]7[/color][color=#434f54],[/color] [b][color=#d35400]MCU[/color][/b][color=#434f54]:[/color][color=#434f54]:[/color][color=#00979c]PLAY[/color][color=#000000]}[/color][color=#434f54],[/color]   [color=#434f54]// pin 7, Mackie Control Universal "play" command[/color]
  [color=#000000]{[/color][color=#000000]8[/color][color=#434f54],[/color] [b][color=#d35400]MCU[/color][/b][color=#434f54]:[/color][color=#434f54]:[/color][color=#00979c]STOP[/color][color=#000000]}[/color][color=#434f54],[/color]   [color=#434f54]// pin 8, Mackie Control Universal "stop" command[/color]
  [color=#000000]{[/color][color=#000000]9[/color][color=#434f54],[/color] [b][color=#d35400]MCU[/color][/b][color=#434f54]:[/color][color=#434f54]:[/color][color=#00979c]RECORD[/color][color=#000000]}[/color][color=#434f54],[/color] 
[color=#000000]}[/color][color=#000000];[/color]

[color=#00979c]void[/color] [color=#5e6d03]setup[/color][color=#000000]([/color][color=#000000])[/color] [color=#000000]{[/color]
  [b][color=#d35400]Control_Surface[/color][/b][color=#434f54].[/color][color=#d35400]begin[/color][color=#000000]([/color][color=#000000])[/color][color=#000000];[/color]
[color=#000000]}[/color]

[color=#00979c]void[/color] [color=#5e6d03]loop[/color][color=#000000]([/color][color=#000000])[/color] [color=#000000]{[/color]
  [b][color=#d35400]Control_Surface[/color][/b][color=#434f54].[/color][color=#5e6d03]loop[/color][color=#000000]([/color][color=#000000])[/color][color=#000000];[/color]
[color=#000000]}[/color]

It handles debouncing, potentiometer filtering, transposing, etc. internally so you don't have to worry about any of that.
Everything you add (MIDI interfaces, potentiometers, buttons, transposers, selectors) is automatically picked up by the library, and it will initialize and update everything for you.

Pieter