APC 40 creating and triggering alternative control scripts

Hi, I’m new to midi programming and the possibilities that Bome Midi Translator offers.
For a performance I’m trying to create multiple mapable ‘presets’ or control surface scripts, that I can switch between on my APC40 itself. I would like the first one to be the default script of the APC40 (that works well with Ableton by default), but have a second and third one in which I can completely change the entire midi mapping of the APC by triggering a button on the APC40 (or another midi controller if that’s easier). How would I go about this? I’m trying hard to figure it out but I’m quite new to BMT.
Kind regards and thank you,


Hi and welcome to the Bome community!

The attached should probably do the job for you.

There are 3 presets
The first preset handles startup housekeeping and controlling the other 2 presets.
0.0 - Fires a one shot timer “Init” when the project opens
0.1 - Fires the same one shot timer “Init” when pressing keystroke combination Shift Control Up
0.2 - Initializes any global varibles (in rules). I only use one “ga” which is to select the preset I initially want set
0.3 - Disables the preset
0.4 - Enables the preset 50ms later (Doing this makes sure the preset-enable and disable outgoing actions occur correctly.
0.5 - Take input from a separate controller and sets the correct preset based on the incoming note.

Preset 1 - Handles Enabling and Disabling of MIDI Thru paths
1.0 Enables Path MyAPC40 to Application1 upon preset activation
1.1 Enables Path Application1 to MyAPC40 upon preset activation
1.2 Disabled Path MyAPC40 to Application1 upon preset deactivation
1.3 Disables Path Applicatoin1 to MyAPC40 upon preset deactivation

Preset 2 - Handles translators that work when you want to go to non APC40 Mode
Right now I just have 2 translators
2.0 - Translates Note-On Note 0 on MIDI CH 1 to Note-On Note 60 on MIDI CH 1
2.1 -Translates Note-Off Note 0 on MIDI CH 1 to Note-Off Note 60 on MIDI CH 1

The preset input and output devices for this preset is set to MyAPC40 to Application2. You can learn more about how to do this with this tutorial.

My Aliases are as follows. Of course you will need to set them for your actual APC-40. You can learn about aliases with this tutorial.

As the aliases are set up here, you will need to set up Ableton Live to point to BMT 1 instead of your actual APC-40 since everything is going through Bome MIDI Translator Pro.


You can then set up your virtual alternate controller in Ableton Live to point to BMT 2.

Here is the project file. Good luck!

APC-40-2Controllers.bmtp (3.6 KB)

Steve Caldwell
Bome Customer Care

Also available for paid consulting services: bome@sniz.biz

I forgot to mention. Anything that Ableton Live sends to the APC-40 when the preset is disabled will be lost using this project. If you don’t want this, then you will need to add translators that.

  1. Captures all input from Ableton Live into global variables
  2. Upon activation of preset 1, sends the captured information to your APC-40

Steve Caldwell
Bome Customer Care

Also available for paid consulting services: bome@sniz.biz