1. IMPORTANT:
    We launched a new online community and this space is now closed. This community will be available as a read-only resources until further notice.
    JOIN US HERE

Looking for Maschine MK3 Sysex List

Discussion in 'MASCHINE Area' started by Aftalyfe, Apr 14, 2021.

  1. Aftalyfe

    Aftalyfe New Member

    Messages:
    17
    Hey everyone,

    I am trying to display information on my MK3 via Sysex messages, I was looking through the web and can't find any information on what the correct sysex structure for that message would be. I found some people who were trying to do the same thing but I believe it was for older versions of maschine. They provided some messages, but those don't exactly work with MK3, my LEDs randomly light up so I know the maschine receives the message I just dont know how to tell it to display anything.

    I am using FL Studio scripts to talk to the controller and I would ultimately love to create a script that would "mimic" the Maschine behaviour in FL Studio (adding custom chords, custom scales and stuff like that) but in order to do that I need to display some information on the displays and controller editor doesnt provide enough options.

    I have put the display in MCU mode btw.

    Does anyone have any useful information or experience with this?

    My experience with MIDI is very limited, I am still learning concepts around it so I would accept any useful advice.

    Thank you for your time!
     
  2. D-One

    D-One Well-Known Member

    Messages:
    10,075
    Setting the MK3 to Mackie via CE makes it automatically grab things like track names, pan/vol values, etc (provided FL MCU has a way of sending those, it should as most DAW's do)
    So.. you're stuck with the Mackie standard to display text, the sysex structure has been published around the web, read this: https://forum.cockos.com/showthread.php?t=101328, post 22 to be exact.
     
    • Like Like x 1
  3. Aftalyfe

    Aftalyfe New Member

    Messages:
    17
    Thanks for the link! It indeed does do that, but it is rather clunky and limited in what information is able to appear that way. Besides, I am unable to have both the functionality I have so far with my script and the integrated MCU one. Now I know sysex messages are able to show messages on the screens, I just need to crack the code that tells Maschine that it should display it. I will dig into those pdfs, see if anything does something, I feel like NI has a specific Sysex format to tell Maschine what to do, but I have no idea how to reverse engineer it as everything I have tried so far only lights up seemingly random LEDs on the Maschine.
     
  4. D-One

    D-One Well-Known Member

    Messages:
    10,075
    Yes, it's based on an old standard that Mackie created for their own stuff, it was never meant for modern HW with hi-res screens to display anything fancy.

    Controlling the Pad Leds is easy, it's covered in the CE manual, basically, notes control the LED on/off state and velocity controls the brightness, you have to enable it on the template tho.

    To get an idea of what might be possible assuming FL's control API is developed enough look at what was available on the first controller with screens (Maschine Studio) with Ableton Live, here, if that functionality is of interest then your can move from there, but note... that kind of advanced DAW control with scales, note repeats, different menus, and custom text implies thousands of lines of code, spread across many files, custom classes, etc, etc... this is not simple Map button X to do Y function kind of thing... So... evaluate if you have the skills for such a task, specifically Python knowledge.

    Search for FL scripts out there that can do stuff similar to what you're envisioning or look at some of the advanced MK3 scripts for Ableton since they also use Python, altho the API is different the key to sending text will be there.

    As far as gaining real control of the screens beyond MCU mode Emerah started some preliminary work here:
    https://github.com/Emerah/Prototype-NI-MMK3-HID
    He also had a script that might have valuable info:
    https://github.com/Emerah/Maschine-Control

    HID, handshakes, and all sorts of proprietary crap:
    https://medium.com/@lerner98/rage-against-the-maschine-3357be1abc48
    https://github.com/SamL98/NIProtocol

    GoaSkin shares / discusses some details about the KKS Mk2 here:
    https://www.native-instruments.com/...komplete-kontrol-mk2-on-linux-and-mac.333887/

    Screens and protocols aswell:
    https://github.com/Drachenkaetzchen/cabl
    Felicia Hummel (Drachenkaetzchen) even got video running on the screens with a fork of Cabl, so there is info out there for reverse engineering.. not an easy task tho:


    Read all of those and judge if you have what it takes, good luck.
     
    Last edited: Apr 15, 2021
  5. Aftalyfe

    Aftalyfe New Member

    Messages:
    17
    Thank you for providing all these links, I will definitely look into it! It does seem intimidating at a first glance, but then again so did scripting. I generally don't have problems with scripting stuff in python now, I fully scripted a smaller controller and decided it was time to try to do it for my Maschine mk3, but I'm sad to see there is not an easier way to utilize those screens. I can control LED's perfectly fine via cc messages and generally I have an idea how to utilize maschine mk3 for input. Displaying stuff is where I have issues now. All I really need is a way to tell what scale is currently active (as I have already implemented octave+- and semitone+- functionality) what chord set is being used and other custom stuff like that. If this doesn't work out I guess I'll find another way. But thank you anyway, a lot of this stuff is good reference material that I wouldn't be able to find myself (I love that video hack on maschine lol).