Bank and Program change sending to external gear, how?

Discussion of music production, audio, equipment and any related topics, either with or without Ableton Live
Post Reply
Dayflight
Posts: 6
Joined: Tue Jun 01, 2010 1:58 pm

Bank and Program change sending to external gear, how?

Post by Dayflight » Sat Sep 16, 2017 3:42 pm

I like to send from Live bank and prog change messages via the NI Komplete Audio Interface to my external Elektron gear. Live is master and sends perfect midi clock to my external gear.
Do anyone know how to do this?

Ubik
Posts: 257
Joined: Tue Dec 15, 2009 10:43 am
Location: Brussels

Re: Bank and Program change sending to external gear, how?

Post by Ubik » Sat Sep 16, 2017 5:49 pm

You can send program change from a midi clip : https://help.ableton.com/hc/en-us/artic ... MIDI-Clips

timday
Posts: 549
Joined: Mon May 04, 2009 1:02 pm

Re: Bank and Program change sending to external gear, how?

Post by timday » Sat Sep 16, 2017 6:44 pm

With Elektron gear you can also send pattern changes using notes on channel 16 (pattern A1 = C-2 on my Analog Keys). Since patterns also determine kits this will also change the patches for all four of the tracks on an AK. I imagine it is similar for the other Elektron boxes.

It's a bit weird because according to the manual this should work on "auto channel" which I have set up as 9 but actually it is channel 16. Maybe I misunderstood the manual.

It seems to work bwtter than clip pattern changes which for some reason only known to Elektron (I have emailed them about this and apparently it is a feature) take a bar to kick in.

Tekhed66
Posts: 53
Joined: Sat May 24, 2014 3:21 pm

Re: Bank and Program change sending to external gear, how?

Post by Tekhed66 » Tue Sep 19, 2017 4:51 am

Dayflight wrote:I like to send from Live bank and prog change messages via the NI Komplete Audio Interface to my external Elektron gear. Live is master and sends perfect midi clock to my external gear.
Do anyone know how to do this?
Hi Dayflight

Live can send Bank/Patch change data as per the link in the other post but what might not be clear is that you will need to figure out how your synth knows where each sound/patch is stored ... in other words, how does it know a specific sound is in a specific place?

Live requires up to 3 bits of data to work out this address (depending on your hardware)... you'll see these fields in the 'Notes" box associated with each midi clip. The data fields are: Bank (this corresponds to MSB - most significant byte), Sub (this is LSB - least significant byte) and Pgm (this is Program ... sometimes this simply corresponds to the memory number slot on your synth).

How much data you need to send will depend on your synth and how the memory is arranged.

For example - I have an old Yamaha An1x and it has a single bank of 128 memory slots ... when I send change data, all I send is Program data as there aren't any banks to change ... fortunately, Yamaha use midi 1 - 128 for Program changes which is exactly the same as Live so if I make a midi clip and enter the following info: Bank--, Sub--, Pgm10 then the Yamaha will change to memory slot 10. Ditto any Pgm from 1 to 128, then the Yamaha also changes to that memory slot.

My Triton Rack is more complicated as it has two Banks (divided into 8 subsections each with 16 memory slots - A to H, and I to P) and each Bank has a total of 128 memory slots ... still with me? According to the midi specs hidden at the back of the Triton manual (this is the weird stuff you never read), Bank 1 (A-H) needs Bank/MSB 1, Sub/LSB 1 and Bank 2 (I-P) needs Bank/MSB 1 and Sub/LSB 2. To work out the memory slots though, you have to ignore the 8 subsections (A, B, C, D etc) and think of it as one big memory space containing 128 slots ... when you write it all out, memory slot A1 is the first one so Pgm is 1 ... memory slot A16 is Pgm 16... BUT ... the next memory slot which is memory slot B1 is Pgm 17 ... B2 is Pgm 18 all the way to B16 which is 32 ... the next slot C1 is 33 and so on until you get to the last slot H16 which is 128.

So to write this out so Live recognises it:
Memory slot A1 (Bank 1) is Bank 1, Sub 1, Pgm 1
Memory slot C1 (Bank 1) is Bank 1, Sub 1, Pgm 33
Memory slot I16 (Bank 2) is Bank 1, Sub 2, Pgm 16

To confuse you even more, some hardware uses 0-127 instead of 1-128 (my Roland gear uses 0-127) so whatever value the manual tells me is one LESS than what Live expects to see ... if a memory slot in the Roland manual says Pgm 99, I enter Pgm 100 (remember Live uses 1-128 ans the Roland uses one less 0-127) ... this is specific to your hardware so somewhere buried in the manual will be the midi spec for your gear... OR - you could just assume that it's the same as Live (1-128) and if your patches are out by one spot, simply increase the value in the Pgm box by one.

It might seem pretty confusing to start with but there's a weird logic to it ... unfortunately, you'll need to dig for the info in the manual or if the gear is still supported, contact the help desk and ask them for the MSB/LSB data (ie. how it is arranged).

Once you've got the data entered in your midi clip, you'll have to assign it to a specific midi channel (depending on your hardware setup) and also check to see the midi info is received in time to start the track/performance... I've got 4 hardware synths in my rig and 3/4 all change banks/patches immediately but my trusty old Roland needs two bursts of info to make the changes... to get around this, I have a scene with a midi clip just for the Roland (first burst for Roland) and then another scene with midi clips for all 4 synths (second burst for Roland) which does the job.

Good luck!

Post Reply