Muliple MIDI Devices Best Practices

I have several MIDI devices, some of which duplicate certain cc’s unless I configure them otherwise. Some of these controls are “noisy” in that they occasionally send messages with their MIDI value without me touching them. For instance, I have a mod wheel on my S66 Komplete Kontrol, a mod touch strip on my M32 Kk, a set of Nakedboard sliders with one set as CC1 and I have an expression pedal set to CC1 for when I want to play ensemble patches with two hands and control dynamics instead of Volume. Because of the “noisiness” I get erratic behavior seen on MIDI-OX especially with the pedal sending out a value, seemingly at random, but other physical controls seem to do this occasionally as well.

Is there a general set of “best practices” when setting up multiple MIDI devices? Almost all of them allow me to “program” each physical control to send on a specific MIDI channel and which CC their data is sent from.

Give each physical control it’s own CC and use the “learn” feature in each VI?
Put each device on a separate channel?
Just leave them as is and only use BMTP to map everything for different scenarios?

Any advice would be greatly appreciated!

Well, noisy devices may be dealt with differently depending on their behavior. In most case, just disabling input for the first CC arrived could solve the problem. In addition I believe you should separate your devices by using device selection at preset or translator levels as described in this tutorial.

The attached file shows how you can suppress initial messages. I use the global variable “ga” to determine the count of incoming messages from CC0. I use the local variable pp in translator 0.0 to determine how many messages I want suppressed.

I set a watchdog timer (in this case 1000ms) to reset the counter which will disable the output until the next cycle. Again the count will have to exceed pp before output resumes.

Translator 0.0 handles the logic and determines whether we output the message or note.
Translator 0.1 Sets the watchdog timer with a 1000ms delay
Translator 0.2 Will reset the counter after the delay.

Reduce-Noisy-CC.bmtp (1.5 KB)

Steve Caldwell
Bome Customer Care

Also available for paid consulting services:
1 Like

Thank you so much for getting back to me so quickly!
I’ll test things out this afternoon and get back to you I have more questions.
Thanks again.

1 Like