Custom midi remote script for using the MPK261 in Ableton Live 10.x
Fixes some issues with the default one that comes with Ableton.
Alternate script with Live-Looping functionality
How to Install
1: Find the "MIDI Remote Scripts" folder for your installation of Ableton (Usually: C:\Program Files\Ableton\Resources\MIDI Remote Scripts)
2: Copy the MPK261MX and MPK261MXLOOP folders there
3: Open Ableton and got to Option/Preferences .. Then the Link MIDI tab. Select the desired script in the Control Surface selector. Set Input/Output as your MPK261
Setting on the MPK261 to support the Relative Encoders
1: Load the "LiveLite" default Preset
2: Save it on another slot (there are empty ones from 25 to 30), I name mine MPK261MX to keep it simple
3: With your new Preset loaded go to edit mode
4: Move the first knob and change the "Type" from "MIDI CC" to "INC/DEC2". Make sure they are on channel 1. Do the same for all 8 knobs
5: Save your preset
You should be good to go!
Clicking on a device you should now see the blue hand and it should automap if you click on another device
Enjoy the super smooth movement of the relative knobs!
MPK261MX "Normal" script mostly meant to live play insttruments
MPK261MXLOOP
Script to be used for LiveLooping
Sustain pedal 1 (CC64) is a smart Launchtrack button
-- On empty cell: record
-- While recording: Stop and play clip
-- On a playing clip: toggle overdub mode on/off
-- On an empty clip while another clip is playing: Stop clips and start recording
Daw Control arrows
Change your MPK preset so that the arrows send CC instead of keystrokes
Channel 1
UP:88 Down:89 Left:20 Right:21
Those are automapped to track selection Left/Right and clip selection up/down regardless of current focus
-- KUDOS --
Gluon (Julien Bayle) for the unofficial repository: https://github.com/gluon/AbletonLive10.1_MIDIRemoteScripts
and API documentation: https://julienbayle.studio/AbletonLiveRemoteScripts_Docs/_Framework/
Some more: https://julienbayle.studio/PythonLiveAPI_documentation/Live10.0.1.xml
mLegore (Michael LeGore) for his MPK249 automap fix: https://gist.github.com/mlegore/477741b6b6a2c8f658d81d2c02de0974
Richard Medek for his Endless encoders fix: https://richardmedek.com/2016/01/13/ableton-live-and-akais-endless-encoders/
Framework scripts for reference: https://github.com/gluon/AbletonLive10.1_MIDIRemoteScripts/tree/master/_Framework
Hot Examples. Good for finding code snippets for people who don't know python like me: https://python.hotexamples.com/examples/_Framework.TransportComponent/TransportComponent/set_enabled/python-transportcomponent-set_enabled-method-examples.html
Live Object Model from MaxForLive: https://docs.cycling74.com/max8/vignettes/live_object_model?q=object%20model
Ableton for making this possible at all
NOT Ableton for making this information so freaking hard to find and figure out
NOT Akai for putting out a half-assed default script. The super old MPK61 script didn't have the same limitations. So weird.
Some links on how to mess with MIDI remote scripts:
https://djtechtools.com/2014/07/06/the-basics-of-ableton-live-midi-controller-scripts-auto-mapping/
Max 8 Documentation (translates a lot to what you can do in the scripts: https://docs.cycling74.com/max8
http://remotescripts.blogspot.com/2010_03_01_archive.html