The following is the code for the modifier. This is the example.
Please note:
Since I do not have your controller the parameter numbers will be different.
I assume that you want your modifier button to work at all times.
Lets also assume that
modifier on the left is #1
modifier on the right is #2
You will have to map for all possible conditions wich are
1. No modifier is set
2. Modifier #1 is set
3. Modifier #2 is set
4. Modifiers #1 and #2 are set
Then your code is
- Code: Select all
<mapping name="LS SAMPLE SELECT">
<events>
<MIDI type="Note" parameter="0x12" channel="0x1"/>
</events>
<controls>
<control alias="mod(ShiftLogic1)"/>
</controls>
<preset name="Toggler Button">
<parameters>
<parameter object="invert" key="on" value="off"/>
</parameters>
</preset>
</mapping>
<mapping name="LS SAMPLE SELECT ML1">
<events>
<MIDI type="Note" parameter="0x12" modifiers="ML1" channel="0x1"/>
</events>
<controls>
<control alias="mod(ShiftLogic1)"/>
</controls>
<preset name="Toggler Button">
<parameters>
<parameter object="invert" key="on" value="off"/>
</parameters>
</preset>
</mapping>
<mapping name="LS SAMPLE SELECT ML2">
<events>
<MIDI type="Note" parameter="0x12" modifiers="ML2" channel="0x1"/>
</events>
<controls>
<control alias="mod(ShiftLogic1)"/>
</controls>
<preset name="Toggler Button">
<parameters>
<parameter object="invert" key="on" value="off"/>
</parameters>
</preset>
</mapping>
<mapping name="LS SAMPLE SELECT ML12">
<events>
<MIDI type="Note" parameter="0x12" modifiers="ML1, ML2" channel="0x1"/>
</events>
<controls>
<control alias="mod(ShiftLogic1)"/>
</controls>
<preset name="Toggler Button">
<parameters>
<parameter object="invert" key="on" value="off"/>
</parameters>
</preset>
</mapping>
That is just when you have Deck 1 selected. You have to map all the same commands using channel 2.
If you have Deck 3 selected and deck 3 is Player #3 then the Locators work but not the sample pads.
If you have Deck 3 selected and deck 3 Sampler #1 then the sample pads will work but not the locators.
This entire thing applies all over using channel 2 and 4 for the right side.
Your locators being the default should be mapped as follow:
- Code: Select all
<mapping name="LS LOC 1">
<events>
<MIDI type="Note" parameter="0x9" channel="0x1"/>
</events>
<controls>
<control alias="fam(Player)[0x1].Locator1Control"/>
</controls>
<preset name="Holder Button">
<parameters>
<parameter object="invert" key="on" value="off"/>
</parameters>
</preset>
</mapping>
Repeat the above command for all four locators and for all four decks. Of course using channels 1,2,3,4 depending on the player that you are mapping a locator for.
Your sample pads on the left should be map as follows:
- Code: Select all
<mapping name="LS PAD 1">
<events>
<MIDI type="Note" parameter="0x18" modifiers="ML1" channel="0x1"/>
</events>
<controls>
<control alias="fam(Sampler)[0x1].Pad1Control"/>
</controls>
<preset name="Holder Button">
<parameters>
<parameter object="invert" key="on" value="off"/>
</parameters>
</preset>
</mapping>
Since you want each side to work indepentdently the you also need
- Code: Select all
<mapping name="LS PAD 1">
<events>
<MIDI type="Note" parameter="0x18" modifiers="ML1, ML2" channel="0x1"/>
</events>
<controls>
<control alias="fam(Sampler)[0x1].Pad1Control"/>
</controls>
<preset name="Holder Button">
<parameters>
<parameter object="invert" key="on" value="off"/>
</parameters>
</preset>
</mapping>
repeat the above command for all 4 pads on each channel.
Now for the LEDs. Your LEDs for sampler pads should be mapped to to work in both conditions
The Left side
- Code: Select all
<mapping>
<control alias="fam(Sampler)[0x1].Pad1Control" value="true" modifiers="ML1"/>
<MIDI type="Note" parameter="0x18" channel="0x1" value="127"/>
</mapping>
<mapping>
<control alias="fam(Sampler)[0x1].Pad1Control" value="false" modifiers="ML1"/>
<MIDI type="Note" parameter="0x18" channel="0x1" value="0"/>
</mapping>
<mapping>
<control alias="fam(Sampler)[0x1].Pad1Control" value="true" modifiers="ML1, ML2"/>
<MIDI type="Note" parameter="0x18" channel="0x1" value="127"/>
</mapping>
<mapping>
<control alias="fam(Sampler)[0x1].Pad1Control" value="false" modifiers="ML1, ML2"/>
<MIDI type="Note" parameter="0x18" channel="0x1" value="0"/>
</mapping>
The right side
- Code: Select all
<mapping>
<control alias="fam(Sampler)[0x2].Pad1Control" value="true" modifiers="ML2"/>
<MIDI type="Note" parameter="0x18" channel="0x2" value="127"/>
</mapping>
<mapping>
<control alias="fam(Sampler)[0x2].Pad1Control" value="false" modifiers="ML2"/>
<MIDI type="Note" parameter="0x18" channel="0x2" value="0"/>
</mapping>
<mapping>
<control alias="fam(Sampler)[0x2].Pad1Control" value="true" modifiers="ML1, ML2"/>
<MIDI type="Note" parameter="0x18" channel="0x2" value="127"/>
</mapping>
<mapping>
<control alias="fam(Sampler)[0x2].Pad1Control" value="false" modifiers="ML1, ML2"/>
<MIDI type="Note" parameter="0x18" channel="0x2" value="0"/>
</mapping>
You will also have to map to them to using chanels 3 and 4
Remember that all parameter number are just an example, you have to map to the correct parameter for your controller.
Finally, while either mod(ShiftLogic1, mod(ShiftLogic2 are set all the lights on your controller will turn off unless you map them to meet all 4 conditions stated at the beginning.
There is also a proven way to map all 8 locator and all 8 sample pads. I have done this for the U-Mix Control Pro-2. No offense to your understanding but it is a little complicated toexplain here.