Triggering Stream Deck Profiles for Logic Pro Plugins

Hi! I'm new to KM and Stream Deck som I'm sorry if I sounds like a newbie. What do I do with this blank app? I can't open it and i can't load it in either Stream Deck or KM.

Download it and make copies of it for each SD profile you'd like to trigger. In this example, I've duplicated the blank app and renamed it Channel EQ. Whenever I open this app via KM, it loads the associated SD profile.

Ah, I get it! Thank you.

I'm getting closer but the stream deck software doesn't seem to recognize the blank apps. When I launch the app it won't switch the profile. It says it's "Blank App" even after I've renamed it.

Any ideas what I might do wrong?

Edit: Looks like this is a problem with the Stream Deck software and not the blank apps. No applications make the profiles switch. Running MacOS Monterey 12.0.1 and SD 5.2.0.

Edit 2: "Actually, the feature is working as intended.

To be able to edit the canvas, Smart profiles are disabled when the main application window is open."

Edit 3: It now works as intended with duplicated Blank Apps. I'll leave this post up if anyone has the same problem as I.

1 Like

Okay, I'm nearly there but I have one last issue. I can't seem to make a correct OCR result. Can it be because you have a different screen resolution than you?

When I load a plugin this is what I get. When it's not loaded it says "BLANK".

I vaguely remember running into that issue but it's a long time ago now and I'm afraid I can't for the life of me remember what the solution was. Perhaps someone with more OCR knowledge can chime in? Perhaps one of these threads has the answer? One post suggests that it might just mean the OCR failed, so you should probably try the brand new OCR area function that was added in KM 10...?

Thank you, I'll check it out.

I hate to hijack this thread, but since I've seen a fair amount of interest in this the last couple of years, I reached out to Elgato to ask them about implementing it in the future, and they replied today.

You can read more info here:
Elgato's Response to Setting Stream Deck Profiles via Keyboard Maestro or Other Third Party Apps

1 Like

Solved: Keyboard Maestro Engine did not have screen recording permission. When enabling this in System Preferences -> Security and Privacy -> Screen recording, it is now working.


I'm sorry to trouble you with all my questions but I'm so close to making this work. The Logic profile works, the generic profile works and the custom plugin profiles work. The only think that's not working is "Break OCR loop" and "Break profile loop".

I'm pretty sure I've followed all your steps but KM still continues do an OCR scan every time it launches a trigger app and goes back to logic.

Any ideas?

Hmm. Hard to say without seeing your setup, but I would first experiment with the pauses in the Break Loop macros.

Did you change or replace any of the actions? For example, the Break Profile Loop (SUB!) action needs to be asynchronous, so if you added your own Execute a Macro action, without setting it to asynchronous, it might not work.

I'm not really an expert on debugging and I find it can get quite confusing, but if you're accustomed to it, perhaps try running the macros step by step and seeing if the Break Loop macros are kicking in at the right time?

There are a lot of moving parts, so I'm kinda stabbing in the dark here. If only Elgato would just enable external profile switching this would be a lot less complicated!

I've simplified and improved the macros and updated my original post. It now determines whether the window is a plugin by detecting the "Compare" button (rather than using a Window Whitelist). This is quicker and seems to more reliably avoid profile switch loops. I've also included a 'Setup' macro, which makes it easier for you to get going.

Update: Removed the need for the Break Loop submacro by using a Semaphore Lock instead. I have the pause at the end of my Switcher macro set to 0.3s and it works nicely. The macros I've uploaded have it set to 0.5s for safety but feel free to experiment.

1 Like

Can you please make a Video on how to set up the stream deck for the plugins and how to install this/ get this working? I bought a streamdeck and keyboard maestro after seeing your video on the streamdeck+nob workflow. I am new to the stream deck and keyboard maestro so I am lost on how to get this working. Thanks of the workflow enhancement

1 Like

Hi @Jukobe and welcome to the forum! It's a lovely place full of very helpful people.

Congratulations on buying the Stream Deck and KM. It's an incredibly versatile combo. Make no mistake though, we're using it in a way that neither developer foresaw, so you're going to have to be patient and get your hands dirty. The first thing to do is spend a week or so getting to grips with each product's core functionality. Set up some SD profiles with hotkeys and explore all the other button types. Use your imagination and think about what problems they could solve for your own way of working. Go through the forum and download any macros that sound like they might be of interest to you. Open them and have a look through the actions to get an idea of the thought process behind them.

Before I start making videos, what is it you're confused by? I've done my best to lay out the steps above, so if any of it's unclear, I'm happy to explain.

1 Like

Thanks, Ive been researching the last 2 days a bit on stream deck and keyboard maestro. Im experimenting on mouse macros.

Im lost on how you mapped your cursor on each plugins respective control and how to get the profiles to switch when the plug ins open. Again thanks a lot.

The cursor mapping is done by nObcontrol. It comes with software ("nAc") within which you can set assignments which are triggered by hotkeys, which I have set to the Fn keys with modifiers if I need more than 12.

You haven't said you own a nObcontrol. You can use KM to move the cursor to predefined locations in much the same way, although I would advise you to consider buying a nObcontrol, as it gives you fine control over the parameters at which your cursor will arrive. I suppose you could use KM to control those parameters by increments, but I feel it's probably going to be less ergonomic than simply using a mouse.

As far as the profile switching goes, I've written out in detail a step-by-step guide above. Work your way through it and let me know if you have specific questions; just saying "I'm lost" doesn't give me any indication of how I might help you.

1 Like

Thanks. My first plan was to use the scroll wheel to emulate the nob function.but I did not know the nob software was so advanced till I just reseated it after reading your reply. The noc software has exactly what I what to do, I just watched a vid on plugin control with it. I am now looking online for a nob control for sale. When I get one and run in to any issue I will be back here. Thank you so much for your help Noiseil.

1 Like

nObcontrol is a family business and they do small production runs. In case it takes a while for you to get hold of one, perhaps you could try using the scroll wheel in the meantime and see if you like it. This should get you started.

First, get the SD Profile Switcher macros working.

Next, this macro will use the OCR result to get the plugin name when its window is at the front, and use it to position the mouse for you. All you need to do is change the plugin names and parameters to the ones you'll be using and store the parameter coordinates for the Move Mouse actions, with the "Get" button. To add more plugins, just hit the green plus button:


To add more parameters, hit this one:



Move Mouse to Plugin Parameter.kmmacros (35.8 KB)


Button example: For a button that takes you to to the "Intensity" parameter of Logic's Chorus plugin, set up KMLink as follows in the SD software:


You should be all set.

1 Like

I use metagrid, it is also triggered by application, so I tested it, but it didn't work. The blank app name only show me a very short time, it seems metagrid cannot be triggered manually or by some shortcuts. I don't know if i was wrong? (forgive my English)