Questions About Working With Stream Deck and KM

@noisneil and @cdthomer 's posts convinced me to buy a Stream Deck which is discussed by @cdthomer here

The discussion in that post is too technical for me to understand, hence my questions below.

In the post I read

TL;DR time... if you want a simple button and do not need visual feedback on the SD itself, or you want to pass a parameter to the macro, use KMLink. If you want a button that allows KM to change it's icon and/or title (and don't need to pass a parameter), use the KM native plugin which due to my ignorance prompts more questions than it answers.

My questions:

  • what does " visual feedback on the SD itself" mean ?

  • what does " pass a parameter" mean ?

  • with a Stream Deck can the same button toggle a macro for example mute / unmute ?

  • what does pass on a trigger mean as in KMLink has a parameter box that passes on a TriggerValue to KM.

  • at the end of the day, should I use the Keyboard Maestro’s Native Stream Deck Plugin or the Kmlink Plugin?

thanks in advance for your time and help

If you want KM to be able to change the displayed icon on the Stream Deck depending on the state of a macro. Much of the time this is unnecessary, but you can, for example, have a macro that toggles the state of something and have the SD buttons reflect its current state.

You can enter something into the Parameter box of the KM Link Stream Deck plugin and have this passed to the corresponding KM macro. This parameter can then be accessed in KM using the %TriggerValue% token.

For example, let's say I have a simple macro that will paste some text. I can have this one macro selected on multiple Stream Deck buttons and I can pass different text to the macro via the parameter, like so:

Stream Deck setup:

Keyboard Maestro action:

Any macro can be triggered via Stream Deck, but you can also perform actions within Stream Deck itself, without the need for Keyboard Maestro. Here are some native Stream Deck actions that do just that:


Use KM Link with one main exception, which is when you want your KM macro to set the Stream Deck button's icon dynamically. You may well never find the need do this, so in short, use KM Link.

1 Like

thanks for a perfect answer

icon as in picture or do you mean text also (like the name of the macro appearing automatically)

When i purchased the Stream Deck today, I was asked if I want to buy a pedal. Do you know what it's used for and do you recommend it ?

Either. Here are the available KM actions for use with the native Stream Deck KM plugin:

CleanShot 2022-08-14 at 11.29.11@2x

Read @cdthomer's post for more info. Briefly, you reference the SD button ID in the KM action like so:

This is mainly for streamers, gamers or musicians who want to trigger something without using their hands. You can use it to trigger three actions (including KM macros, of course), per SD profile. I haven't used it myself, as I don't have need of it. Only you can decide if this would suit your way of working.

1 Like

all clear. thanks again very much

1 Like

Hi @ronald it looks like Neil has explained everything quite well for you, but if you’re interested in seeing some of the ways I use the native plugin to provide "visual feedback" to the Stream Decks buttons, take a look at the following videos.

Video: Bluetooth peripherals battery levels (click to expand/collapse)

bluetooth peripherals battery levels

Video: Get Apple Music song information (click to expand/collapse)

get song info

Video: Get Apple Music app volume (click to expand/collapse)

iTunes volume

Video: MicDrop toggle system microphone mute (click to expand/collapse)

microphone mute

Video: Toggle office fan smart plug (click to expand/collapse)

office fan

Video: System volume (click to expand/collapse)

system volume

All of these buttons have their title and icons updated via Keyboard Maestro and the native Keyboard Maestro plugin. This is not possible with KMLink. So if you want to do something like this, you must use the native plugin.

These are just a few example of many buttons that I have updated via KM... if you want to see more examples or have questions about the macros themselves and what the button is showing, feel free to ask.



very kind of you to post all those videos ! thanks very much. waiting for the SD

1 Like

Not a problem, let us know once you get it if you have any further questions. And prepare to have your mind blown with how cool it is. :sweat_smile:

Question: Do buttons in the Stream Deck automatically change, depending on which app is on front, to indicate which macros are available for that app?

What I'd like to know is can I have 10 of the 15 buttons to automatically change depending on which app is in front, and keep the rest static;.

Yes, that's exactly how it works. If you associate a profile with an app in preferences, it will be loaded when that app is front-most.

If you want to keep some buttons static, you can copy them to each profile on which you'd like them to appear. It's as simple as cmd-C, cmd-V. Alternatively you can set up a default profile containing them and duplicate it when setting up subsequent profiles.

1 Like

I use this approach with my keyboard shortcuts,

  • Global shortcuts that always call an app (ie Ctrl-M → Mail) in any context, and
  • Local shortcuts depending on app in front.

Huge thanks!

I just received the SD, and am configuring it.
I installed KM link and a macro in a button.
I have a few questions

1- the KM icon is displayed and occupies the whole button which I don't need. May I not display this icon ?

2- Although the title is Bookmarks List Main TRT , only marks L is displayed on the button. I could not find any text wrap in settings.

3- when I work in the Stream Deck app, and switch to another app, the SD app is not visible when I click cmd-Tab to switch between apps. I have never seen this before

4- when I display a prompt from list, I usually exit the list by press escape. With the Stream Deck , nothing happens when I press esc. How to you quit the list ? Pressing the SD button twice does not help

thanks very much


Congrats on your new Stream Deck. Once you get used to it, you'll never want to be without it, I can assure you!

Yes, this is a minor design oversight in my opinion, but one that's easily remedied. What I do is set the icon to a black square like this one:

Black square

Of course, you can use other colour squares too, and that serves as a nice way to make organisational 'zones' within a profile. I have a macro that sets a button to a black square for this reason.

SD Black Square.kmmacros (46 KB)

Macro screenshot

Alternatively, you can set an icon that easily identifies the button with no text at all. For some purposes this is preferable, but not always.

There is no text wrap for these small buttons, unfortunately. You can of course simulate it by splitting a title into separate lines manually, and you can specify the font size. There is naturally going to be a limitation to how much text you can fit on these small buttons, but it's a small price to pay for the benefits of using a Stream Deck. In practice, I find it very easy to get used to abbreviated button titles. Here, you could try something like:

I'm not sure what you mean. Do you have a button set to emulate the Esc key?

Yes, though you need to set the icon to something. What I usually do if I want a blank icon is use Keyboard Maestro to set the button's icon to black. You can also just use a black image file.

Unfortunately there are no text wrap settings. You just have to manually insert new lines in the title. This can be accomplished via KM with the native plugin of course, and from the SD app by using ⌥↩.

It doesn’t appear because it's not a normal app. I just use Alfred (a better version of Spotlight) to open it. Note that if it is open, it will prevent smart profiles from changing automatically. This can be handy when you want to keep the SD on a certain profile while switching between apps.

I'm not 100% certain I understand this question... are you launching some sort of list from the SD itself?

1 Like

IF you're using the native KM plugin, which, as discussed previously isn't ideal in most cases. Just wanted to point that out to help avoid confusion. Wouldn't it be nice if Elgato added a quick plain colour background setting next to the button image? Seems like an obvious UX improvement to me.

What's the difference between hitting ↵ and ⌥↵?

Same here.

@noisneil @cdthomer @hello

Thanks very much @noisneil and @cdthomer for your replies

I installed the KM Link plugin.

@cdthomer 's black square macro works perfectly and combined with new line and color for the for the title, I have all I want. I will create other macros for other background colors.

I also have Alfred. Surprised that you actually type something (here in alfred) to open the Stream Deck app. It's a bit tedious. I wonder if I can do it with Better Touch Tool

Prompt from list

  • usually in KM, if I trigger a prompt from list macro → list is displayed. If I change my mind, I just press esc and the list is gone from the screen.
  • with Stream Deck , how do I make the list disappear from the screen ? Esc does not work. Pressing the button a second time does not work.
1 Like

this works if you specify Leave it at the front

Where's that? I'd love to see it.

⌃Space, type "st", ↵.

Not all that tedious.

What do you mean "with Stream Deck"? What are you trying to do with the Stream Deck? Are you trying to simulate the Escape key?

The black square macro : just scroll a few posts above in this topic

sd in alfred you are right

prompt from list
Attach a SD button to a prompt from list macro.
Press the SD button
the list is displayed on the screen
you decide to choose nothing: how do you make the list disappear from your screen ?

Is there any alternative to scrolling down my long list of macros to attach a SD button to a macro ? I don't see a search box.