Translating midi to keystroke, gets stuck in noteon

ZuluCompany

2011-09-11 18:36:45

I'm using MT Pro to translate some midi buttons on my Allen and Heath Xone4D mixer/MIDI controller into keystrokes for Ableton Live. The reason for this is I want to turn devices on and off with a single press/depress of the midi button. (Instead, all midi in Ableton is natively a note on message on the first press, then you have to press the button again to send the note off). Therefore I mapped a key, like "a", to the on/off of a beat repeat. In MT Pro I then press the midi button i want to use to get the note on message, translate that to the key "a", then make another translator for the same button, but this time the note off message, and translate it to "a". So now when I press the midi button down it turns the device on and when i take my finger off the button, it turns the device off.

It seemed to be working well however the problem is, very often, the beat repeat device i am controlling with the midi button gets stuck. As in i'll press to turn the device on, then let go to turn it off but it remains on. Now it's completely flipped so when i press the button, it's turning off and then back on, I have to go in with my mouse and turn the device off to get it back. I checked my system/midi/cables and have not been experiencing any problems or latency, i can only guess the problem is coming from Bomes itself. It feels as if I press the button at a certain speed, it won't catch the note off signal, leaving my device in ableton turned on. Is there anything i can do to remedy the situation? If it weren't for this issue, everything would be working absolutely flawlessly and i really like having this control in ableton, but with this kind of problem it's a bit too unreliable for a live situation. Thanks!

florian

2011-09-14 21:50:32

Hi ZuluCompany,

interesting setup!

My first idea would be to create an escape, for example a very fast press/depress would only send one "A" keystroke to get you out of that situation. But that's only a workaround for some flaw somewhere.

The second thought is that maybe the second "A" comes to fast so that either MT cannot send it fast enough, or Ableton is not able to respond to the second "A". I tend to believe the latter, because we have run extensive tests with keystrokes and they're not swalled by Midi Translator. You can try with a text editor and see if the "A"'s always appear in pairs... It may also be that Ableton actually suppresses double strokes to prevent accidental re-triggering, etc.

My third thought is, if Ableton requires a minimum amount of time between consecutive keystrokes, you can use MT's timers to enforce a minimum "show time" of the device. That can be a bit tricky, but definitely possible. Alternatively, you can suppress a consecutive "A" if it comes within, say, 500ms of the last "A". That will effectively be what I had in mind with my first thought.

My 4th thoght is, maybe it's worthwhile to solve this entirely different to not have to deal with the keystroke issue. You say that you can toggle the device in Live with MIDI, too. So you can use MIDI translation like this:
Incoming: Xone4D Note On
Outgoing: Ableton Live Note On + Note Off -> turn device on

Incoming: Xone4D Note Off
Outgoing: Ableton Live Note On + Note Off -> turn device off

Now here, again, you may run into the same problems, but it's worth a try. You can combine multiple MIDI messages into the Outgoing MIDI message field. now Ableton Live may require a little bit of time between Note On and Note Off, but let's hope not!

So I'd try the 4th idea first and see how it goes...

Thanks,
Florian