Talk to other MIDI Designer users about MIDI Designer, iOS MIDI and related topics. Or share layouts, pages, and ideas.

Also check out the Facebook Group.

Of course, if you want to send us an email, feel free.

MIDI Designer
Design your perfect MIDI controller for iPad, iPhone and iPod touch.
Can a bank change slider send program change 0 when bank changed and update related Program Change slider? - MIDI Designer Q&A

Can a bank change slider send program change 0 when bank changed and update related Program Change slider?

+1 vote
asked Jul 5, 2018 in Advanced by espiegel123 (470 points)

So, I .am on the road to figuring this out but am having a problem. But there is a glitch. Hopefully, you can let me know what I am doing wrong.

Here is the setup:

* Two control clusters, one for Program Change and One for Bank Change (MSB), let's call them PC_Cluster and Bank_Cluster

* Each cluster has a slider and two steppers (one for increment and one for decrement). Pressing the increment or decrement affects only the related slider.

I have added a dial (let's call it "program reset") whose MIDI message is program change and whose range is 0 to 0. It's job is --when triggered -- to set program change to 0.

I have made "Program Reset" a subcontrol of all the Bank_Cluster controls. And "Program Reset" is a supercontrol of the PC_Cluster's Program Change slider.

It is successful in resetting the Program Change to 0 when you make a bank change.

But, I have a big problem: when I make a change to the Program Change slider, the bank change slider is reset!

It appears that changing the Program Change slider (which is a subcontrol of "Program Reset") is causing Program Reset to send a message to the Bank Change cluster (which is Program Reset's ) which is resetting it.

I have tried to see if changing any of the subcontrol and super control options would change this. But I haven't found one.

Any idea how to make the 'program reset' function so that changing the slider (which is its subcontrol) does not impact the "Program Reset's" super-controls. Note that the super-controls are for Bank Change not Program Change. I am not sure how that message is getting passed up. I am not sure if this is user error or a bug.

2 Answers

+1 vote
Best answer

The trick was having the 'reset' button be a momentary and set it to Force Not Stepper

I was able to finally get this to work by using a momentary button instead of a knob. I am not sure why the knob was behaving the way that it was -- if there is a bug involved or a misunderstanding on my part.

So, here is what is working.

A momentary button (let's call it "PC Reset") is a supercontrol of the PC slider. It is a subcontrol of the bank change slider (and its steppers). Its Supercontrol options are set to "Force Not Stepper" and Buttons Are Send Only (which was true of the knob that I was using).

(ADDED July 22) KNOB CAN WORK, TOO! It turns out that a knob can be used for the PC Reset, too (although I now realize that a momentary makes more sense). To get a knob to work, you need to go into its subcontrol options on the Relationships tab. If you turn on "Send Current Value" (which is not set by default), it works as desired.
answered Jul 17, 2018 by espiegel123 (470 points)
selected Jul 22, 2018 by MIDI Designer Team (Dan)
This is awesome. Great work and thanks so much for sharing.
0 votes

Some thoughts and things to try

This is more of a spit-balling than an answer, but anyway:

Most solutions to problems like this involve an "interstitial control" (i.e., one in between the control you are changing and the one you want to change). Whatever you do, don't create another program change knob. Instead, try to add a reset-to-default button as a supercontrol and see if you can get it to react to the bank change (by making it a subcontrol). Here are some issues to consider: You actually need another supercontrol, since if you make the bank change a super, it won't send. Something else: don't make the button of TYPE "reset to default" because that will make it reset the entire layout to defaults. Instead there's an option in supercontrol options.
answered Jul 9, 2018 by MIDI Designer Team (Dan)