Midi different through ableton than max standalone?

Mark Watkins's icon

I'm trying to make a patch utilising my Akai APC mini, trying to work things out at the moment. I've come across this reverse engineered link from another topic, it has a simple loop that lights up all the buttons and unlights them.

Now this works totally fine in the standalone max, I can turn on and off all the lights by the patch, however if I run max through ableton first off I get

midi_mme: error 7 opening midi input device APC MINI
midi_mme: error 7 opening output device APC MINI

And I can't select my controller in the midi preferences, which I figure is because ableton has monopolised the midi, so I send it through the max device in ableton instead, and first off when I turn the lights on, it doesn't get all the lights reliably every time. Maybe it's looping too fast, is this a thing?

Secondly the loop turning off the lights doesn't work at all. Now I've had a look and it looks like it's sending the message noteoff with a velocity of 64, where it should be a noteon with a velocity of 0. Obviously it's working properly in the standalone I have no idea why it would be different in ableton?

Can anyone take a look at the patch from the topic I mentioned and give me some ideas how to get this working from within ableton?

Topic:

https://cycling74.com/forums/akai-mpk-mini-send-get-signals-to-light-buttons

The patch:

Mark Watkins's icon

Right for the record I've found a workaround. I've wired it via loopmidi into midi-ox which I use to transpose messages down 1 velocity.

So now to turn the lights off on my APC mini I send a velocity 1 noteon out of max into ableton, ableton sends it to loopmidi, loopmidi sends it to midiox, midiox turns the vel 1 into a vel 0 and sends that out to the APC. Oh I need to make it send noteoffs with every note too otherwise it gets stuck.

Ridiculous but it works. If anyone can suggest a cleaner solution please do!

Evan's icon

The first issue with the mme warning - are you trying to communicate with the APC from the max patch? You don't want to do that in M4L, you'll want to communicate with the track the device is on with the midiin and midiout objects, and then connect the track to the inputs/outputs of the APC (MIDI From, MIDI To).

OR, you can communicate with the APC via the control script and the Live API.

I don't have access to the device, so this is all speculation, but you definitely don't need to be using virtual MIDI ports just to light some LEDs.

Mark Watkins's icon

I don't really want to delve into the control script as the controller is clearly made to do one thing so from what I can see it's easier to send it midi messages.

Re. the MME that's what I thought, so I have connected up the midiout, but the midi out to the APC is sending something different from what I'm sending from max4live. I have to use that workaround to lower the velocity by 1 to get it to send the velocity 0 message as ableton seems to send noteon with velocity 0 as a noteoff.