APC 40 MKII - Remap certain buttons to be toggles

Hi All. Im thinking about getting into BOME and wanted to know for example, if it would enable me to use my APC40 mk2 as i am now, but just remap certain buttons to be toggles. for example i still want all the control i have atm but specifically what i want to do is to map each channel select button to trigger a send to an effects channel, but only whilst it is held down. I would also want to potentially do the same with the crossfader buttons, I just want to change certain buttons to momentary, but keep the session grid functional as it is etc. Can this be easily done and if so is it reliable? I would want to use it for live gigs.

Hi and welcome to the Bome community!

Yes, this can be done. First you would need to make sure your APC-40MKII is in Mode 2 by sending the following System Exclusive message to it while it is attached. You would use “Raw MIDI” as output.

F0 47 7f 29 60 00 04 42 09 07 01 f7 

Now, everything on your controller will be momentary. The grid buttons should not be affected because they are momentary in all modes.

Now you will need to us MT Pro to manually toggle the output and if your DAW does not support MIDI feedback to also update the LED’s.

The attached project does this. If your application does not provide proper feedback for the button I programmed, then you will need to enable preset 2.

I’ve set up MIDI thru paths for any unprogrammed translators in the MIDI router.


I also set up aliases as shown here.


Attached is the project file with the one example button. I use the global variable ga as a toggle as shown in translator 1.1 rules

// toggle ga

// set default local variable qq
// change it to 127
if ga==1 then qq=127

I have other translators that handle project initialization in the “Init” preset such as sending the Sys-EX message on project open, or when the controller becomes available.

APC-40-toggle-demo.bmtp (2.5 KB)

Steve Caldwell
Bome Customer Care

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

Thanks Steve. I havent yet purchased Bome, I am still weighing up how it is going to work for me. Am I right in thinking that i would need to turn the unit on and then send the sysex message before each use of it? Ie it wouldnt then hard save these settings to the unit itself?

The setting on the APC-40 MKII cannot be saved on the unit itself. In the project, that I posted, I send the Sys-EX upon project start or when the APC-40 MKII comes online.

Steve Caldwell
Bome Customer Care

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

Thanks Steve. I am downloading the trial and will try it out. If it works for me, ill purchase the full version!

Sounds good!

Had a quick mess earlier. It made all the buttons momentary, ie the LEDs only lit when I pressed them. But in ableton, they retained the same toggle behaviour, rather than changing into momentary ones.
Are there any guides about how I would edit the behaviour of an individual button?

Ableton likely is putting it into a different mode, or otherwise controlling them. You would need to block the messages coming from Ableton Live to stop this behavior. Either that or Ableton Live is deciding to toggle them internally when sending momentary messages. If you can point out a specific button that you want to change and how you are using it with Ableton Live, I can probably guide you further.

Also it is possible that Ableton is detecting your controller and using a MIDI Remote Script to control it directly. You would need to disable that in Ableton Live if you want to use your APC-40 MKII for something other than a pre-defined Ableton Control Surface.

Steve Caldwell
Bome Customer Care

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

Screenshot 2022-10-08 at 07.41.21
Screenshot 2022-10-08 at 07.40.52

Hi Steve
I tried a couple of settings, changing the APC40 input and output to Bome in the top part of ableton settings, seemed to wipe everything off the mappings. Then I tried to map a channel select button to an effects send, and although momentary, it didnt stay open for as long as the button was held down. It may be that these rubber buttons are momentary only, ie dont actually detect how long you hold them down for? And yes ableton translates them into toggles. Im not sure it can work.

If you want to use your APC-40 MKII as a custom device, you will either need to disable Ableton MIDI scripting for it or create a virtual port (that acts like a different controller to Ableton Live) for the commands you want to customize. I would really need to look further in what you are trying to do to understand how it can be programmed. Keep in mind if Ableton Live puts it in a given Mode, you probably will not be able to change modes without interfering with the Ableton Live Scripts. A strategy will need to be worked out so that they ca co-exist unless you just want to map your APC-40 as a generic MIDI controller using MIDI learn.

Steve Caldwell
Bome Customer Care

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