159: Stream Deck Update

2 Likes

Great episode, thanks.

With respect to using BTT to drive the Stream Deck, here’s a tip:

BTT has a Stream Deck emulator, which is essentially a virtual Stream Deck. Which means I can take my laptop to work where I have no Stream Deck and still have a Stream Deck!

It rocks. Here is a link to discussing this on the BTT forum.

Hearing about @RosemaryOrchard and David’s Stream Deck setup is fascinating. 5 Stream Decks each?! That is amazing! Coming up with some kind of scheme to coordinate each Stream Deck to make it convenient for you is a very personal and organic thing.
I have 2 Stream Decks, one is app-specific, the other is workflow-specific (which could cover multiple apps). Elgato Stream Deck software v6.6 onwards allow you to set background pictures for a profile, so I have been making the background of app-specific profiles a huge version of the app icon. This is a great indicator of what app is active (and what app a button press will be applied to). What Rose said about app-specific Profiles is true - you do need a set of core keys on each profile (she described it as a “halo”).
The way that I play that is to have a selection of apps related to the current active app in a folder on the app-specific Profile, so with 2 button presses I can quickly move between that members of that group of apps (e.g. I can zip between programming related apps, or communications apps, each in their own “choose app” folder).
I also play it the same way with workflow-specific Profiles that relate to the current active app. For instance, I use Outlook to process email and for organising my calendar. I have workflow-specific Profiles for each of those activities, and can choose between them on the app-specific Stream Deck by tapping each related Workflow.
So between related apps and related workflows, I’m never that far away from what I want. This can also solve the problem of “I’m in a meeting and want the mute toggle, but I’m also in Obsidian taking notes about the call”. I can leave the meeting workflow Profile open, while also having the app-specific Profile for Obsidian up so I can insert callouts, etc from there.
I haven’t employed this, but there is a way you can set Stream Deck profiles from Keyboard Maestro as part of a “setup”. It’s a bit of a hack using app-specific profiles triggered by dummy apps built in Script Editor, but it works.

I do the same in my home office, with my “older” Steam Deck and Stream Deck Mini sitting side-by-side. The smaller deck is my “global” buttons, and the larger stream deck is a series of different profiles. But I can’t do this at work, with my one Stream Deck XL. (and i’m not buying yet another stream deck!)

This is my +1 feature request for Elgato: Having the options of making some buttons/rows of a stream deck “locked” to one global profile, and then having the rest of the buttons be determined by individual profiles or folders.

Right now I mimic this by copying and pasting the same top row of buttons onto every profile I have, but it’s onerous to create new profiles and annoying when I want to change one button on my top “global” row and have to then make the same change on EVERY profile I use!

I am so glad David and Rose discussed the Stream Deck Pedal straight away. Like David, this is the only Stream Deck accessory that hasn’t “clicked” for me, and I wondered if I was alone.

I notice that when I am wearing shoes at work (even my super-comfy Allbirds), i have to “feel around” with my foot to distinguish pedals. If i take my shoes off, way easier to tell.

That said, I would love to hear anyone else’s use cases for the Pedal beyond (again, like David) muting when on a video conference/podcast!

One interesting advantage for using BTT to manage the Stream Deck is that you can use the Stream Deck even while the Mac is locked. I have a headless (well, connected to a KVM) Mac Mini in my home office that I use for all sorts of purposes, including my iTunes, er, Music library. Being able to use the Stream Deck to control it while it’s locked is pretty convenient.

2 Likes

I waited a long time before I switched from Elgato to BTT to drive my one XL Stream Deck…I was worried about having to rebuild all of my profiles.

But it didn’t really take that long and now it’s far more powerful. More powerful profiles, and scripting as well. For instance(s): I have a profile for volume controls (up, down and a digital level meter.) I can have that alongside any other app profile. Ditto with a mute button that only shows (and always shows) when I have a video meeting app open, even if that app is in the background. Similar with a set of media controls that only/always appear if I’m running VLC or something similar.

Just this morning, my Finder profile was getting a little crowded. 30 min later I have a toggle button that toggles three other buttons so they either show window sorting options or window layout options.

Sorry to go on like that, but I’m just really really jazzed about it.

Another alternative to using the Stream Deck software, or the BTT version, is Bitfocus Companion. Although Companion is mostly designed for Audio-Video workflows it does have some neat features…

For example, it has native Microsoft Teams and Home Assistant integrations. This means Home Assistant now knows when I am in a meeting and if I’m on mute or not. It also has some really nice ways of integrating Home Assistant sensors into it so I now have a Stream Deck button that controls my heater that displays the temperature in my home office!

CleanShot 2024-07-17 at 13.09.04

EDIT: …and I forgot, There is also a version of Bitfocus Companion you can install on a Raspberry Pi so you can make a quasi-standalone Stream Deck!

2 Likes

Two weeks ago my Stream Deck Neo arrived between Automators mentioning it and Stephen Robles I have been looking forward to having it, mostly for managing my personal MBP when on video calls. The ability to quickly mute my external mic, have quick access to take notes on the call in Obsidian, and open a common Keynote deck have been my top three desires (cutting down fumbling with these on calls.

Where I’m currently stuck is triggering Shortcuts to open Obsidian and open my commonly used Keynote master deck. The Streamdeck Shortcut plug-in only throws errors for me.

I am trying to find in the show notes, did they mention a software than emulated the Stream Deck when you are “laptop only”?

Better Touch Tool has a Stream Deck Emulator. Or you can link your mobile device running their app.

On the episode, Rosemary mentioned using the stream deck to ask for text and then using that on a ticketing system. Does anyone have a link or instructions on how to accomplish that? I would love to use this for our ticket system.

1 Like

Rose mentions on a couple of occasions using a Keyboard Maestro macro triggered from the Stream Deck to prompt for an ID and then opening a page in another system corresponding to that ID.

During the episode, KMLink is mentioned, and this may be used to trigger the macro if using the Elgato software, but if you are using BetterTouchTool, then you would probably just trigger this via the URL trigger for the macro.

In the macro, you can prompt for user input, and then use the result of that within a URL to open that url.

The exact URL to open, if possible at all, would be dependent upon your system. If you open a record in the system, take a look at the ID of the record, and then take a look at the URL you are accessing. If this is at all possible, you should see the record ID included in the URL as part of the path, or as a parameter in the URL. The Keyboard Maestro macro would be configured to build and open the corresponding URL based upon the user input.

Hope that helps.

1 Like

Alfred’s ability to search using a custom url can also be used for this purpose. I use “jira” as the keyword then enter the ticket number and it takes me straight to it.

Is it possible to do this from a windows computer with compatible applications?

Yes.it is just a URL after all.you just need to use a mechanism to get the input and open the URL you construct. You could use Autohotkey or another preferred automation tool that let’s you get input and open a URL. The Stream Deck is just providing a button to trigger the script.

Later than planned, but for anyone who wants to grab the latest copy, the Automators Podcast Obsidian Vault is now updated to include episode 159 (160 with supporting content is on the way).

Release Notes

  • Added episode 159.
  • Two dozen new pages of content.
  • Hundreds of new cross references.
  • New hotkey for mode switching.
  • New Templater templates to trigger Marked 2 previews if you have Marked 2 installed.
  • Some typo and Markdown corrections.
  • Various plugin updates.

Did anyone use this opportunity to try out the Streamdeck Keyboard Maestro Calendar setup @RosemaryOrchard mentioned and put up a link for it in the show note?
I gave it a try and noticed a few things, iCalBuddy looks like it no longer works and is out of development or does not work on Apple Silicon? There is a new tool developed in ruby that does the same thing called iCalPal. Has anyone tried it as an alternative to icalbuddy?
Is there an updated version of the script mentioned here

I don’t have a need to use it myself, but I am pretty sure that people are using it on their Apple Silicon Macs - certainly I would have expected Rose to have mentioned it if she had had to change her setup as part of explaining this.

The Github repo for iCalBuddy shows it hasn’t had any updates, but that there are some issues - mainly feature requests from a quick scan. The notes for iCalPal suggest that active development ended about a decade ago and community efforts have kept it running - such is typical and a benefit of projects that are OpenSource. iCalPal seems to have come about because the user knew Ruby and wanted a version they could maintain.

The original setup was shared by TJ Luoma, and you can find his GitHub repo for it here:

The script you are eluding I believe would be this one.

A quick skim through the iCalBuddy command line options and the iCalPal command line options suggests there is a heavy overlap. No surprise if the iCalPal developer intended it as a successor to iCalBuddy.

  • Have you tried just swapping out the iCalBuddy calls for iCalPal (and configuring with your own calendar list)?
  • What is the nature of the issue you had when trying to run iCalBuddy? - like I say, I get the impression others are able to still run it.

I’m trying to get this to work too. I don’t think there’s any problem in principle with the version of iCalBuddy supplied by TJ Luoma running on Apple Silicon Macs (I’m on an M1 running Sonoma) – after installing you can paste the command

/usr/local/bin/km-icalbuddy.sh

into the Terminal and it runs but (for me) generates the “error: No calendars” issue discussed e.g. here due to the fact that iCalBuddy dates from an era before Apple’s permissions obsession and there’s no easy way to grant it Calendars access permission (more specifically, there’s no easy way to prompt it to ask for permission).

Interestingly the homebrew version of iCalBuddy does prompt you to grant permission (actually you’re asked to grant permission to Terminal) but even then (with Terminal given permission) pasting the line above gives the same error, so somehow the permission isn’t being transferred between the different iCalBuddy installations: possible explanations for this and solutions are above my paygrade I’m afraid …