Live 8 & Maschine User Script Control Surface Template Help?

Share your favorite Ableton Live tips, tricks, and techniques.
Post Reply
duecesup
Posts: 3
Joined: Tue Aug 10, 2010 2:44 pm

Live 8 & Maschine User Script Control Surface Template Help?

Post by duecesup » Wed Aug 11, 2010 7:02 pm

I'm loving my new setup of Maschine & Ableton Live 8 and now I want to setup a custom control surface template for maschine to match my workflow. The only issues is programming midi isn't my strong point and I'm a 100% lost when I open up the controller editor lol!

So I'm hoping you guys can give me some help on getting this setup and how to use the controller editor to achieve this.

Template functions I want to setup:

-Master Volume Controls
-Tracks 1-16 Volume & Record Function
-Tracks 1-16 Solo & Pan Functions
-Tracks 1-16 Mute & Volume Functions
-Sends 1 & 2 Tracks 1-16 Functions
-Transport Controls-Play, Record & Song Position
-Tap Tempo Function
-Temp Knob Function
-Metronome Off & On Function
-Macro Controls For The Device Selected In Each Rack
-Pad Controls For DrumRacks Group Buttons A-H

I really really need a step-by-step layout of how I setup what I listed above and were to put it into my user script. I understand midi cc and the controller editor but I dont know were all of the midi cc #'s I setup go in the user script.

PLEASE HELP!

I'm starting with a blank user script:

# 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: ControllerName
OutputName: ControllerName
# 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: -1
Pad2Note: -1
Pad3Note: -1
Pad4Note: -1
Pad5Note: -1
Pad6Note: -1
Pad7Note: -1
Pad8Note: -1
Pad9Note: -1
Pad10Note: -1
Pad11Note: -1
Pad12Note: -1
Pad13Note: -1
Pad14Note: -1
Pad15Note: -1
Pad16Note: -1
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: -1
Encoder2: -1
Encoder3: -1
Encoder4: -1
Encoder5: -1
Encoder6: -1
Encoder7: -1
Encoder8: -1
EncoderChannel1: -1
EncoderChannel2: -1
EncoderChannel3: -1
EncoderChannel4: -1
EncoderChannel5: -1
EncoderChannel6: -1
EncoderChannel7: -1
EncoderChannel8: -1
# 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: -1
PrevBankButton: -1
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: -1
VolumeSlider2: -1
VolumeSlider3: -1
VolumeSlider4: -1
VolumeSlider5: -1
VolumeSlider6: -1
VolumeSlider7: -1
VolumeSlider8: -1
Slider1Channel: -1
Slider2Channel: -1
Slider3Channel: -1
Slider4Channel: -1
Slider5Channel: -1
Slider6Channel: -1
Slider7Channel: -1
Slider8Channel: -1
MasterVolumeSlider: -1
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: -1
PlayButton: -1
RecButton: -1
LoopButton: -1
RwdButton: -1
FfwdButton: -1




Thanks in Advance!

yur2die4
Posts: 7160
Joined: Sat Oct 03, 2009 3:02 am
Location: Menasha, Wisconsin
Contact:

Re: Live 8 & Maschine User Script Control Surface Template Help?

Post by yur2die4 » Wed Aug 11, 2010 8:43 pm

To start off with, I'd suggest overall doing a combination of both the NI Maschine Ableton Live script AND a User Script. Unless you know someone that will program a unique script for you (which would be extra complicated.)

The reason I'd use the NI Script is because their default has a few extra features conveniently pre-CC'ed for you.

The reason why the NI Script alone isn't enough is because you definitely want the Macro Control capabilities. On the topic of the Macro Controls.. I don't remember absolutely whether or not you can program as continuous rotary encoders or not. (its been a while).

Lastly, there is also Mackie Control Emulation.. but that can get a bit messy.

Onto the business.

The first thing I'd do if you were planning on going the route I've stated above is, get the original Maschine/Live template working as expected, and then go into the editor and write down the CC# and name of every control you find useful (volumes, sends, mute, record enable etc.). You may need to write channel down too.

Then you can make a new layout in the Maschine MIDI Editor and start making a basic page for just these items. Or you can copy the default one to a new page, expecting to eventually tweak it to personal taste (this might be easier if you were hoping to use the 16-pad clip trigger functionality w/ arrows [btw, it is also possible to move the arrows down to the transport controls, to free up the ability to change pages of trigger pads ;)]).


Next, making your own script. Keep note of all the CC#'s that you have used. Now think of all the features on the list from the User Script that you plan to take advantage of (most notably the Macro knobs, and maybe the trigger pads). Look at your list of already used CC#'s, and make up CC#'s that are not already being used. (or, even easier, use a different channel altogether). If you plan to use clip triggering, then the midi channel is especially crucial for the trigger pads!

Now start filling in the appropriate information on the User Remote Script and Maschine Editor. One thing that gets funky is that there are times when the CC# you use in the script might be + or - one from that of the Maschine MIDI Editor. The only way to really test this is trial and error.

You have the option of either putting it all on one SUPER template, or having two templates next to each other that you switch between dependent on whether you plan to use the Maschine Ableton default or your User Remote Script.

To make sure it all goes through, in Surface Control of ableton's Preferences, you have to select Both templates.

So this is what I would do. If you have a completely different plan, feel free to mix n' match what is most helpful haha

Edit: For Tap tempo, and Metronome on/off (since they are not on either script), you might have to put those onto your Maschine, and then open a fresh unused Ableton Live set, MIDI map those buttons. and then go into Ableton's Preferences where you can save that as your default set.

duecesup
Posts: 3
Joined: Tue Aug 10, 2010 2:44 pm

Re: Live 8 & Maschine User Script Control Surface Template Help?

Post by duecesup » Wed Aug 11, 2010 9:12 pm

yur2die4 wrote:To start off with, I'd suggest overall doing a combination of both the NI Maschine Ableton Live script AND a User Script. Unless you know someone that will program a unique script for you (which would be extra complicated.)

The reason I'd use the NI Script is because their default has a few extra features conveniently pre-CC'ed for you.

The reason why the NI Script alone isn't enough is because you definitely want the Macro Control capabilities. On the topic of the Macro Controls.. I don't remember absolutely whether or not you can program as continuous rotary encoders or not. (its been a while).

Lastly, there is also Mackie Control Emulation.. but that can get a bit messy.

Onto the business.

The first thing I'd do if you were planning on going the route I've stated above is, get the original Maschine/Live template working as expected, and then go into the editor and write down the CC# and name of every control you find useful (volumes, sends, mute, record enable etc.). You may need to write channel down too.

Then you can make a new layout in the Maschine MIDI Editor and start making a basic page for just these items. Or you can copy the default one to a new page, expecting to eventually tweak it to personal taste (this might be easier if you were hoping to use the 16-pad clip trigger functionality w/ arrows [btw, it is also possible to move the arrows down to the transport controls, to free up the ability to change pages of trigger pads ;)]).


Next, making your own script. Keep note of all the CC#'s that you have used. Now think of all the features on the list from the User Script that you plan to take advantage of (most notably the Macro knobs, and maybe the trigger pads). Look at your list of already used CC#'s, and make up CC#'s that are not already being used. (or, even easier, use a different channel altogether). If you plan to use clip triggering, then the midi channel is especially crucial for the trigger pads!

Now start filling in the appropriate information on the User Remote Script and Maschine Editor. One thing that gets funky is that there are times when the CC# you use in the script might be + or - one from that of the Maschine MIDI Editor. The only way to really test this is trial and error.

You have the option of either putting it all on one SUPER template, or having two templates next to each other that you switch between dependent on whether you plan to use the Maschine Ableton default or your User Remote Script.

To make sure it all goes through, in Surface Control of ableton's Preferences, you have to select Both templates.

So this is what I would do. If you have a completely different plan, feel free to mix n' match what is most helpful haha

Edit: For Tap tempo, and Metronome on/off (since they are not on either script), you might have to put those onto your Maschine, and then open a fresh unused Ableton Live set, MIDI map those buttons. and then go into Ableton's Preferences where you can save that as your default set.
Thanks for all of the feedback!

One issue Im having is knowing for example were to put the cc for mute or solo on my user script?

Im a complete newbie to programming this so bare with me lol!

yur2die4
Posts: 7160
Joined: Sat Oct 03, 2009 3:02 am
Location: Menasha, Wisconsin
Contact:

Re: Live 8 & Maschine User Script Control Surface Template Help?

Post by yur2die4 » Wed Aug 11, 2010 9:43 pm

Well, if it is not written on that script, then it is not available through that method.

On the bright side, it IS available on the default Maschine script that you can d/l from the Native Instruments downloader. Do you have that working already?

Also, I notice that you are hoping to do tracks 1-16. You may have to stick with 1-8 for now :/

duecesup
Posts: 3
Joined: Tue Aug 10, 2010 2:44 pm

Re: Live 8 & Maschine User Script Control Surface Template Help?

Post by duecesup » Wed Aug 11, 2010 9:56 pm

yur2die4 wrote:Well, if it is not written on that script, then it is not available through that method.

On the bright side, it IS available on the default Maschine script that you can d/l from the Native Instruments downloader. Do you have that working already?

Also, I notice that you are hoping to do tracks 1-16. You may have to stick with 1-8 for now :/
Yea I know it looks like 8 tracks is all I can work with for now :/ which makes no sense but oh well.


Yea I have the maschine script working I just dont like the template the provided. Im not really interested in the pads launching scenes and i need all of the other functions like macros and transport controls added to the Maschine script

yur2die4
Posts: 7160
Joined: Sat Oct 03, 2009 3:02 am
Location: Menasha, Wisconsin
Contact:

Re: Live 8 & Maschine User Script Control Surface Template Help?

Post by yur2die4 » Wed Aug 11, 2010 9:59 pm

I'd definitely start by writing down all the CC#'s of the controls that you Do like from that template. Also, I'd take note of what note#'s and midi channel the pads are. This way you can avoid using those notes (it would interfere. Ableton would be 'listening' for those notes for triggering. If you remove those notes from your layout, and use different ones, you won't accidentally trigger anything).

Post Reply