What i would like to do is change patches not with one of the rotary controllers but with one of the Buttons on the right of the BCR, so, in short: One button to go one patch up, one button to go one patch down, in order to cycle through the 88 patches via buttons in either direction.
Yesterday evening I tried some things with he BC Manager to find it out myself. I found a solution:
So i made a custom sysex line for each button:
(with value 1 set to 0 and value 2 set to 63 with incremental step set to whatever step you like) I programmed the 4 buttons to +1, -1, +8, -8
But then I found out a logical error in my template:
The problem with program changes via a BCR button is there is no internal counteer for program changes - each button has its own counter which is a problem for Program Changes.
- So imagine i am on Program 01.
- Now, when i press the button "PC +1" (sysex = '$C0 val' with incremental +1) it goes up to 2 correctly.
- If i then want to go back to the previous program 1 by pressing the other button "PC -1" (sysex = '$C0 val' with incremental -1) it starts at its own counter which is still at 01 and therefore sends a program change to go 01 -1, so to the last program which is in this case 88.
- When i now press PC +1 again, the program goes up to 3, because the counter for PC +1 was at 2, and so on.
Is there a solution for this kind of problem: the BCR counter should internally count the PC Number, so all buttons send the correct PC number.