FX/effect selection MIDI mappability

Currently, the only way to interact with the FX slots is to scroll through the effect list. This isn’t particularly helpful when trying to instantly set a specific effect bank across one or many slots.

Solution

Make specific FX across all slots selectable with a button press interaction in the MIDI mapping options

Hi @mindcontroller, thanks for the suggestion. Are you referring to Manual FX, Instant FX, Pad FX or all 3?

Personally I was thinking of manual FX but as it is a different way of interacting instead of a ‚feature‘, it may make sense for all of them

Thanks for clarifying @mindcontroller. I will share this with the dev team for consideration.

i believe this is already possible…
but you need to change the parameter ranges of the Manual FX of your controller
ie…
if your Manual FX midi fader/knob is set to chan 1 cc 5, you need to change the parameter numbers between 0-127 and take note of the value that causes the changes between the FX..
usually the first FX is 0 and the last FX is 127 the parameter numbers in between are where the changes occur..

once you know the number range of each FX you need to map them using your specific controller’s editor and map the ranges individually..

i did something similar but using the “scrub” function, to jump around in a song with button presses, its the same method that you could apply to mapping FX, or FX lengths

look at the video i posted on this thread…

again the method of mapping FX is the same
but requires the mapping editor software of your controller in order to do it…
if your controller does not have a midi mapping editor or allow you to change parameters or midi button type… then you are at the mercy of the developers prioritization time line

1 Like

I managed to do what you describe by modifying “.djayMidiMapping” file with a text editor.
I wanted to use the effects pallet from GRV6 with another midi controller so I made something like this:

		<dict>
			<key>keyPath</key>
			<string>customProcessor.beatFXEffectEcho</string>
			<key>midiChannel</key>
			<integer>0</integer>
			<key>midiData</key>
			<integer>53</integer>
			<key>midiMessageType</key>
			<integer>1</integer>
		</dict>
		<dict>
			<key>keyPath</key>
			<string>customProcessor.beatFXEffectLowCutEcho</string>
			<key>midiChannel</key>
			<integer>0</integer>
			<key>midiData</key>
			<integer>55</integer>
			<key>midiMessageType</key>
			<integer>1</integer>
		</dict>
		<dict>
			<key>keyPath</key>
			<string>customProcessor.beatFXEffectSpiral</string>
			<key>midiChannel</key>
			<integer>0</integer>
			<key>midiData</key>
			<integer>57</integer>
			<key>midiMessageType</key>
			<integer>1</integer>
		</dict>
		<dict>
			<key>keyPath</key>
			<string>customProcessor.beatFXEffectHelix</string>
			<key>midiChannel</key>
			<integer>0</integer>
			<key>midiData</key>
			<integer>59</integer>
			<key>midiMessageType</key>
			<integer>1</integer>
		</dict>

or you can make a favorite effect list in the app and use 2 buttons for:

		<dict>
			<key>keyPath</key>
			<string>turntable1.fx3SelectPrev</string>
			<key>midiChannel</key>
			<integer>0</integer>
			<key>midiData</key>
			<integer>50</integer>
			<key>midiMessageType</key>
			<integer>1</integer>
		</dict>
		<dict>
			<key>keyPath</key>
			<string>turntable1.fx3SelectNext</string>
			<key>midiChannel</key>
			<integer>0</integer>
			<key>midiData</key>
			<integer>52</integer>
			<key>midiMessageType</key>
			<integer>1</integer>
		</dict>

It will be nice if we can have some hints from developers how to address midi commands better and and what functions can we trigger to be able to make custom midi boards or to edit generic ones for our specific needs.

4 Likes

Nice! Thanks for sharing @Gabi0110