Sync Traktor BPM with Pioneer DJM S9

lauti
lauti Member Posts: 6 Member

What's up guys, I reverse enginereed Pioneer DJM S9 so as to be able to sync it with Traktor's BPM.

I'm super late to the party, last month I finally got an S9, so I wanted to use it with traktor and have automatic bpm for echo out.

This method probably works with S7, S11 Rev5 and Rev7


Also, enabled pad modes for Traktor.

Comments

  • lord-carlos
    lord-carlos Member Posts: 4,042 Expert

    Oh that is neat.

    How did you reverse engineer it?

  • Owner
    Owner Member Posts: 618 Guru
    edited March 26

    Great. How do you do that? I couldn't send the tempo to the S9 or activate pad mode with LED feedback. I'd be really interested to know.

  • Patch
    Patch Member Posts: 331 Pro

    Great work! Are all the LEDs available in all the colours? (Incl. the pad mode buttons?)

    Does this mean that the S9 is FULLY mappable to Traktor?

    Super excited if this means the S9 can be fully mapped to Traktor now…

  • Owner
    Owner Member Posts: 618 Guru
    edited March 28

    Dude, you're not going to just leave us sitting here after you've unleashed that firecracker, are you? It really turned me on. It would be cool if you could leak some more info!

  • Patch
    Patch Member Posts: 331 Pro

    This. I will keep bumping this thread!!!

  • lauti
    lauti Member Posts: 6 Member

    I love mistery lol

    sorry.

    here's the deal:

    S9 receives a couple of Sysex midi messages from serato (when open) to:

    a) recognize serato dj software is open (and enable some functions, like pad modes)

    b) set the BPM for when S9 is in auto bpm mode.

    To do that, I made an app that

    a)Sends the Sysex message, making the S9 believe that serato is open.

    a) gets BPM from Traktor midi clock, and sends the Sysex message.

    Theres A TON of midi mesages going between the S9 and Serato. A lot of the midi stuff from Pioneer is hardcoded in their controllers, so they have to do a bunch of, in my opinion, idiotic ways and workarounds to have layers, modes…instead of having a smart modifier logic as in traktor.

    It was a fun lil detective work to hack them and see which are important for the BPM mode and to decode them. The code only goes from 40bpm to 190bpm…with 3 decimals. So theres a sysex message (in hex) for each bpm interval…so that's like thousands of differents codes…I'm no profesional but it was fun to decode it.

    I'm curious if it also works with the S11…but I don't think nobody has it in my country to test it out.

  • Toltemic
    Toltemic Member Posts: 70 Helper

    Sweet, I wonder if it would work with the rane mixers too considering it also uses midi to communicate- can I ask what tools you used to find out the sysex message?

  • lord-carlos
    lord-carlos Member Posts: 4,042 Expert

    I think pioneer uses the same on stone older mixer so only authorized software can use phono in / dvs. It's bonkers.

  • Owner
    Owner Member Posts: 618 Guru

    Yeah, thanks for the info!

    It's not really necessary with the DJM-S11. It receives the bpm already, or rather, can measure it correctly. Sure, it would be pretty cool if it were always absolutely accurate. Especially in the double-time range, between 70 and 80 bpm, it's often double the value if you leave it on "auto." I think it would be really cool with the DJM-S7, among others, because it has the same problem as the DJM-S9. So, in my opinion, that should be clearly prioritized. Or with the Rane Seventy / Seventy Two.

  • Toltemic
    Toltemic Member Posts: 70 Helper

    also out of curiosity, and correct me if I'm wrong, but I think you might be able to use set master tempo out in 12.8 min/max increments using master tempo so it matches to each 0-127 midi range in 0.1 bpm

    40-52.8 bpm range to (for example) g#-1.chan13, 52.9-65.7 to A0.chan13 bpm range ect up to 300 bpm

    So instead of waiting for midi clock to work out bpm, you can immediately have the tempo

  • lauti
    lauti Member Posts: 6 Member
    edited April 18

    thats a good idea.

    Yeah, also I know i could try to use the CSI hack method used for screens to get the BPM info, but the midi clock tap was fast.

    But your's is a cool idea and should be pretty fast

Back To Top