In late 2022 I picked up a Keychron C1, a tenkeyless mechanical keyboard to replace my Corsair Strafe RGB. There was only one downside to this change, which was that I used the numpad on my Corsair as a macropad in various applications. So, looking to bring back that little bit of optimisation, I looked around for macropads options. As much fun as DIY is, there is no beating a well supported product and so my eyes quickly settled on the Elgato Stream Deck. The best part? The Mk2 was just released, which meant I could pick up a brand new Stream Deck Mk1 at a huge discount.
Now, I am not a streamer not interested in streaming. The idea of having to entertain an audience is tiring to say to the least. And that’s not even to mention having to please an algorithm to become even remotely known. But despite it’s name, it makes for one hell of an awesome productivity tool especially combined with plugins. So, here’s how I set up my Stream Deck as a productivity and entertainment focused macropad.
Essentials
Before I we can get started, there are some essential items to explain regarding the operation of the Stream Deck.
Profiles vs Folders
On the Stream Deck you have the option between using profiles and folders. At first glance they seem similar, but upon closer inspection they behave completely different:
Profiles | Folders |
---|---|
Supports 10 pages. | Supports a single page. |
Can contain folders and shortcuts to profiles. | Can contain folders and shortcuts to profiles. |
Contents will always be the same, no matter where the profile is activated from. | Content is not synchronized between duplicates (copypasted). |
Can be opened automatically based on active program window. | Has to be opened manually. |
So in short, profiles should be used as much as possible. They are more easily expanded and unlike with duplicated folders, you don’t have to worry about manually synchronising changes you make. Of course this doesn’t mean folders don’t have their use. I still use them occasionally for non-crucial items such as Spotify playlists or in my Settings profile to put a few related options together. My rule of thumb: if you will address it from multiple screens, always go with profiles.
Plugins
As mentioned, the software and extensions were a huge part of why I opted for a Stream Deck over a DIY solution. There are tons of powerful plugins available from the Elgato marketplace, as well as on GitHub for sideloading. For my setup, I use the following plugins. Most can be found in the Elgato marketplace and/or through their respective link:
- BarRaider plugins:
- Advanced Launcher: Launch applications and Windows UWP applications with launch parameters.
- SpeedTest: A quick internet speedtest, useful for troubleshooting. Shows ping, and up and download speeds.
- Spotify Integration: Powerful Spotify controls complete with album art.
- SuperMacro: Create and customise macros with mouse and keyboard inputs.
- Win Tools: Use various windows toggles, virtual desktops, start/stop services and so much more. A poweruser’s wet dream.
- Windows Mover & Resizer: Does exactly what the name implies.
- Analog Clock: Displays the time.
- Color Picker: Picks the colour of the pixel your mouse curser is currently hovering over. Can show colour name, RGB value, and HEX value, as well as automatically copying said value to clipboard.
- Cosmetic Key: Displays an image, purely for decoration.
- Discord: Allows you to control Discord from your Stream Deck.
- HWiNFO: Hooks into HWiNFO to display various system stats, graphs and sensor readings. Excellent for monitoring your system performance.
- Midi: Receive and send MIDI commands to instruments and DAW’s, complete with Mackie support.
- OBS Studio: Control OBS from your Stream Deck.
- Voicemod: Control Voicemod voices and soundboards from your Stream Deck.
- Volume Controller: Alter system volume.
- Windows Gizmos: Adds a ton of nifty features to control Windows 10+.
- Command Line: Run command line commands from your Stream Deck.
- Window Actions: More Window moving/resizing options.
Of course these are just the plugins I use. There are plenty more available, so just look around at plugins that benefit your individual workflow.
Virtual Desktops
While not a Stream Deck specific item, it is worth mentioning how I make heavy use of Windows’ virtual desktops. Currently I have 4 desktops set up, each with their specific tasks. I tried my best to not have any overlap in related programs (ie: video editing+photoshop, DTP tasks). These virtual desktops are called through some of my Stream Deck shortcuts, hence why I mention them.
Desktop | Used for |
---|---|
General | General use, browsing, relaxing |
Adobe 1 | Photoshop, Audition, Ableton Live |
Adobe 2 | InDesign, Premiere, Animate |
Adobe 3 | Illustrator, After Effects, Lightroom |
I can strongly suggest any power user to start using virtual desktops. They really help you to stay focused and minimise screen cluttering. There’s a reason linux has had it for decades…
Profiles
On to the profiles I use with my Stream Deck, starting the most important one of all.
Home
Designed to act as a launcher for applications and profiles. The home button on this profile also takes me back to the “General” virtual desktop when pressed. Most of these buttons will simply launch a different profile.
Adobe
A launcher for my Adobe programs. Each will change Windows to the program’s virtual desktop, launch the program if not open or make it the active window. For Photoshop and Premiere I have profiles set up which automatically open when said programs are the active window. Most of these shortcuts are ones I keep forgetting, or custom ones added with macro’s that use the often forgotten F13-F24 buttons. The home screen on these profiles will also bring me back to the “General” virtual desktop as I run my Adobe applications on their own virtual desktop.
Web
A launcher profile for Firefox and web applications. I use 2 profiles in Firefox. The default profile is used for general web browsing, where the other profile is strictly for piracy and adult content. Firefox for Developers is used only for work and tech hobby related web browsing.
Volunteer work
A launcher profile for my volunteer work at Abunai!. It contains short links to this years’ work files folder on my PC, Firefox for Developers, email, Coda (documentation/wiki), Drive and their website’s wp-admin.
Spotify
My Spotify profile handles all music controls. The 4 blocks display album art, while also serve as the play/pause button. The second page contains folders with shortcuts to my favourite albums and playlists. These mostly come in handy while in-game or when I just quickly want to listen to some tunes.
Discord+OBS voice/video calls
This profile allows for quick mute and deafening on Discord. Also present are OBS scene controls for my webcam profile. On my system I have multiple camera inputs (Logitech C922, Pixel 7 wired/wireless). These are send to Nvidia Broadcast for RTX noise removal (C922 only) and background blurring. The output of Nvidia Broadcast is then used in OBS.
The Abu Call is a multi-action button. It launches Discord, OBS, activates OBS virtual webcam, 2 Coda pages (meeting minutes and my commission’s home page), and finally moves and resizes all windows to where I prefer to have them during a meeting. Just 1 button press and 5 seconds, and I’m completely settled.
Voicemod
Mostly just voice changers (EQ, dry, Minions) and soundboards. Some are multi-action and also trigger timed OBS scenes.
Gaming/TF2
2 related profiles. The Team Fortress 2 profile contains soundboards for in-game voice spam, as well as automated text chat messages. The “Random Facts” button selects a random line out of ~30. Half of these are real facts, the other half nonsense. In true TF2 tradition, responses have varied from sincerely interested, to offensive remarks.
Ableton
The Ableton button on my home screen changes virtual desktops and launches the program. Once active, it switches to the profile shown above. The first page has controls for the application views and playback. The second and third pages have track controls for tracks 1 to 8. I can mute, arm and solo these using the MIDI plugin.
“Settings”
The final profile contains toggles for system settings and monitoring. Most are self-explanatory so I’ll only go through the special cases.
- Monitor select is a folder containing shortcuts to change outputs between all 3 monitors, a single monitor, or my TV.
- System monitor displays 3 pages of system stats. Page 1 is CPU+GPU information, pages 2 and 3 are used for HDD/SSD information.
- The volume sliders are part of Wintools, and automatically populates with all applications outputting sound. You can then adjust the program volume individually.
- Audio inputs allow me to change the active microphone between raw input from my ATH2020, RTX noise filtered, Voicemod output, or Quest 2 headset.
- Audio outputs does the same, but with speaker, headphone, TV and Quest 2 outputs.
- Toggle LAN/Wifi calls a task scheduler entry containing a batch file to enable and disable ethernet and wifi. For some reason, whenever Steam downloads or uploads anything at any speed through LAN it freezes the IPTV box’s video in the living room. No idea why, but the problem does not appear on wifi. Gremlins, am I right?
In conclusion
To me, the Stream Deck became an important tool to speed up my work and hobby related tasks. Having used it for 2 years now, I still feel like I’m only scraping the bottom of the barrel in terms of what this device can do. Just about every month I find myself making changes, slightly improving tasks or just making my life easier. I do have one fear, which is being dependant on closed source software. There is nothing preventing Elgato (owned by Corsair) from dropping all support for the Stream Deck or older models. But until then I will keep on using this device and it’s rich features. And who knows, if they do decide to drop support the open source community will probably cobble together an alternative.