KM 11 Button Scan and Pro Tools

I love the new KM11 addition to scan the button names. But in Pro Tools this list is really ridiculously long and also has a lot of doubles in it. There is no way I can scroll to the one I need if the list is scrolling for more than 2 minutes constantly. Also, a lot of buttons appear that I never heard of and also can't find on the program. When I make a macro press this button nothing happens.

Even if I ignore these phantom buttons the list is still useless without a search or filtered search function. It would be great if that can be implemented.

Also, in ProTools the actions takes relatively long. I have found that an AppleScript with a Click Button was faster. And that surprised me. Maybe it has to do with ProTools and is not something what KM can do anything about, but I hope you can @peternlewis !

What is also tricky is that the title of a button can change depending on the state it is in. So, it means I have to make a lot of ifthenelse routines with all possible titles that a single button can have.
What would help if I could make press a button name with a condition like "if title contains" or even a regex expression.

1 Like

They might be fake buttons in the UI perhaps. It's hard to say.


Probably with AppleScript you are specifying the button explicitly, whereas with Keyboard Maestro it has to search for the button.

It's probably going to be tricky to do, it's complicated enough.

1 Like

@Fokke and @peternlewis, forgive me if I'm asking the same question — is it possible for us to access the list of UI elements that Press Button identifies?

I see that the "Press Button Named" field is a TOKEN, so we can search by using a variable here—as long as we know what to search for.

Keyboard Maestro does not expose it, no. I'm not sure how I could expose it (a token would be logical, but it doesn't work because the process is time consuming which is why you have to scan from the menu and then come back when the scan is finished).

Wouldn’t an array with the names of all the widgets suffice?
Isn’t it great when you’ve just finished all these sleepless nights to get a new version out, and customers IMMEDIATELY start asking for new features? :joy:

Returned how? It can't be a Token. So it would need to be an action.

It's worse when they are good ideas that would be really good to have done before v11 was released but are now tricky to do post-release.

But there is always room for another line in the todo list…


yes, sorry i immediately have a request this soon. But please see it as enthousiasm, because when i read this new action i start playing with it right away. And, yes, then i stumble upon questions that i have. And, as i am not a beta tester i could not try it before the release.


It's totally good. It always happens that way because I don't foresee all the ways people use things, and as soon as I show it to a wider audience I get comments back that make me say "of course it should work like that".

1 Like

Which Buttons in Pro Tools are you trying to Press?

I just was figuring this out and I have my stream deck toggling the Wait For Note Button and the Conductor Track button using Keyboard maestro, Press Button action.

I was just testing the new function and see how it works.

I have been recently working finding button names in Pro Tools using the App UI Browser.

Its a little bit slow sometimes on the main window of Pro Tools, but it shows where all the buttons are via nested links which made seeing the path of buttons a lot easier. Using this in combination with Keyboard Maestro and Applescript I was able to create Macros to open up the specific insert slots on your currently selected track.

Just thought I would share this in case it helps or makes things easier for you.

thanks, but I am using UIbrowser for a number of years already.
As said; I am not looking for a specific button, I was just testing the powers of the button scan of KM. And it turns out that this scan finds way more buttons in ProTools than UIbrowser does. Unfortunately the additional buttons it finds doesn't do anything. So, that leaves my wondering what's happening