Shameless self-promotion, but I used a Stream Deck to make "Princess Buttons" for my kids: <a href="https://dantonio.info/projects/the-buttons/" rel="nofollow">https://dantonio.info/projects/the-buttons/</a><p>Allows me to not be the DJ/arbiter of music for my toddlers, yet still provides them with control over the music (Sonos) and helps them learn to negotiate & take turns between themselves. The Stream Deck has, thus far, held up to quite a lot of abuse. I've added some lighting control and they have play/pause/next control, too -- works great. The USB 'server' software is fantastic, too. =D
As an alternative to a stream deck, I started using a MIDI board last year. I tried a copule and settled on the Behringer X-Touch Mini [1]. It's less than $100. What I primarily use it for is volume control (including muting). Like I have a particular knobs for Chrome, Master Volume and games. This is all pretty easy to set up with something like MIDI Mixer [2]. There are Youtube videos on it.<p>I also use the media controls for Spotify.<p>This particular board has extra buttons you can use for, say, muting Zoom.<p>As an aside, volume on Windows is a horrible mess. You can have an external speaker volume, a system Master volume, an app-specific volume (the last 2 through the Windows Volume Mixer) and then volume settings inside a game.<p>One thing I appreciate about iOS for example is there's just one volume for what you're doing. There are separate volumes (eg ringer, speaker, music) but you only ever adjust one and it's context-dependent. Listening to music? You adjust music volume. On a call? You're adjusting call volume. Not on a call? You're adjusting ringer volume.<p>In an ideal world, the hardware volume could be synced to the system master volume and there would be no game or app specific volumes. All of these would be deffered to the volume mixer. Or at least any in-game or in-app controls would merely adjust that volume.<p>I can but dream.<p>The only thing this particular board doesn't have is motorized sliders for volume. I didn't really find any options for this less than $300-500 and they tended to be much bigger boards. I'd really prefer a slider to a knob but that's just nit-picking.<p>[1]: <a href="https://www.behringer.com/product.html?modelCode=P0B3M" rel="nofollow">https://www.behringer.com/product.html?modelCode=P0B3M</a><p>[2]: <a href="https://www.midi-mixer.com/" rel="nofollow">https://www.midi-mixer.com/</a>
I never thought I'd have a use for extra buttons all that much. There's always keyboard combinations to spare.<p>Yet about 18 months ago, I remembered I'd got these 5 custom buttons on my keyboard that in something like a decade and a half of using this keyboard model, I'd <i>never</i> once used.<p>A little bit of searching later, I figured out how to write a bash script that would (for Linux) find the zoom window for whatever meeting or webinar I was in, and bring that up. Then a second script to do the same but also unmute. That has become so insanely useful I'm really kicking myself about not having used those buttons before.
For someone who kinda wants this stuff but doesn't feel great about spending 200 bucks for 15 buttons and all the garbage that goes with...<p>an idea I had last week seeing this article is to buy a USB 10-key numpad from a pawn shop, and use something like kmonad[0] to map key presses from that device to specific actions.<p>Reuse some existing tech, and you can just tape over buttons. It's not exactly the same product for obvious reasons, but I feel like you can do some magic with statusbars and toasts in scripts to get something decent.<p>[0]: <a href="https://github.com/kmonad/kmonad" rel="nofollow">https://github.com/kmonad/kmonad</a>
I got one as a gift and was a bit skeptical of it too as a programmer that does most of the work in code with vim commands but have come around on it.<p>useful to have as a clock/date for a few locations at a glance. opens up some apps too but the main thing I use it for is having a few reference docs that you can open up with a button. window layout buttons are nice too. the other thing I use it for is setting brighness on the screen and locking the screen. Not sure I'd buy one but they are neat to have if you get one as a gift.
I initially got mine for zoom calls but having a display on each key has allowed me to add a couple of different clocks with different time zones in the button. If someone said to me, "that's dumb, you can have a clock on your desktop", I might have agreed with them. But, having the little clocks always in the same place on the desk is really handy.<p>The other handy one is the mac email notification button, showing how many new emails I have.<p>I think they are way too expensive for what they are but now I have one, I would probably spend the money again if it got stolen.
Way back in the 90s I was using AWESOME fully mapped WACOM tablets for AUTOCAD...<p>Eveyr command was basically on the tablet, and in the center was the screen area...<p>There was a printed menu-matrix configured for autocad...<p>It made drawing so fast (I finished second in the National CAD Olympics in ~1993 and finished a 3 hour test in in 30 minutes.)<p>For years this device made me extremely fast on CAD.<p>The muscle memory for the location of certain items, coupled with the custom keyboard shortcuts for all other autocad commands could be done with being mostly mapped to keys close to the left hand placement...<p>I miss those tablets. I should get another one.<p>The point is that if you can know what core functions you want on the extra input real-estate... you can make your workflow very streamlined.
I love my Stream Deck for all the reasons described by others in this thread, but unfortunately support for Linux is nonexistent.<p>You need to rely on the open source reverse-engineered version of Elgato StreamDeck in Python [1], with the StreamDeck UI on top [2][3]. It works, but it doesn't offer all the functionality, and it's even more rough on the edges.<p>Plus, if you have a StreamDeck connected to a KVM and it is switching between two computers (a Mac and Linux, in my case), then you'll have completely different experiences, with different icons, plugins that are not available on Linux (e.g., Spotify, Clock).<p>I still use it and find it worth the investment, but hoping that Elgato dedicates some love to Linux users in the future.<p>[1] <a href="https://python-elgato-streamdeck.readthedocs.io/en/stable/#" rel="nofollow">https://python-elgato-streamdeck.readthedocs.io/en/stable/#</a><p>[2] <a href="https://timothycrosley.github.io/streamdeck-ui/" rel="nofollow">https://timothycrosley.github.io/streamdeck-ui/</a><p>[3] <a href="https://github.com/timothycrosley/streamdeck-ui" rel="nofollow">https://github.com/timothycrosley/streamdeck-ui</a>
I have one, but the software is just annoying, so I recently bought an Adafruit MacroPad: <a href="https://www.adafruit.com/product/5128" rel="nofollow">https://www.adafruit.com/product/5128</a><p>It works on any device including my iPads, and although I'm only using it for keypresses, there are plenty of modules for doing MIDI and other HID shenanigans that I haven't investigated yet.
I use mine daily for a few things, and I'm not a content creator. The Zoom buttons are great because it's one tap access to mute/unmute or video on/off regardless of what window I have on top at the time. I set my other buttons to common websites that I use, so I don't have to go hunting for the Okta tile or bookmark.<p>Could I do these things with other tech? Sure, but this was pretty affordable, is really attractive and customizable, and has software that works really well out of the box. Hard to beat for someone lazy like me. :D
I am using the duckyPad, text file configuration on an SD card, no need for complex software. Works on any OS that supports USB HID devices.<p><a href="https://www.tindie.com/products/dekuNukem/duckypad-do-it-all-mechanical-macropad/" rel="nofollow">https://www.tindie.com/products/dekuNukem/duckypad-do-it-all...</a>
I use this for volume control<p><a href="https://www.etsy.com/listing/825756246/digital-audio-volume-mixercontroller-for" rel="nofollow">https://www.etsy.com/listing/825756246/digital-audio-volume-...</a>
I've been using a Stream Deck XL for the last couple of years (with a Mac) and I'm very happy with it.<p>I use it mostly as an app switcher (button press brings up an app, another press hides it if it's in the foreground), with additional buttons for volume control and speaker mute. It's incredibly powerful with Keyboard Maestro. An example of a really useful automation I have: a "mute microphone" button that does the right thing in Google Meet, Zoom and GoToMeeting. No need to remember the fancy shortcut that each app invented, no need to hunt for the button with the mouse, no more hitting the "Leave" button instead of muting/unmuting. A single hardware button that toggles the microphone state in any conferencing app that is in the foreground. That alone was worth the price of the StreamDeck.<p>What I found though is that the XL is too large: I don't use that many buttons and I can't be bothered to tinker with the configuration endlessly to make use of them. I think I will replace it with the standard-sized StreamDeck (15 buttons).
There is an amazing alternate control software package for Stream Deck called Companion that allows for control of many AV products and really opens up the possibilities of what can be done with the SD:
<a href="https://bitfocus.io/companion/" rel="nofollow">https://bitfocus.io/companion/</a>
Fantastic little piece of hardware. I got in somewhat late, especially as a content creator, but man has this tiny keyboard made managing my setup so, so much simpler
I have a good old Ableton Launchpad mk1 (These go apparently for as low as $25 on ebay/Reverb).<p>This gives me 8x8 + 16 buttons that I monitor via a Java app that I wrote. It works but I'd love to have a UI app for controlling it and assigning actions, similar to <a href="https://www.midi-mixer.com" rel="nofollow">https://www.midi-mixer.com</a> but for macOS - I'm too lazy to write a UI on top of my Java hack. Any recommendations for something that can consume generic MIDI events and map them to.. stuff?
I wonder if the Touch Bar was actually a poorly executed good idea. I've always used a full external keyboard (with numeric pad) but I'd love to have the F16-F19" keys graphically mapping to something depending on the context.<p>For example, in VS code, I currently have F13 for start debugging and resume. F14 for stepping over, and F15 for stepping into.<p>I would wish to have a physical F key with a configurable character or emoji. The problem with the Touch Bar was mostly: 1) no physical feedback 2) misplacing the Esc key.
My experience with Stream Deck has not been so smooth, but it is more due to Windows as an OS on corporate environment rather than the hardware.<p>I got Stream Deck primarily to show status and control Teams online meetings on Windows. Unfortunately, on Windows, Teams does not have global hotkeys for mute/unmute mic, audio on/off, video on/off etc. The keys are local to the online meeting window only. It also does not have reliable way to get mic/audio/video current status for showing.<p>Some hacks exist using AutoHotKey to loop through all the windows and send the keypresses, but they require megabytes of scripts to work, because Teams does not have a reliable way to find that window.<p>Other ways exist to directly control the global operating system mute, but Teams does some hacks with the mute, so that showing the mute status does not work.<p>There is Microsoft Graph API for Teams API, but I could not get that work with Windows SSO for authentication, so I needed to build a login workflow, and became too complex very soon.<p>I am pretty sure there should be a way to accomplish this, as teleconferencing devices are able to accomplish this with Teams. I wish Elgato would work with Microsoft to provide this functionality.
I've really been enjoying mine with Home Assistant buttons to trigger lights and show sensor values, as well as a really neat way to apply tags while looking at images in digikam (through one of the windows streamdeck plugins that allows complex key sends including modifiers.<p>I also like it as a way to quickly open saved PDF datasheets on my system for the ones I use all the time.
I use my Stream Deck to show me the temps of my CPU/GPU/and the water temp on my custom loop<p>I also have a mute the microphone button, and a simple "NVIDIA capture the last 2 minutes of my screen" button..<p>Works perfectly for what I wanted, a temp/fan monitor with a couple extra buttons.<p>Having the ability to mute/unmute in meetings via a hardware button is awesome.
One of the developers' blogs I follow has an interesting similar article with some good tips: <a href="https://adam.ac/blog/stream-deck-for-developers/" rel="nofollow">https://adam.ac/blog/stream-deck-for-developers/</a>
This is interesting. Is anything known or documented about the low-level protocol used to upload images and recognize input? I can see it being useful as a controller for specialized applications, including embedded ones, but only if there's a low-level C API.
For those that have one, besides being able to set custom icons what advantages are there over remapping your numpad?<p>A standard numpad comes with 17 keys (including the num lock key) to remap to whatever you want and you can combo them with shift + ctrl + alt.
> In some ways, it’s great to be given a blank canvas! You decide what the keys do! You decide what they look like! On the other hand… you have to make all those decisions, and if they don’t work well, you’re the one who needs to fix them.<p>This has been my experience w/ fully programmable mechanical keyboards. 104 keys, 70 keys, 60%, split, columnar, macros, layers, switches, keycaps.<p>So much variation that it is effectively endless. At some point you settle and don't touch it because you realize you're spending more time optimizing the tool than actually performing the task it is supposed to help you complete.
My largest gripe with Corsair (Elgato) here is that I can't set padding on a per-tile/button basis, as it seems icon packs, system icons, and native Stream Deck icons come in varying sizes.<p>Second, the profile switching is hit or miss with Electron (or adjacent) applications, which I don't fault Corsair for. Looking at you, Discord and Slack, which I would love to set a contextual app profile for.
It sounds like their software is very polished. Also, it might be possible to emulate the device on an old phone.<p>I bought an all-in-one PC with a touchscreen in part to experiment with using it in a similar fashion, but haven't made much progress yet.
My favorite use of Stream Deck (XL) is hooking it up to a small, custom API to quickly change my Slack status at work. It’s so nice to smash a single button and walk away to lunch or walk my dog.<p>I also have the top row filled with world clocks.
question for fellow streamdeck users - is there any voice change software for mac? like if i want to add echo or autotune while i speak by pressing a streamdeck button.<p>the main one all over google search results only works on windows
StreamDeck can be useful in some surprising environments. I've got some custom scripting I'm selling to doctors which helps with common actions in practice software. Things like marking pathology results normal/abnormal/nurse-to-advise, creating a specific referral from a template, or going through a full vaccination record flow (that's 1-2min real time saving per person). It's great :-) (an example config screen <a href="https://automate-med.viraptor.info/assets/images/pathology.png" rel="nofollow">https://automate-med.viraptor.info/assets/images/pathology.p...</a> )