Page 1 of 1

Chording to generate (ASCII) key codes?

Posted: Mon Jul 11, 2005 10:39 am
by mpost
Hello Florian & Co.,

I am looking for a solution that will allow me to use a MIDI keyboard as a replacement for an alphanumeric keyboard (don’t ask :) ).

Since I don’t want to jump around over octaves, I will need the ability to combine messages and use chording - i.e. the ability to map sets of MIDI messages, like this:

- MIDI Note "C5" will generate the ASCII code for the letter "a".

- MIDI Note "C5" plus "Sustain Pedal On" will generate the ASCII code for the letter "A"

- MIDI Notes "C5" plus "C#5" plus "Sustain Pedal On" will generate the ASCII code for the letter "Ä"


The result would be a fairly large and complex map (the typical office keyboard has 100+ keys, so when you take modifier keys into account, we are talking circa 500 to 600 mappings - "Alt+Ctrl+F11" needs a place in your heart and on your keyboard, too).

Can this be done?

And: Will it be reliable (as in: interpret keys and key combos fast enough to generate the correct output)?

Thanks in advance.

PS: Should this be doable, I’d be glad to build a full ASCII Keyboard replacement set, upload it here and keep you posted about my experiences. Chording keyboards such as the BAT are very expensive; it would be sweet to do the same with affordable black and white keys ...

Posted: Tue Jul 19, 2005 7:10 pm
by florian
Currently, MT only translates one input message to one output message (or to several output messages, if needed). You cannot translate several input messages to one output message. That's essentially what you seek, because pressing 2 MIDI keys simultaneously basically means a series of MIDI commands.

For a future version of MT, programmability to some degree is planned, then you can create something like "if sustain pedal pressed AND MIDI C5 is coming in", press this or that key.

That will work very reliably.

I can't name any time frame for the development. However, you can sponsor development of specific features, which will speed up development and give that feature highest priority. If intereseted, please contact me personally at