Page 1 of 1

Ableton live TIP! enable instant mapping for any controller

Posted: Tue May 08, 2012 1:14 pm
by nutrician
:D I found out today that you can configure EVERY midi controller with ableton live. And most important also the Instant mapping that is unique to ableton live.

You can edit your own UserConfiguration.txt to match your midi controller and save this.

Copy UserConfiguration.txt (find it in the directory below) and place it in a new folder in the same directory. Give the folder a name(like the name of you controller)

You will need the MIDI CC data from each control on your controller to configure this file.

Mac: [Your home folder]/Library/Preferences/Ableton/[your version]/User Remote Scripts/

Windows: [Windows boot drive]/Users/ [your Username]/AppData/Roaming/Ableton/[your version]/Preferences/User Remote Scripts/

Open ableton and select you controller in the midi tab.

Re: Ableton live TIP! enable instant mapping for any control

Posted: Thu Apr 04, 2013 2:26 pm
by YeahItsMe
Has anyone tried this with TouchOSC, preferably the Live Control feature?

Re: Ableton live TIP! enable instant mapping for any control

Posted: Thu Apr 04, 2013 2:54 pm
by VirtualMark
If you look in the help section on Live, it has a ton of guides for each controller. For example, on my Oxygen 49, if I set it to preset 10 it's already configured for Live. Pretty useful!

I've not looked into scripting yet, I couldn't be bothered to learn how it works! It's on the to do list.

Re: Ableton live TIP! enable instant mapping for any control

Posted: Thu Apr 04, 2013 7:44 pm
by YeahItsMe
If you check midi remote scripts and go into user scripts it has the instructions! Lol but i'm pretty sure you can only use it if it plugs in through usb. It's be cool if someone knows more about this. I'd live to control my vsts from touchosc ;)

Re: Ableton live TIP! enable instant mapping for any control

Posted: Wed Apr 10, 2013 11:14 am
by 5415
VirtualMark wrote:If you look in the help section on Live, it has a ton of guides for each controller. For example, on my Oxygen 49, if I set it to preset 10 it's already configured for Live. Pretty useful!

I've not looked into scripting yet, I couldn't be bothered to learn how it works! It's on the to do list.
Cheers for this tip, unfortunately live doesn't exactly go to town on their guide for the padKontrol:

Image

Re: Ableton live TIP! enable instant mapping for any control

Posted: Wed Apr 10, 2013 3:33 pm
by YeahItsMe
sais wrote:
VirtualMark wrote:If you look in the help section on Live, it has a ton of guides for each controller. For example, on my Oxygen 49, if I set it to preset 10 it's already configured for Live. Pretty useful!

I've not looked into scripting yet, I couldn't be bothered to learn how it works! It's on the to do list.
Cheers for this tip, unfortunately live doesn't exactly go to town on their guide for the padKontrol:

Image
My friend, I've never seen the sceen/window you displayed in the picture. Could youtell me how you got there? :) thanks

Re: Ableton live TIP! enable instant mapping for any control

Posted: Wed Apr 10, 2013 4:11 pm
by 5415
Help>Help view>setup>midi hardware>specific control surfaces

Re: Ableton live TIP! enable instant mapping for any control

Posted: Thu Apr 11, 2013 6:21 pm
by YeahItsMe
The scripts only work for controllers that show up in the top menu. My Alesis QX-25 doesn't show...

Re: Ableton live TIP! enable instant mapping for any control

Posted: Mon Apr 15, 2013 6:23 am
by YeahItsMe
sais wrote: Cheers for this tip, unfortunately live doesn't exactly go to town on their guide for the padKontrol:
Don't worry about that screen. It's all about the User Remore Script you create/download. I was able to download it from the manufacturers website for my Alesis QX25.

I only figured out how to use the 8 encoders. I tried to get more but it wasn't working...

Re: Ableton live TIP! enable instant mapping for any control

Posted: Mon Apr 15, 2013 8:07 pm
by 5415
^Ah cool, ill give it a look.

Re: Ableton live TIP! enable instant mapping for any control

Posted: Tue Apr 16, 2013 3:56 am
by YeahItsMe
So with my success, I figured I'd post the script that worked for me :D This is going to be every thing from top to bottom.
COPY EVERYTHING FROM "# TO FfwdButton: -1"
# Config File for User-defined Instant Mappings

# We assume that the controls on your MIDI controller
# send CCs (except for pads). All controls that do not have
# an explicit channel setting are expected to use the
# global channel. CCs & Notes are counted from 0-127
# and channels from 0-15.

[Globals]
# The channel that the controller should send on
GlobalChannel: 0
# If your controller is connected via USB, replace ControllerName
# with the name of the respective port. Live will then try to
# recognize the ports for you when you select your Instant-Mappings
InputName: QX25*****
OutputName: QX25*****
# If your controller has pads that send notes, you can use them to
# play the visible pads in your DrumRacks. Just replace the -1 for
# the note (and channel) of the respective pad. The arrangement of
# the pads in the DrumRacks is as follows:
# 1 2 3 4
# 5 6 7 8
# 9 10 11 12
# 13 14 15 16
# (If you leave the channel of a pad at -1, Live will assume that
# the pad uses the global channel)
Pad1Note: 48*****
Pad2Note: 49*****
Pad3Note: 50*****
Pad4Note: 51*****
Pad5Note: 52*****
Pad6Note: 53*****
Pad7Note: 54*****
Pad8Note: 55*****
Pad9Note: 56*****
Pad10Note: 57*****
Pad11Note: 58*****
Pad12Note: 59*****
Pad13Note: 60*****
Pad14Note: 61*****
Pad15Note: 62*****
Pad16Note: 63*****
Pad1Channel: 1
Pad2Channel: 1
Pad3Channel: 1
Pad4Channel: 1
Pad5Channel: 1
Pad6Channel: 1
Pad7Channel: 1
Pad8Channel: 1
Pad9Channel: 1
Pad10Channel: 1
Pad11Channel: 1
Pad12Channel: 1
Pad13Channel: 1
Pad14Channel: 1
Pad15Channel: 1
Pad16Channel: 1

[DeviceControls]
# The Encoders will control the device parameters (you can also
# use knobs or sliders). Replace the -1's with the CCs sent by
# the respective controls on your controller. You can also set
# the channel for each controller if it differs from the global
# channel (if you leave the channel of an encoder at -1, Live
# will assume that the encoder uses the global channel).
Encoder1: 14*****
Encoder2: 15*****
Encoder3: 16*****
Encoder4: 17*****
Encoder5: 18*****
Encoder6: 19*****
Encoder7: 20*****
Encoder8: 21*****
EncoderChannel1: 0
EncoderChannel2: 0
EncoderChannel3: 0
EncoderChannel4: 0
EncoderChannel5: 0
EncoderChannel6: 0
EncoderChannel7: 0
EncoderChannel8: 0
# Enter the respective map mode for the encoders here. The following
# map modes are available:
# - Absolute
# - Absolute14Bit
# - LinearSignedBit
# - LinearSignedBit2
# - LinearTwoCompliment
# - LinearBinaryOffset
# - AccelSignedBit
# - AccelSignedBit2
# - AccelTwoCompliment
# - AccelBinaryOffset
# Consult the controller's documentation to find out which mode to use.
EncoderMapMode: Absolute
# Buttons used here are expected to not be toggles (i.e., sending
# value 0 every second time you press it).
Bank1Button: -1
Bank2Button: -1
Bank3Button: -1
Bank4Button: -1
Bank5Button: -1
Bank6Button: -1
Bank7Button: -1
Bank8Button: -1
NextBankButton: 117*****
PrevBankButton: 118*****
LockButton: -1

[MixerControls]
# Again enter the appropriate CCs for the respective controls.
# If all sliders use the global channel to send their data,
# you can leave the channels at -1. You can, of course, use
# encoders or knobs instead of sliders.
VolumeSlider1: 30*****
VolumeSlider2: 23*****
VolumeSlider3: 24*****
VolumeSlider4: 25*****
VolumeSlider5: 26*****
VolumeSlider6: 27*****
VolumeSlider7: 28*****
VolumeSlider8: 29*****
Slider1Channel: 0
Slider2Channel: 0
Slider3Channel: 0
Slider4Channel: 0
Slider5Channel: 0
Slider6Channel: 0
Slider7Channel: 0
Slider8Channel: 0
MasterVolumeSlider: 22*****
MasterSliderChannel: -1
Send1Knob1: -1
Send1Knob2: -1
Send1Knob3: -1
Send1Knob4: -1
Send1Knob5: -1
Send1Knob6: -1
Send1Knob7: -1
Send1Knob8: -1
Send2Knob1: -1
Send2Knob2: -1
Send2Knob3: -1
Send2Knob4: -1
Send2Knob5: -1
Send2Knob6: -1
Send2Knob7: -1
Send2Knob8: -1
TrackArmButton1: -1
TrackArmButton2: -1
TrackArmButton3: -1
TrackArmButton4: -1
TrackArmButton5: -1
TrackArmButton6: -1
TrackArmButton7: -1
TrackArmButton8: -1
VolumeMapMode: Absolute
SendsMapMode: Absolute

[TransportControls]
# The transport buttons are also expected not to be toggles.
StopButton: 114*****
PlayButton: 115*****
RecButton: 116*****
LoopButton: -1
RwdButton: -1
FfwdButton: -1
I quoted it so you can copy it. So the things that you need to change for your controller I will put a star next to them; ie: the MIDI CC# I used so you can use your CC# (MAKE SURE TO DELETE THE STARS)

I don't use the pads or "sliders" on my controller, but I do use the ENCODERS, BANK BUTTONS, & TRANSPORT CONTROLS :P I probably should delete the PADS from my script.
I don't know what your controller has, but after I just looked at the picture of the padKontrol, it doesn't look like there is much it can do anyway... It just looks like 16 pads, 2 knobs. With ^^^ you can control 8 given parameters, depending on if you set up Bank Buttons. They device parameters are listed towards the end of the HELP Section you helped direct me to; if no Bank Button is set up, it will use the Best of Bank.

I'll re-iterate how to use this:
1. Locate your User Remote Scripts Folder as explained in the Original Post
2. Create a Folder with whatever you want to call it inside the User Remote Scripts Folder (USE A DIFFERENT NAME THAN WHAT YOUR CONTROLLER IS CALLED TO MAKE SURE IT SHOWS UP :D )
3. Copy(DON'T MOVE) the User Configuration into the Folder you just created
4. Open the Folder you created and Open the User Configuration.txt file
5. Delete what's in the file and replace it with what's in the quotes ^^^
6. Fill in your information; ie: MIDI CC, TRANSPORT CONTROLS
(if your pads use Notes, then you can delete their CC#s in the .txt file and fill with -1s?; the instructions say)
(Where it says "Input Name" "Output Name" use what your controller shows up as in the MIDI Preferences window; it is what it shows up as in the bottom MIDI Ports section with the TRACK, SYNC, & REMOTE Buttons are[don't worry that it's different than the folder name; IT WILL WORK)
7. Save the file and Open Ableton
8. Under the MIDI Preferences Window in the top section Find what you called your folder under the CONTROL SURFACE drop down and use your controller for INPUT & OUTPUT (Don't forget to click TRACK [& REMOTE if you use it])

I hope this helps you, if not I hope it helps someone in the future because getting this to work left me like this :u: and this :corntard: and a little like this :corncry: .

I got it to even work for my iPods TouchOSC that doesn't even show up under Control Surfaces :z:

Re: Ableton live TIP! enable instant mapping for any control

Posted: Wed Apr 17, 2013 10:22 pm
by RandoRando
i dont understand, i picked mpk49 from that list a long time ago when i first got it, and all of the buttons were mapped from the start, do i not have to do any of this then?

Re: Ableton live TIP! enable instant mapping for any control

Posted: Wed Apr 17, 2013 11:17 pm
by YeahItsMe
You don't have to unless you can only access 1 bank o parameters. Ie: the eq 8, you can fully control everything, every freq, q, gain with the knobs, but you have to be able to access the 8 different banks. If you can access all o them then don't bother, if not an you want to have a little more fun with effets then do it!! :D Or check out the arpeggiator, it's nice to control everything from knobs without Midi Mapping.

If you don't have access to the different banks and can't figure it out how to set it up using the scripts, let me know dude