Ignoring key combinations with HI object.

steenamaroo's icon

Hi all,
I'm new here, and was hoping i could ask few questions.

I'm trying to make a DIY controller that offers solo,mute and record x 8 for use with Protools.

I have a patch that currently uses keystrokes to trigger buttons in 'midi learn' capable plugins.
This used the 'key' object, but i found that max has to be the active window for this to work.

I've switched to the 'HI' object, but have now found that it doesn't work the same as 'key'
If i hit two trigger buttons together, there is often a problem.

If i press H (11) to trigger one command, and J (13) to trigger another simultaneously, (for example, solo track1 and unsolo track 2)
HI will output the following in order

0, 11, 13, 3339 13 0;
or
0, 13, 11, 3339, 11 0

Depending which key is let off first.

I've filtered out numbers above say,,200 but then i'll still get

0, 11, 13, 13, 0
or
0, 13, 11, 11, 0.

Either way, one of the commands is going to happen twice for one keystroke.

Is there an alternative way of handling this?

Thanks in advance, i hope i've given enough info.

tep's icon

If you look in what is present in the Max window, there is not only the key value, like 11 or 13. You also have number 29 and 31 (third in the list). I always rather use these 3rd values : they don't get repeated in case of key combinations.

steenamaroo's icon

thanks for the reply..it sounds great, but...

i don't see any print in my max window.
i had a look under HItester but i don't see it there either..

how do you harness these 3rd values yourself?

Thanks again.

tep's icon

go in the [hi] maxhelp file or plug a print in first outlet ...

steenamaroo's icon

hmm..i thought that might be what you meant.

using HI and unpack is printing me the 2 values that are 4th in the list. like this

10 22
10 0

10 24
10 0

looking at the max window, the 3rd element is exactly what i want, so how do i unpack that?

Thanks.

steenamaroo's icon

Ok, i got it sorted...

Used hi -> pack -> route (*) where * is the number i want from this list.

thanks for your help :)