WANTED: MPD32 Midi Fighter Mapping

WANTED: MPD32 Midi Fighter Mapping

I’ve been looking all over the forums for a mapping of Midi Fighter Classic or Pro for the MPD32. If anyone can help or has one, I would much appreciate it! Thank you.

you can use the deckalized focus mapping from the midifighter. All you need to do is once the mapping is imported changed the CC to number on the mpd in the global functions to 3 and you are ready to go :slight_smile:.

You can then quickly map the faders to control the eq’s and crossfader

hope this helps

Nice, but its not really what I’m looking for. Like I want the instant gratification mapping, if its possible to have.

Im not sure if thats possible but if it was I don’t think it would be as nice as you think it would. The pads on the MPD aren’t that responsive and pressing 4 pads down in a row would be a bit of a finger stretch.

u can do it using midimasher if u use the learn.exe (and are on a pc) to create a devices file. i already have a config for a mpd18

http://midimasher.djism.com/lua/config/

i seem to remember there being some issue with the aftertouch on the mpd18 or something tho…

personally i’d keep the mpd32 for some cool beat mashing and rhythm programming but the instant grat mapping is fun to try out.

if u have a spare gamepad lying around u could also use that to try out the instant grat mapping as i’ve just released a version of midimasher with hid support.

Nice! I’m going to try it out I’ll get back to you on this.

would be cool to have a mpd32 devices file to include with midimasher anyway :wink:

if u have a spare gamepad tho that’s probably the simplest way of just trying ou the instant grat tsi. u also don’t need to import the midimasher.tsi to do that - just the instant grat one.

once i get it to work ill be sure to forward the .tsi to you :smiley: Im going to do it now

I’m not sure what to do, I followed the directions to the T and nothing works. how do i create its own .lua file

first thing u need to do (as no one has given me a devices config file for a mpd32 yet) is to create one by running learn.exe

here’s a quick grab of me re-rerunning it to create it from my midi fighter:

1: LoopBe Internal MIDI
2: MM to Traktor
3: Traktor to MM
4: MidiFighter1 Input
5: MidiFighter1 Output
6: MidiFighter2 Input
7: MidiFighter2 Output
8: MidiFighter3 Input
9: MidiFighter3 Output
10: MM to Ableton
11: Ableton to MM
12: Midi Fighter Classic

choose a device: 12
enter the device type (will create devices/TYPE.lua): mpd32
writing to [devices/mpd32.lua]
Enter the number of grid controller rows (0 for none): 4
Enter the number of grid controller columns: 4
Press pad 1 on row 1
Press pad 2 on row 1
Press pad 3 on row 1
Press pad 4 on row 1
Press pad 1 on row 2
Press pad 2 on row 2
Press pad 3 on row 2
Press pad 4 on row 2
Press pad 1 on row 3
Press pad 2 on row 3
Press pad 3 on row 3
Press pad 4 on row 3
Press pad 1 on row 4
Press pad 2 on row 4
Press pad 3 on row 4
Press pad 4 on row 4
q

before pressing q and to quit u can also teach it about any other pots/buttons/encoders that it has, but this is all that is needed for the midifighter emulation

you should then have a file called devices/mpd32.lua under your midimasher directory

copy config/mpd18_midifighter_4banks.lua to config/mpd32_midifighter_4banks.lua (or just edit it for now) changing any off the “mpd18”'s to “mpd32”

then you should be able to run midimasher.bat and select the config file

I followed it and this is what happens and the batch closes right after

not good :stuck_out_tongue: can u paste me here your mpd32 config and devices files.

sure here it is

cheers, i’ll look at that tomorrow and see if i can work out what’s going on. hopefully something to do with the device names or something. i’ll create some virtual midi ports to match.

no chance u had the mpd32 open in any other app i guess? presume not as the learn.exe part worked fine?

yeah that part worked fine, i didnt have anything else opened up with it. and thanks for helping me out

ok - that would crash :stuck_out_tongue: tho i should trap that.

you seem to have the same contents in both the devices and the config file which is this:

-- grid controller pads

add_grid_control(0, 0, 1, "note", 36)
add_grid_control(0, 1, 1, "note", 37)
add_grid_control(0, 2, 1, "note", 38)
add_grid_control(0, 3, 1, "note", 39)
add_grid_control(1, 0, 1, "note", 40)
add_grid_control(1, 1, 1, "note", 41)
add_grid_control(1, 2, 1, "note", 42)
add_grid_control(1, 3, 1, "note", 43)
add_grid_control(2, 0, 1, "note", 44)
add_grid_control(2, 1, 1, "note", 45)
add_grid_control(2, 2, 1, "note", 46)
add_grid_control(2, 3, 1, "note", 47)
add_grid_control(3, 0, 1, "note", 48)
add_grid_control(3, 1, 1, "note", 49)
add_grid_control(3, 2, 1, "note", 50)
add_grid_control(3, 3, 1, "note", 51)

-- non grid controls

that should just be in devices/mpd32.lua which tells midimasher what midi your controller uses.

the file config/mpd32_midifighter_4banks.lua should have been based on one of the other *_midifighter_4banks.lua files, not just have the same contents as the devices one.

the config file tells midimasher what midi/hid devices to connect to and what configs to run on them.

from the mm startup u pasted it looks like you have:

in port: MIDIIN2 (Akai MPD32)
in port: MIDIIN3 (Akai MPD32)
out port: MIDIOUT2 (Akai MPD32)

i’m not sure why there’s multiples, but it’s the OUT port that we really need anyway for this. maybe it lets multiple apps connect and send data to it?

assuming it’s the first of those then try putting just this text in your config/mpd32_midifighter_4banks.lua:

--
-- virtual midifighter using a akai mpd32
--

open_midi_device("traktor", "traktor", "MIDIOUT2 (Akai MPD32)", "MIDIIN2 (Akai MPD32)", 2);
open_midi_device("mpd32", "mpd32", "Akai MPD18", "", 2);
open_midi_device("midifighter1", "generic", "MidiFighter1 Input", "MidiFighter1 Output")
virtual_midifighter_4banks("mpd32", 0, "midifighter1", 0, 0, 127, 0)

i may have got those mpd port names wrong. also, running debug.bat instead of midimasher.bat will dump out any errors warnings that it finds.

the reason it crashed before was that add_grid_control() was getting called before any open_midi_device() or open_hid_device(). i’ll put a patch in to output a warning and not die :wink:

patched for the next release, now it would have issued this instead of just dying:

loading: lib/startup.lua
loading: config/mpd32_bad.lua
warning: cannot call add_grid_control() before calling open_midi_device()

yeah i saw that there was multiple i would just press the one that said akai mpd32 number 7 for me. what do you need me to do now?

when u run midimasher.bat and select that mpd32_midifighter_4banks.lua config your mpd32 is now emulating a midifighter in 4banks mode. so long as u have the instant grat tsi setup properly in traktor and it’s in+out ports setup as i describe in my instructions then all should be good to go… so nothing else to do really

i may ofc have typed the mpd32 port names wrong in that config, so u need to check that. run the debug.bat and select the config to check - as then it should be printing out any midi to and from the mpd32/mm/traktor

you should see CTRL “led” flash in traktor when it gets midi input. if u get that and the debug output from mm seems to be showing something sensible then it’s working.

getting the instant grat tsi working can be a bit fun in itself. just remember to use the big import button, restart traktor and then import a 2nd time - so all the effects get setup correctly.

this should be the link for the latest mf instant grat afaik http://www.djtechtools.com/tsi/MF_InstantGrat_1_0_3.tsi

earlier i tested midimasher emulating a 4banks midifighter from my gamepad and also from my midifigher running in normal mode - so i know it’s all working ok. can’t see that the velocity-sensitive-ness of the mpd32 will cause any issues - or the aftertouch - but u never know…

any chance u could use learn.exe again with the other controls on your mpd32? enter any name when it asks and then just paste the contents of that to the end of your mpd32.lua one, or just paste me the new stuff.

you can then use the rest of the controls on your mpd32 to control other stuff in traktor

for example if u had 4 buttons that u called button1, button2 etc when using learn.exe u could make them control play+cue in traktor by putting this code in your mpd32_midifighter_4banks.lua file:

toggle("mpd32", "button1", 0, ON, OFF, "traktor", "play_a")
button("mpd32", "button2", 0, ON, OFF, "traktor", "cue_a")
toggle("mpd32", "button3", 0, ON, OFF, "traktor", "play_b")
button("mpd32", "button4", 0, ON, OFF, "traktor", "cue_b")

and mapping faders to levels+eq is even easier:

pipe("mpd32", "fader1", 0, "traktor", "eq_low_a")
pipe("mpd32", "fader2", 0, "traktor", "eq_mid_a")
pipe("mpd32", "fader3", 0, "traktor", "eq_high_a")
pipe("mpd32", "fader4", 0, "traktor", "volume_fader_a")
pipe("mpd32", "fader5", 0, "traktor", "eq_low_b")
pipe("mpd32", "fader6", 0, "traktor", "eq_mid_b")
pipe("mpd32", "fader7", 0, "traktor", "eq_high_b")
pipe("mpd32", "fader8", 0, "traktor", "volume_fader_b")

you will need to have imported the midimasher.tsi file and set it’s ports correctly to do stuff like that tho

the “0” in all of those lines means “all pages” as you can have multiple layers/pages if u want - tho it helps to have led feedback on the controls so u know what page you are on (which midimasher will do automatically so long as your controller supports led feedback)

is this correct?