It is possible to pass modifier states across devices.
This involves setting the target device to ‘All ports’ in the Controller preferences, and then adding a modifier in the target device that responds to the same channel and CC# or note as the modifier on the sending device.
Ensure your gear is using different MIDI channels to avoid unwanted MIDI clashes. If you want to involve your keyboard, some Bomes trickery will be required.
An example:
I have a VCI-100 with the djtechtools mapping, broadcasting on MIDI channel 1. I also have a Nanopad, broadcasting on channel 10.
The shift button on the VCI-100 is Ch1-Note-A#6. It sets M7=1 Type=Button on HOLD.
In the controller preferences I set the Nanopad MIDI input to ‘All ports’. Then I add a control. I will use M7 for simplicity.
Set M7=1 Type=Button to HOLD on Ch1-Note-A#6.
Hey presto, you can now use the shift button on the VCI as a shift button on the Nanopad.
havent tried this out, but sounds like a neat little trick. that being said, when i had my vci-100 listening on all ports it did all sorts of weird stuff, but i will need to review once more if any of my attached controllers were sending stuff back on the same channel as the vci.
hmm thinking about it some more .. i guess my issues originated from the fact that i probably had multiple devices on channel 1. i guess with this approach it becomes important again to cleanly separate the channels.
I “make” global modifiers by setting up the same modifiers in each of two Traktor Logical Controllers (different buttons activate of course), then use bomes or midipipe as the “connection” between the two. A bomes in–>controller out, Logical Controller needs to be added in Traktor for every unit that needs to “respond” to the press of a button on a different controller.
The tricky part is trying to figure out which of your commands need to be under what Logical Controller..