Stream Deck! Or Why Keyboard Maestro 9 just became "the most expensive upgrade ever" *

Here is a little macro that I created that will completely automate the process of creating an Apple Script Trigger of your current macro to a file that can be used on Stream Deck. Just one click.

Auto Script Maker 1.1.kmmacros (76.3 KB)

Her is another Stream Deck Plugin for that will run any KM macro all within StreamDeck. No need to create Trigger files.

PSA for anyone who buys a Stream Deck to work with a USB-C MacBook:

The Stream Deck comes with a "USB-C to USB-A" cable. The USB-C side plugs into the Stream Deck, leaving the USB-A side (aka "what everyone called 'USB' before USB-C") to plug in to your computer.

If you have a recent MacBook (Air / Pro) you might be tempted to replace the USB-C-to-USB-A cable with a USB-C-to-USB-C cable. However, as I learned when I tried this Not All USB-C Cables Are Created Equally and trying to use mine left the Streak Deck acting as if it was not connected.

I contacted Elgato support who had this to say (edited for length and clarity):

Not all USB type C cables work at USB 3.0 speeds; it is quite possible that the cable you picked up is one of the ones that does not. For example, the cable Apple provides with some of their products only work at USB 2 speeds.

While we haven't tested this cable with the Elgato Stream Deck XL, we have tested it with the Elgato Game Capture HD60 S and it worked with that:

We've also had a customer report that this cable worked well for them with the Elgato Game Capture HD60 S:

The key thing to look for is a cable that is capable of up to 10 Gbps of data.

Or, to put it in more technical terms, you need a USB-C cable which is "USB 3.1 Gen 2" compatible.

(I believe this is also known as "Thunderbolt" which sounds like a cartoon superhero.)

Unfortunately the item they link to on Amazon is out-of-stock, but an Amazon search of "USB-C 10gbps" led to several results, including:

[Intel Certified] Anker Thunderbolt 3.0 Cable (USB-C to USB-C) Supports 100W Charging / 40Gbps Data Transfer (Compatible with USB 3.1 Gen 1 and 2), Perfect for Type-C Macbooks - 1.6 ft

Now that I'm looking at these, I remember Federico Viticci talking about trying to find cables that were "USB 3.1 Gen 2" compatible (gawd what a stupid name).

There's also

TIEGEM USB Type C 3.1 Gen 2 Cable (100W/10Gbps) USB C to USB-C Cable USB-IF TID Interface Type-C PD Cable E-Marker Power Delivery Wire for MacBook Pro Galaxy S9 S9 Plus OnePlus 6 (Red, 6.6ft): Gateway

which is:

  • $11 for 3.3 foot (that's "1 meter" to you folks outside the USA) or
  • $12 for 6.6' / 2 meter.

and it comes in red or black.

The Anker one is $30 for 1.6 ft / 0.5 meter, but only comes in black. I'm considering getting the red one, just to make it easier to spot as different from all my other "USB-C" cables, although I'm tempted to buy the Anker one, mostly because of their reputation.

Fakespot's adjusted review of TIEGEM only ranks it as ★★★☆☆ vs
Fakespot for the Anker is ★★★★☆

The difference in "feel" (mostly thickness) of the "Thunderbolt" cable is immediately noticeable, but that doesn't help when fishing around your laptop bag for a cable. On the other hand, it's not like I'm going to be bringing the Stream Deck with me places… it's most likely going to sit on my desk, so I probably won't need a cable that I can differentiate easily, because it will always be attached to the Stream Deck anyway.

At least initially I'm just going to use the cable that came with it, attached to the USB-A-to-C adapter that I already have (I have the Apple one which also has HDMI, and that worked fine).

If I need/want a USB-C-to-USB-C/Thunderbolt cable, I'll buy one then.

Anyway, I hope this info will be useful to others.


About five years ago, I used an external trigger board like Stream Deck, but I found with using KM and BetterTouchTool, I didn’t really need an external trigger keyboard. However, I can see how it might come in handy for video and photo editing workflows, gaming, and other dedicated applications that involve lots of keyboard shortcut triggers.

i use touchosc to send midi to keyboardmaestro in both directions(receive,send), so for example if i open visual studio my phone will show the tab with controls for it, and if i minimize i will see in my phone shortcuts for the macOs
i took me like a week to get it working but works great and having a touch screen its better for me than using buttons(i also have sliders and progressbars) the only downside is i have to make a midi connections at startup

How’s everyone getting on with this?

Is it possible to set up pages/folders/subfolders of macros on a stream deck with KM9?

I’ve been using a midi controller with a lot of buttons (around 80) with KM for a while now but even so I’ve run out of space!

Dreaming of an elegant and compact solution and the stream deck is certainly appealing if it can do it...

Yes, you can not only make folders, but you can make entirely different "profiles" which are specific to particular apps, or just a different set of related buttons if you like. Here's one that I just put together:

1 Like

Amazing - thank you!

Yup that’s definitely going to happen then!

To clarify, what I meant was:

  1. You can make separate profiles (which you can access at any time via the Stream Deck menu bar app)

  2. You can set a "Default App" for each profile (other than the main profile) which will be automatically when you switch to that app. For example, I have a "Profile" that I want to use with BBEdit, and so I set BBEdit as the default app for the profile, and now whenever BBEdit is at the front, the Stream Deck automatically switches to that profile, and then back to the default profile when BBEdit is no longer the front-most app.

I'm really impressed with this device.

Can you configure designated keys on the SteamDeck to be context-sensitive? I.e., the way I'd want to use it would be to have icons for the shortcuts I've created for various applications. And I would want the set of displayed icons to automatically switch to those for the program whose window is active (except for a subset of icons, which I'd like to persist across all applications). So when Word is active, I'd see my Word icons. When Mathematica is active, I'd see my Mathematica icons, etc.

Stream Deck has profiles (I think that is what they are called) that can become active in specific applications.

And the different profiles can have different Keyboard Maestro buttons with different virtual keys and hence trigger different macros.

1 Like

Yup. Exactly as Peter said, there are profiles, and you can set a profile to be active when a certain app is front-most. That profile will be automatically activated when you are using that app, and then it will return to the default profile when you switch to another app (assuming that one does not have a profile with it).

You can also manually switch profiles from the menu bar Stream Deck app if you need/want to.

1 Like

I am surprised that no one mentioned the Hotkey Matrix? To me 144 keys along with Keyboard Maetro's ability to act in the application of your choice, would be a much better option. It's also slightly cheaper.

Tunes; it does not have dynamic changing icons like the SD does.

The list price for the Hotkey Matrix on the website is $279.99 (didn't see it on Amazon).

The Stream Deck XL is $250 and the regular size is $128 on Amazon.

144 keys is definitely a lot more, but at that size I wonder if it would get unwieldy. Also, remember that Stream Deck (either size) can have app-specific profiles, meaning that the keys don't always have to be the same keys.

Of course, with 144 keys, you could immediate access to the same number of keys as 4½ Stream Deck XL profiles! And you could group them together in separate areas for related actions.

I like the Stream Deck, but can definitely see the appeal of something like the HotKey Matrix.

1 Like

Sounds really interesting. I'm right now trying to make sense of all the apps I have (including BetterTouch) to re-design my workflow. Could you explain your workflow a little further, please?

1 Like

Hi @Alferid, thank you very much for your interest.
Do you mean my workflow with palettes in interaction with BetterTouchTool?

In this tutorial (sorry, only german) I show you how to work in KM without shortcuts. This means that I control 95% of KM macros pallets with BTT gestures only:


So efficient! Thanks. I think that this is a great time saver for me. MANY THANKS Again! :1st_place_medal:

1 Like

To simplify the BTT gestures creation with KM macros, I have created a pair of macros
If you want them, please let me know @Alferid.

The only advantage of the mobile app is that the icons are going to be beautiful and pixel perfect. Unfortunately, it's a subscription base :frowning: