Skip to content

Instantly share code, notes, and snippets.

@mathieuaime
Created November 28, 2018 21:25
Show Gist options
  • Select an option

  • Save mathieuaime/f04130a0a38a85371815051b25f72009 to your computer and use it in GitHub Desktop.

Select an option

Save mathieuaime/f04130a0a38a85371815051b25f72009 to your computer and use it in GitHub Desktop.
MIDI mapping of Pioneer DJM S3 for Serato DJ
<!-- MIDI Mapping for Pioneer DJM S3-->
<midi app="Serato DJ Pro 2.0.1.736">
<!-- FX 2 : Select FX -->
<control channel="1" event_type="Control Change" control="31">
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Single Mode"/>
</condition>
<userio event="click">
<effect_scroll deck_set="DJ Effects" deck_id="1" slot_id="0">
<translation action_on="any" behaviour="explicit"/>
</effect_scroll>
</userio>
</case>
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Multi Mode"/>
</condition>
<userio event="click">
<effect_scroll deck_set="DJ Effects" deck_id="1" slot_id="1">
<translation action_on="any" behaviour="explicit"/>
</effect_scroll>
</userio>
</case>
</control>
<!-- FX 2 : Knob 1 -->
<control channel="1" event_type="Control Change" control="108">
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Single Mode"/>
</condition>
<userio event="click">
<effect_slot_parameter_1 deck_set="DJ Effects" deck_id="1" slot_id="0">
<translation action_on="any" behaviour="explicit"/>
</effect_slot_parameter_1>
</userio>
</case>
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Multi Mode"/>
</condition>
<userio event="click">
<effect_level_1_slot_parameter_1 deck_set="DJ Effects" deck_id="1" slot_id="1">
<translation action_on="any" behaviour="explicit"/>
</effect_level_1_slot_parameter_1>
</userio>
</case>
</control>
<!-- FX 2 : knob 2 -->
<control channel="1" event_type="Control Change" control="30">
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Multi Mode"/>
</condition>
<userio event="click">
<effect_level_1_slot_parameter_1 deck_set="DJ Effects" deck_id="1" slot_id="2">
<translation action_on="any" behaviour="explicit"/>
</effect_level_1_slot_parameter_1>
</userio>
</case>
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Single Mode"/>
</condition>
<userio event="click">
<effect_slot_parameter_2 deck_set="DJ Effects" deck_id="1" slot_id="0">
<translation action_on="any" behaviour="explicit"/>
</effect_slot_parameter_2>
</userio>
</case>
</control>
<!-- FX 2 : knob 3 -->
<control channel="1" event_type="Control Change" control="28">
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Single Mode"/>
</condition>
<userio event="click">
<effect_slot_parameter_3 deck_set="DJ Effects" deck_id="1" slot_id="0">
<translation action_on="any" behaviour="explicit"/>
</effect_slot_parameter_3>
</userio>
</case>
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Multi Mode"/>
</condition>
<userio event="click">
<effect_level_1_slot_parameter_1 deck_set="DJ Effects" deck_id="1" slot_id="3">
<translation action_on="any" behaviour="explicit"/>
</effect_level_1_slot_parameter_1>
</userio>
</case>
</control>
<!-- FX 2 : activate FX -->
<control channel="1" event_type="Control Change" data_type="Relative Signed Bit" control="87">
<case>
<condition>
<touch_effect_modifier deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="on"/>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Single Mode"/>
</condition>
<userio event="click">
<effect_slot_enable deck_set="DJ Effects" deck_id="1" slot_id="0">
<translation action_on="press" behaviour="static" static_value="on"/>
</effect_slot_enable>
</userio>
</case>
<case>
<condition>
<touch_effect_modifier deck_set="DJ Effects" deck_id="1" slot_id="1" operator="equal" cmp_value="off"/>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Multi Mode"/>
</condition>
<userio event="click">
<effect_level_1_slot_enable deck_set="DJ Effects" deck_id="1" slot_id="1">
<translation action_on="press" behaviour="toggle"/>
</effect_level_1_slot_enable>
</userio>
</case>
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Multi Mode"/>
<touch_effect_modifier deck_set="DJ Effects" deck_id="1" slot_id="1" operator="equal" cmp_value="on"/>
</condition>
<userio event="click">
<effect_level_1_slot_enable deck_set="DJ Effects" deck_id="1" slot_id="1">
<translation action_on="press" behaviour="static" static_value="on"/>
</effect_level_1_slot_enable>
</userio>
</case>
<case>
<condition>
<effect_bank_mode deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="Single Mode"/>
<touch_effect_modifier deck_set="DJ Effects" deck_id="1" slot_id="0" operator="equal" cmp_value="off"/>
</condition>
<userio event="click">
<effect_slot_enable deck_set="DJ Effects" deck_id="1" slot_id="0">
<translation action_on="press" behaviour="toggle"/>
</effect_slot_enable>
</userio>
</case>
</control>
<!-- Filter A -->
<control channel="1" event_type="Control Change" data_type="Absolute 7" control="5">
<userio event="click">
<deck_filter_auto deck_set="Default" deck_id="0" slot_id="0">
<translation action_on="any" behaviour="explicit"/>
</deck_filter_auto>
</userio>
</control>
<!-- Filter B -->
<control channel="1" event_type="Control Change" data_type="Absolute 7" control="10">
<userio event="click">
<deck_filter_auto deck_set="Default" deck_id="1" slot_id="0">
<translation action_on="any" behaviour="explicit"/>
</deck_filter_auto>
</userio>
</control>
</midi>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment