Triggering KM from StreamDeck has stopped working

macOS 14.6, Stream Deck 6.7.1, KMLink freshly installed from the Elgato marketplace -- everything works expected. So it's a problem specific to your setup rather than something more general.

I did get a TCC prompt on first use:

image

...so it may be that your Mac's TCC database has got itself in a muddle. Check System Settings->Privacy & Security->Automation -- is "Elgato Stream Deck" listed, with permission to control Keyboard Maestro? Try toggling that off and on again.

That setting is enabled on both machines, as is the Elgato StreamDeck switch in the same section.

Yeah, this was just to demonstrate that the same hardware/cables and profiles were getting different results. Am happy to look at any setting that you think might be responsible.

To reassure, the profile that you see? I did a Backup of all profiles, then imported (restored) on the other machine. So the profiles are identical on both

Alright, we will take your word for it that your settings are the same.

No, that is missing on the one that is not working. I can see KM in the Automation, but not StreamDeck. This looks promising. I cannot test right now (I am remoting in), but as soon as I can physically get to this and try (tomorrow) I will see if that is the culprit.

1 Like

I did try that before, and that failed to fix the issue for me. But it looks like you might have found the culprit with the Automation (missing) entry :crossed_fingers:

I did try to add Elgato back in here ... but unlike other Security & Privacy panels:

  • There is no - / + button set to add application
  • I cannot drag Elgato Stream Deck in from the Applications folder to that panel

So I'm not really sure how I address this one, now. It looks a strong contender for source of the problem, but I cannot tell how to fix it.

That's true. This is a "feature" of macOS. In order to add something to the list, you have to get the application to perform an action that requires access to another application. If an app is missing from the list, as you are seeing, you have to do something to get the app to try to access the other app.

Once it is in the list, it can be toggled off and on, as Nige says. But it has to be in the list first.

In the case of Stream Deck, the normal way to get an entry for it to control Keyboard Maestro is to set up a button in the Stream Deck to trigger a KM macro, and then press that button. That will get you a prompt which you will confirm and then the entry will be placed in the System Preferences.

At one point you said you reinstalled KMLink, but I see no point where you said you re-installed Stream Deck. I would suggest you try that. And it wouldn't hurt to use the same version as the Mac which works. If that works, then you can change/update the Stream Deck app to see if that breaks it or not. This seems to be a permission issue in which macOS must grant Stream Deck access to KM.

Yeah, I have not uninstalled and reinstalled Stream Deck as I figured that would have a bigger impact (for example, having to reinstall any other plugins, would button images be lost etc? Maybe profile backup covers that second part). I have, however, updated Stream Deck software when it says there's a new version.

I wil give that a go then. Thanks for explaining how the Automation items are added (and why I can't manyually add them)

You'll need to reset the TCC permissions for the Stream Deck app.

In Terminal, type or paste the following:

sudo tccutil reset All com.elgato.StreamDeck

After hitting the Return key you'll be asked to authenticate with your account password (I'm assuming you're an administrator on your own machine!). You should then see

Successfully reset All approval status for com.elgato.StreamDeck

Hit a KMLink-enabled button on your SD and you should now get the usual permissions prompt and can allow Stream Deck to control KM.

OK, I tried this. I got the success message in Terminal, but subsequent press of a KMLink button did not to the permissions prompt.

So, I tried removing the Elgato software entirely, I rebooted my Mac, I reinstalled the Elgato software from scratch, reinstalled KMLink and ... am in exactly the same position as before. Still, everything is working for me on the device except KMLink. This is driving me crackers.

It might be that your TCC database is corrupted, and nothing more than a complete reset will cure this. Since that's non-trivial and will probably result in you having to re-approve a metric boat-load of permission requests, you might want to either wait for more from @corcules or start switching things to the KMSD plugin.

Sorry Peter :person_shrugging:

Please everyone, you can use

1 Like