Question about MIDI Map with Serato and DJM-S9 (Newbie)

Hi everyone,

I’m a new user and I’ve found this forum searching info about midi mapping with Serato.

I’m from Italy, so I’ll sorry if I don’t speak English very well

I’m trying to understand some “extras” stuff about the midi map with Serato and my mixer Pioneer DJM-S9.

Could I ask some questions about it, even if they have nothing to do with Mixxx ?


no help for this ?

I would need help about advanced midi map for the xml and SysEx commands…


This is the Mixxx forum. If you want help using Serato, use Serato’s support.

hi, yes I know. it’s not really about Serato. I was just to know about the SysEx messages and if it was possible to integrate it in the midi xml code.

this forum is more technical for some stuff, for this reason I wanted to ask something here. On the Serato Forum nobody could help me…

Serato people won’t help you with such details. I suggest you look inside the mixxx wiki page and find the reverse engineering site.

You could also check the JS source code of the mappings for other Pioneer controllers in the Mixxx repo. Maybe one of them contains a SysEx that can be used for your controller, too.

thanks for the answer. unfortunately Serato does not give the support for these things about SysEx and the midi xml

on the forum nobody looks interested about advanced stuff, but only the basic things

i was looking for information on google and I’ve found Mixxx on GitHub, then the forum and I decided to ask something

I could take a look on the contents that you suggested.

I have just an important question about Serato and my Pioneer mixer: do you know if is possible to integrate the SysEx message inside the xml midi code ?

there are some things that I can not midi map: matching color pad that I assign in the software or midi Mao a double click function on a button


Hey - by the way: do you know how to repair the clutch on my old Citroen? need desperate help there …

Sorry - don’t wanna be sarcastic neither rude but it is a similar question …

Serato is closed source and no one will give you support for the details there. Here also nobody knows all details for Serato, all is known is summarized in reverse engineering site on the wiki. If you need help for the Mixxx software there are a lot of very knowledgeable people here.

If you are going to do a mapping for your hardware then I suggest you start mapping for Mixxx. This way you will learn a lot also for your hardware, short midi messages and SysEx as well.

1 Like

it was just a question regarding midi map and sysex messages.
I know that it’s also about Serato, but I was just asking if somebody could help me to understand if it was possible what I wanted to do.

but, anyway, thanks all for your help


Sorry, no idea about midi mapping in Serato. As I said, if the SysEx messages are similar you might find them in the other Pioneer mappings.

If it turns out that it’s not possible to do what you want in Serato, I suggest to have a look at Mixxx (the 2.3 Beta in particular). Mixxx is fully open-source and has a JavaScript mapping engine that allows you to map your controller exactly how you want. If you need help with mapping in Mixxx, have a look at the Wiki or ask questions in the controller mapping category of this forum.

@hlzhs :rofl: :rofl: :rofl:

@dimix I just had a look to the DJM-S9 device and it looks like very doable to map it with Mixxx. I encourage you to try it. I gonna help with my little knowledge but the developers here are helpful very much too. Cheers!

If you have knowledge of MIDI and sysex, you will be more comfortable with Mixxx which is open source and fully documented, than with Serato which is not oriented towards advanced configuration and customization.
What are you trying to do with sysex, more precisely ?

thanks for your answers…

I would like to know more about MIDI Map and SyeSex and maybe Mixxx could help me with this, but for now I just need to understand something with Serato and my DJM-S9.

For now I just know the basic of the MIDI Map and the xml edit with Serato, but there are things that I’m not able to do:

  1. Most important thing: how to match the hot cue colors that assign in Serato, when I change them
  2. How to midi map a “double click” (Serato has this for default for “instant doubles”)
  3. How to unlock some buttons that Serato lock for MIDI Mapping

I was searching information on google, asking on the forum and also the support, but I’ve never found nothing about it…

The, I discovered Mixxx on github and I was reading something about SysEx and advanced MIDI map and I decide to ask technical information about what I wanted to do

I don’t really know too much about the way SysEx work because I’ve just discovered it, but maybe is what I need this for midi map the things I mentioned before.
So I would just like to know if is possible to do about matching colors, double click, etc and merging SysEx commands in Serato Midi xml

I hope it was clear

Thanks for your help and sorry if is not related to Mixxx

SyEx are regular midi messages, they begin with F0 and end with F7. There is not much difference with other MIDI message types, ie 90 for note-on or B0 for control change.
I’d advise you to read some documentation about MIDI. Your question is very vague, so reading some background information might help you getting started.
If you have any precise question related to Mixxx, feel free to ask here.

Just to clarify: you want help with MIDI mapping in Serato. Mixxx and Serato are different applications and their MIDI mapping formats are completely different. If Serato also uses XML for controller mappings that’s pure coincidence. We have no idea how creating controller mappings in Serato works. Therefore we can’t help you with that.

Regarding Sysex: Here’s the standard SysEx message to get the controller dump:

That’s the problem with proprietary software. If the documentation is lacking, you can’t look at the source to determine how it works.

thanks for the info.

just one thing that is not clear for me: in general, is possible to integrate sysex message in the xml for midi mapping ? if yes, is something that is the same for all the software or is different ? how could I know if is possible with Serato ?


in general: yes the sysex needs to be sent by the mapping file, in Mixxx this is the mapping.js not the .xml. No idea where to put it in SErato. Each software handles differently. in Mixxx you got all documented and can review the code to see what happens. Serato wanna sell you things “as is” and you need to live with what they give to you.

So it means that for Serato I have to understand and discover the sysex messages and if is possible to integrate them in the Midi XML file, right ?

There is also the possibility that there is no way for doing it ?