aolsenjazz / super-controller

Give your MIDI devices super powers: take control of the lights, messages, and communication between controllers.
MIT License
19 stars 2 forks source link

Launchkey mini MK3 support #9

Open assaron opened 1 year ago

assaron commented 1 year ago

Are there specific reasons why launchkey mini mk3 has this long control sequence? My understanding is that one of the messages is suddicient, namely [159, 12, 127] which turns DAW mode on (there are more details here: https://github.com/giezu/LaunchkeyMiniMK3) .

Also, you can switch between session and drum mode, and drum mode provides 16 more pads on channel 9 that can be controlled. Not sure if there is a need for this, but as a proof of principle I was able to make it work. Basically we can just add two more pad rows below the current ones in UI.

aolsenjazz commented 1 year ago

Wow! I wish I found this when I was first writing SC. I believe the control sequence is what it is because when I first figured out that it may be a necessary feature, it was on another controller which exchanged 100+ messages with Ableton. From there I pared it down to what seemed like the minimum messages required to gain control instead of Ableton.

If a single message works, a single message should absolutely be used. Would be great if this can be simplified for all controllers, but will require some testing. Iirc, the current control sequence is the same for all controllers currently.

Re session mode/drum mode, I would love to support this. Many controllers offer different modes, and it makes sense that there would be sort of a multi-input functionality. Same goes for the piano keys re. transposition. Main question to me is, how to abstract it into a scalable pattern so that it's not a huge pain to hard-code each controller's alternate functionalities.