Add an example config for the X-Touch Mini.
This commit is contained in:
parent
a90a0c0361
commit
cb90678434
|
@ -0,0 +1,99 @@
|
||||||
|
|
||||||
|
# Mapping for the X-Touch Mini in MC mode which takes care of the most glaring
|
||||||
|
# issues with this (rather nice) device: (1) no bank change keys, (2) no
|
||||||
|
# channel selection, and (3) no faders (except for the master fader).
|
||||||
|
|
||||||
|
# Copyright (c) 2018 Albert Graef <aggraef@gmail.com>
|
||||||
|
|
||||||
|
# Copying and distribution of this file, with or without modification, are
|
||||||
|
# permitted in any medium without royalty provided the copyright notice and
|
||||||
|
# this notice are preserved. This file is offered as-is, without any
|
||||||
|
# warranty.
|
||||||
|
|
||||||
|
JACK_NAME "midizap-XTouchMini"
|
||||||
|
JACK_PORTS 2
|
||||||
|
|
||||||
|
# Pass everything through, except for the translations below.
|
||||||
|
|
||||||
|
PASSTHROUGH
|
||||||
|
SYSTEM_PASSTHROUGH
|
||||||
|
|
||||||
|
# The idea of this mapping is to leave the original bindings mostly untouched,
|
||||||
|
# and just add few things on top of it. Note that the device, besides the
|
||||||
|
# encoders and the master faders, has two rows of 8 buttons and 2 buttons on
|
||||||
|
# the right which are laid out in MC mode as follows:
|
||||||
|
|
||||||
|
# [CLICK] [SOLO] [TRACK] [SEND] [PAN] [PLUGIN] [EQ] [INST] [MARKER]
|
||||||
|
# [DROP] [REPLACE] [REW] [FFWD] [LOOP] [STOP] [PLAY] [REC] [NUDGE]
|
||||||
|
|
||||||
|
# We turn the MC/DROP key into an internal SHIFT key and remap the other keys
|
||||||
|
# as follows (with the shifted bindings given above and below in parentheses;
|
||||||
|
# these become active when holding down the MC/SHIFT key):
|
||||||
|
|
||||||
|
# (SELECT) ... (MARKER)
|
||||||
|
# [CLICK] [SOLO] [TRACK] [SEND] [PAN] [PLUGIN] [EQ] [INST] [BANK LEFT]
|
||||||
|
# [SHIFT] [REPLACE] [REW] [FFWD] [LOOP] [STOP] [PLAY] [REC] [BANK RIGHT]
|
||||||
|
# (DROP) (NUDGE)
|
||||||
|
|
||||||
|
# That is, the shifted REPLACE key makes up for the remapped DROP key, and the
|
||||||
|
# MARKER and NUDGE keys must now be shifted to get these functions, while the
|
||||||
|
# unshifted keys are used to change banks. In addition, the eight buttons in
|
||||||
|
# the top row, when shifted, select the corresponding channel. And last but
|
||||||
|
# not least, the encoders, when operated while holding down the MC/SHIFT key,
|
||||||
|
# become the missing faders.
|
||||||
|
|
||||||
|
[MIDI]
|
||||||
|
|
||||||
|
# MC = shift button, with direct feedback
|
||||||
|
D#7 SHIFT ^D#7 RELEASE SHIFT ^D#7
|
||||||
|
|
||||||
|
# A/B buttons on the right = bank left/right
|
||||||
|
C7 A#3 # bank left
|
||||||
|
C#7 B3 # bank right
|
||||||
|
|
||||||
|
# shifted A/B buttons = MARKER/NUDGE
|
||||||
|
^C7 C7
|
||||||
|
^C#7 C#7
|
||||||
|
|
||||||
|
# shifted REPLACE button = DROP
|
||||||
|
^E7 D#7
|
||||||
|
|
||||||
|
# shifted top row = SELECT
|
||||||
|
^F7 C2
|
||||||
|
^F#7 C#2
|
||||||
|
^E3 D2
|
||||||
|
^F3 D#2
|
||||||
|
^F#3 E2
|
||||||
|
^G3 F2
|
||||||
|
^G#3 F#2
|
||||||
|
^A3 G2
|
||||||
|
|
||||||
|
# shifted encoders = channel faders
|
||||||
|
^CC16~ PB[129]-1
|
||||||
|
^CC17~ PB[129]-2
|
||||||
|
^CC18~ PB[129]-3
|
||||||
|
^CC19~ PB[129]-4
|
||||||
|
^CC20~ PB[129]-5
|
||||||
|
^CC21~ PB[129]-6
|
||||||
|
^CC22~ PB[129]-7
|
||||||
|
^CC23~ PB[129]-8
|
||||||
|
|
||||||
|
[MIDI2]
|
||||||
|
|
||||||
|
# feedback for the BANK LEFT/RIGHT buttons
|
||||||
|
A#3 C7
|
||||||
|
B3 C#7
|
||||||
|
|
||||||
|
# NOTE: We might also want to provide some actual feedback for the *shifted*
|
||||||
|
# faders here in the future, so that the current values are shown in the LED
|
||||||
|
# rings of the encoders while the faders are being operated.
|
||||||
|
|
||||||
|
# dummy feedback for the faders, to take advantage of automatic feedback
|
||||||
|
PB[129]-1 NOP
|
||||||
|
PB[129]-2 NOP
|
||||||
|
PB[129]-3 NOP
|
||||||
|
PB[129]-4 NOP
|
||||||
|
PB[129]-5 NOP
|
||||||
|
PB[129]-6 NOP
|
||||||
|
PB[129]-7 NOP
|
||||||
|
PB[129]-8 NOP
|
|
@ -1,128 +1,150 @@
|
||||||
<!DOCTYPE patchbay>
|
<!DOCTYPE patchbay>
|
||||||
<patchbay name="midizap2" version="0.5.3">
|
<patchbay name="midizap" version="0.5.4">
|
||||||
<output-sockets>
|
<output-sockets>
|
||||||
<socket exclusive="off" name="Ctlra Maschine" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="Ctlra Maschine" exclusive="off" client="a2j">
|
||||||
<plug>Ctlra Maschine Mk3.*</plug>
|
<plug>Ctlra Maschine Mk3.*</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-Maschine" client="midizap-Maschine" type="jack-midi">
|
<socket type="jack-midi" name="midizap-Maschine" exclusive="off" client="midizap-Maschine">
|
||||||
<plug>midi_out</plug>
|
<plug>midi_out</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-Maschine 2" client="midizap-Maschine" type="jack-midi">
|
<socket type="jack-midi" name="midizap-Maschine 2" exclusive="off" client="midizap-Maschine">
|
||||||
<plug>midi_out2</plug>
|
<plug>midi_out2</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="Ardour mackie out" client="ardour" type="jack-midi">
|
<socket type="jack-midi" name="Ardour mackie out" exclusive="off" client="ardour">
|
||||||
<plug>mackie control out</plug>
|
<plug>mackie control out</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="nanoKONTROL2" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="nanoKONTROL2" exclusive="off" client="a2j">
|
||||||
<plug>nanoKONTROL2.* MIDI 1</plug>
|
<plug>nanoKONTROL2.* MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-nanoKONTROL 1" client="midizap-nanoKONTROL2" type="jack-midi">
|
<socket type="jack-midi" name="midizap-nanoKONTROL 1" exclusive="off" client="midizap-nanoKONTROL2">
|
||||||
<plug>midi_out</plug>
|
<plug>midi_out</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-nanoKONTROL 2" client="midizap-nanoKONTROL2" type="jack-midi">
|
<socket type="jack-midi" name="midizap-nanoKONTROL 2" exclusive="off" client="midizap-nanoKONTROL2">
|
||||||
<plug>midi_out2</plug>
|
<plug>midi_out2</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="X-Touch" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="X-Touch" exclusive="off" client="a2j">
|
||||||
<plug>.*X-Touch MIDI 1</plug>
|
<plug>.*X-Touch MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="X-Touch One" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="X-Touch MINI" exclusive="off" client="a2j">
|
||||||
|
<plug>.*X-TOUCH MINI MIDI 1</plug>
|
||||||
|
</socket>
|
||||||
|
<socket type="jack-midi" name="midizap-XTouchMini 1" exclusive="off" client="midizap-XTouchMini">
|
||||||
|
<plug>midi_out</plug>
|
||||||
|
</socket>
|
||||||
|
<socket type="jack-midi" name="midizap-XTouchMini 2" exclusive="off" client="midizap-XTouchMini">
|
||||||
|
<plug>midi_out2</plug>
|
||||||
|
</socket>
|
||||||
|
<socket type="jack-midi" name="X-Touch One" exclusive="off" client="a2j">
|
||||||
<plug>X-Touch One.* MIDI 1</plug>
|
<plug>X-Touch One.* MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-XTouchONE 1" client="midizap-XTouchONE" type="jack-midi">
|
<socket type="jack-midi" name="midizap-XTouchONE 1" exclusive="off" client="midizap-XTouchONE">
|
||||||
<plug>midi_out</plug>
|
<plug>midi_out</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-XTouchONE 2" client="midizap-XTouchONE" type="jack-midi">
|
<socket type="jack-midi" name="midizap-XTouchONE 2" exclusive="off" client="midizap-XTouchONE">
|
||||||
<plug>midi_out2</plug>
|
<plug>midi_out2</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="APCmini" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="APCmini" exclusive="off" client="a2j">
|
||||||
<plug>APC MINI.* MIDI 1</plug>
|
<plug>APC MINI.* MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-APCmini 1" client="midizap-APCmini" type="jack-midi">
|
<socket type="jack-midi" name="midizap-APCmini 1" exclusive="off" client="midizap-APCmini">
|
||||||
<plug>midi_out</plug>
|
<plug>midi_out</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-APCmini 2" client="midizap-APCmini" type="jack-midi">
|
<socket type="jack-midi" name="midizap-APCmini 2" exclusive="off" client="midizap-APCmini">
|
||||||
<plug>midi_out2</plug>
|
<plug>midi_out2</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="MPKmini2" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="MPKmini2" exclusive="off" client="a2j">
|
||||||
<plug>MPKmini2.* MIDI 1</plug>
|
<plug>MPKmini2.* MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-MPKmini 1" client="midizap-MPKmini2" type="jack-midi">
|
<socket type="jack-midi" name="midizap-MPKmini 1" exclusive="off" client="midizap-MPKmini2">
|
||||||
<plug>midi_out</plug>
|
<plug>midi_out</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="shuttlepro" client="shuttlepro" type="jack-midi">
|
<socket type="jack-midi" name="shuttlepro" exclusive="off" client="shuttlepro">
|
||||||
<plug>midi_out</plug>
|
<plug>midi_out</plug>
|
||||||
</socket>
|
</socket>
|
||||||
</output-sockets>
|
</output-sockets>
|
||||||
<input-sockets>
|
<input-sockets>
|
||||||
<socket exclusive="off" name="midizap-Maschine" client="midizap-Maschine" type="jack-midi">
|
<socket type="jack-midi" name="midizap-Maschine" exclusive="off" client="midizap-Maschine">
|
||||||
<plug>midi_in</plug>
|
<plug>midi_in</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-Maschine 2" client="midizap-Maschine" type="jack-midi">
|
<socket type="jack-midi" name="midizap-Maschine 2" exclusive="off" client="midizap-Maschine">
|
||||||
<plug>midi_in2</plug>
|
<plug>midi_in2</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="Ctlra Maschine" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="Ctlra Maschine" exclusive="off" client="a2j">
|
||||||
<plug>Ctlra Maschine Mk3.*</plug>
|
<plug>Ctlra Maschine Mk3.*</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="Ardour mackie in" client="ardour" type="jack-midi">
|
<socket type="jack-midi" name="Ardour mackie in" exclusive="off" client="ardour">
|
||||||
<plug>mackie control in</plug>
|
<plug>mackie control in</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-nanoKONTROL 1" client="midizap-nanoKONTROL2" type="jack-midi">
|
<socket type="jack-midi" name="midizap-nanoKONTROL 1" exclusive="off" client="midizap-nanoKONTROL2">
|
||||||
<plug>midi_in</plug>
|
<plug>midi_in</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-nanoKONTROL 2" client="midizap-nanoKONTROL2" type="jack-midi">
|
<socket type="jack-midi" name="midizap-nanoKONTROL 2" exclusive="off" client="midizap-nanoKONTROL2">
|
||||||
<plug>midi_in2</plug>
|
<plug>midi_in2</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="nanoKONTROL2" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="nanoKONTROL2" exclusive="off" client="a2j">
|
||||||
<plug>nanoKONTROL2.* MIDI 1</plug>
|
<plug>nanoKONTROL2.* MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="X-Touch" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="X-Touch" exclusive="off" client="a2j">
|
||||||
<plug>.*X-Touch MIDI 1</plug>
|
<plug>.*X-Touch MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-XTouchONE 1" client="midizap-XTouchONE" type="jack-midi">
|
<socket type="jack-midi" name="midizap-XTouchMini 1" exclusive="off" client="midizap-XTouchMini">
|
||||||
<plug>midi_in</plug>
|
<plug>midi_in</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-XTouchONE 2" client="midizap-XTouchONE" type="jack-midi">
|
<socket type="jack-midi" name="midizap-XTouchMini 2" exclusive="off" client="midizap-XTouchMini">
|
||||||
<plug>midi_in2</plug>
|
<plug>midi_in2</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="X-Touch One" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="X-Touch MINI" exclusive="off" client="a2j">
|
||||||
|
<plug>.*X-TOUCH MINI MIDI 1</plug>
|
||||||
|
</socket>
|
||||||
|
<socket type="jack-midi" name="midizap-XTouchONE 1" exclusive="off" client="midizap-XTouchONE">
|
||||||
|
<plug>midi_in</plug>
|
||||||
|
</socket>
|
||||||
|
<socket type="jack-midi" name="midizap-XTouchONE 2" exclusive="off" client="midizap-XTouchONE">
|
||||||
|
<plug>midi_in2</plug>
|
||||||
|
</socket>
|
||||||
|
<socket type="jack-midi" name="X-Touch One" exclusive="off" client="a2j">
|
||||||
<plug>X-Touch One.* MIDI 1</plug>
|
<plug>X-Touch One.* MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-APCmini 1" client="midizap-APCmini" type="jack-midi">
|
<socket type="jack-midi" name="midizap-APCmini 1" exclusive="off" client="midizap-APCmini">
|
||||||
<plug>midi_in</plug>
|
<plug>midi_in</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-APCmini 2" client="midizap-APCmini" type="jack-midi">
|
<socket type="jack-midi" name="midizap-APCmini 2" exclusive="off" client="midizap-APCmini">
|
||||||
<plug>midi_in2</plug>
|
<plug>midi_in2</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="APCmini" client="a2j" type="jack-midi">
|
<socket type="jack-midi" name="APCmini" exclusive="off" client="a2j">
|
||||||
<plug>APC MINI.* MIDI 1</plug>
|
<plug>APC MINI.* MIDI 1</plug>
|
||||||
</socket>
|
</socket>
|
||||||
<socket exclusive="off" name="midizap-MPKmini 1" client="midizap-MPKmini2" type="jack-midi">
|
<socket type="jack-midi" name="midizap-MPKmini 1" exclusive="off" client="midizap-MPKmini2">
|
||||||
<plug>midi_in</plug>
|
<plug>midi_in</plug>
|
||||||
</socket>
|
</socket>
|
||||||
</input-sockets>
|
</input-sockets>
|
||||||
<slots/>
|
<slots/>
|
||||||
<cables>
|
<cables>
|
||||||
<cable output="Ctlra Maschine" input="midizap-Maschine" type="jack-midi"/>
|
<cable type="jack-midi" output="Ctlra Maschine" input="midizap-Maschine"/>
|
||||||
<cable output="midizap-Maschine" input="Ardour mackie in" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-Maschine" input="Ardour mackie in"/>
|
||||||
<cable output="midizap-Maschine 2" input="Ctlra Maschine" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-Maschine 2" input="Ctlra Maschine"/>
|
||||||
<cable output="Ardour mackie out" input="midizap-Maschine 2" type="jack-midi"/>
|
<cable type="jack-midi" output="Ardour mackie out" input="midizap-Maschine 2"/>
|
||||||
<cable output="Ardour mackie out" input="X-Touch" type="jack-midi"/>
|
<cable type="jack-midi" output="Ardour mackie out" input="X-Touch"/>
|
||||||
<cable output="Ardour mackie out" input="midizap-APCmini 2" type="jack-midi"/>
|
<cable type="jack-midi" output="Ardour mackie out" input="midizap-APCmini 2"/>
|
||||||
<cable output="Ardour mackie out" input="midizap-XTouchONE 2" type="jack-midi"/>
|
<cable type="jack-midi" output="Ardour mackie out" input="midizap-XTouchONE 2"/>
|
||||||
<cable output="Ardour mackie out" input="midizap-nanoKONTROL 2" type="jack-midi"/>
|
<cable type="jack-midi" output="Ardour mackie out" input="midizap-nanoKONTROL 2"/>
|
||||||
<cable output="X-Touch" input="Ardour mackie in" type="jack-midi"/>
|
<cable type="jack-midi" output="Ardour mackie out" input="midizap-XTouchMini 2"/>
|
||||||
<cable output="X-Touch One" input="midizap-XTouchONE 1" type="jack-midi"/>
|
<cable type="jack-midi" output="nanoKONTROL2" input="midizap-nanoKONTROL 1"/>
|
||||||
<cable output="nanoKONTROL2" input="midizap-nanoKONTROL 1" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-nanoKONTROL 1" input="Ardour mackie in"/>
|
||||||
<cable output="APCmini" input="midizap-APCmini 1" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-nanoKONTROL 2" input="nanoKONTROL2"/>
|
||||||
<cable output="midizap-APCmini 1" input="Ardour mackie in" type="jack-midi"/>
|
<cable type="jack-midi" output="X-Touch" input="Ardour mackie in"/>
|
||||||
<cable output="midizap-APCmini 2" input="APCmini" type="jack-midi"/>
|
<cable type="jack-midi" output="X-Touch One" input="midizap-XTouchONE 1"/>
|
||||||
<cable output="MPKmini2" input="midizap-MPKmini 1" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-XTouchONE 1" input="Ardour mackie in"/>
|
||||||
<cable output="midizap-MPKmini 1" input="Ardour mackie in" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-XTouchONE 2" input="X-Touch One"/>
|
||||||
<cable output="shuttlepro" input="Ardour mackie in" type="jack-midi"/>
|
<cable type="jack-midi" output="APCmini" input="midizap-APCmini 1"/>
|
||||||
<cable output="midizap-XTouchONE 1" input="Ardour mackie in" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-APCmini 1" input="Ardour mackie in"/>
|
||||||
<cable output="midizap-XTouchONE 2" input="X-Touch One" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-APCmini 2" input="APCmini"/>
|
||||||
<cable output="midizap-nanoKONTROL 1" input="Ardour mackie in" type="jack-midi"/>
|
<cable type="jack-midi" output="MPKmini2" input="midizap-MPKmini 1"/>
|
||||||
<cable output="midizap-nanoKONTROL 2" input="nanoKONTROL2" type="jack-midi"/>
|
<cable type="jack-midi" output="midizap-MPKmini 1" input="Ardour mackie in"/>
|
||||||
|
<cable type="jack-midi" output="shuttlepro" input="Ardour mackie in"/>
|
||||||
|
<cable type="jack-midi" output="X-Touch MINI" input="midizap-XTouchMini 1"/>
|
||||||
|
<cable type="jack-midi" output="midizap-XTouchMini 1" input="Ardour mackie in"/>
|
||||||
|
<cable type="jack-midi" output="midizap-XTouchMini 2" input="X-Touch MINI"/>
|
||||||
</cables>
|
</cables>
|
||||||
</patchbay>
|
</patchbay>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue