Xencelabs Quick Keys Remote and Mac Automation

I was listening to a recent Automators podcast episode on hardware launchers when a device was mentioned that caught my interest. The Xencelabs Quick Keys Remote. Currently I utilise an Elgato Stream Deck at my desk and my Macbook Pro’s touch bar when I’m on the go to trigger various automations I have put together. While I also utilise keyboard shortcuts, conflict palettes in Keyboard Maestro, and of course various Alfred keyword triggered workflows, having single touch buttons that carry out named functions as I switch between apps helps reduce that cognitive load of trying to keep track of all the possible keyboard shortcuts I might wish to employ.

The reason it caught my attention was that I know at some point I will update to an Apple Silicon Mac and have to say goodbye to my touch bar. While I do have a carry case for my Stream Deck, it is bulky, and after reviewing the Quick Keys Remote, I figured it might just be something that would work as my portable solution. However, enabling it for my use involved being a little creative.

But What About Your Mobile Devices?

You may be wondering about utilising my existing portable devices as this is a common solution for this sort of scenario. I have previously looked at using my iPhone or iPad as a portable control panel. Notably I looked at both the Stream Deck mobile app, and the Touch Portal app. While both were functional, I found they interfered more often than not with other uses that I might have for those devices at the time.

For example when on the go, I have my music cached on my phone and play it back from there rather than from my Mac, and often use my iPad is in use as a second screen. As a result, I had simply been keeping my eye out for an alternative solution - ideally something like a more portable version of a Stream Deck.

What is a ‘Quick Keys Remote’?

The Quick Keys Remote is a box around the size of a mobile phone with a set of buttons, a text-only OLED display, and a dial.

It connects to a Mac either via a cable, or wirelessly via a radio dongle (not Bluetooth), and is managed by a piece of software via Xencelabs. The hardware is nicely designed and pretty good quality, and I was very happy indeed to note that it came with a small padded case with firm sides to protect it when taken on the go. I wish the same could be said of the software.

The Quick Keys Remote can be configured, using the accompanying software, to switch configuration for the in focus application. There is then a mode button on the Quick Keys Remote (and in the middle of the dial - which feels like a waste of a button) that can be used to switch between up to five sets of key/dial configurations. Effectively you can have multiple modes within each application. This allows you to have 40 key and 8 dial movements configured per application.

The Problem with Quick Keys Remote for Automation

Whereas the Stream Deck software includes many options to allow you to do things like run scripts and open files or URLs, and trigger multiple key presses, the Quick Keys Remote does not offer anywhere near the same scope of options. It was originally developed as a tool for creatives to allow them to do things such as change art tools, brush sizes, etc. It was also a little frustrating that I could not find any guide to the software either.

The default options the keys and dial come with look like this, with the keys set as common key strokes and combinations.

For a creative working with minimal keyboard access, having this focused keyboard replacement I am sure is very useful, but unfortunately it really didn’t match my use case. I try and avoid triggering automations by keyboard shortcuts from launchers as much as I can because this often involves creating new keyboard shortcuts, and there is always the risk of keyboard shortcut conflicts when I create new ones.

I would much rather trigger automations via some sort of direct call (script, URL, etc.) utilising a name or unique ID, or if that isn’t available, then a unique menu path. I simply find that these approaches generate less clutter and are more reliable as keyboard shortcuts, or at the very least, minimise conflicts of keyboard shortcuts. Unfortunately, the Quick Keys Remote doesn’t offer any obvious solution to this out of the box.

There are a wide range of triggers, but as you look through the list, you’ll see that most of them are based around clicks and key presses.

Menu Sub Menu Description
Keystroke… - Type up to 24 characters (including special characters), and up to one newline.
Modifier… - Send a keyboard modifier or a mouse click as a modifier.
Tablet/Display Precision Mode… Control for Xencelabs drawing tablet.
Tablet/Display Switch Display Control for Xencelabs drawing tablet.
Tablet/Display Pressure Hold Control for Xencelabs drawing tablet.
Tablet/Display Launch Settings Control for Xencelabs drawing tablet.
Tablet/Display Adjust Pressure Control for Xencelabs drawing tablet.
Navigation Back Equivalent to key press/mouse click.
Navigation Forward Equivalent to key press/mouse click.
Navigation Scroll Up Equivalent to key press/mouse click.
Navigation Scroll Down Equivalent to key press/mouse click.
Navigation Zoom In Equivalent to key press/mouse click.
Navigation Zoom Out Equivalent to key press/mouse click.
Navigation Switch Application Equivalent to key press/mouse click.
Navigation Show Desktop Equivalent to key press/mouse click.
Navigation Launch Pad Equivalent to key press/mouse click.
Navigation Tumble Equivalent to key press/mouse click.
Application Open/Run… Open a specified file in the default app, or run the specified application.
Application Siri Activate Siri.
Application Finder Open Finder.
Mouse Clicks Left Click Triggers a left mouse click.
Mouse Clicks Right Click Triggers a right mouse click.
Mouse Clicks Middle Click Triggers a middle mouse click.
Mouse Clicks Double Click Triggers a double left mouse click.
Mouse Clicks Click Lock Triggers a sustained click (on Windows).
Eraser - Enable eraser for drawing tablet input.
Disable - Disables the key and displays the word “Disabled” for the key on the remote.

The URL Solution

Many automations can be run via a URL, particularly if you have access to tools like Keyboard Maestro, Alfred, and Better Touch Tool. But there are no options to open URLs in the Xencelabs software. Fortunately, it is actually relatively easy to work around this.

The trick is to create a set of URL files. Each file is actually a plain text format file meaning that you can edit it in any plain text editing application on your Mac. The first line defines the file as a file that will open a URL. The second line defines the URL to open, and the third line specifies an icon for the file. The file is saved with a .url file extension.

[InternetShortcut]
URL=https://thoughtasylum.com
IconIndex=0

The only thing you really need to do is to copy the three lines each time and enter the URL you want to use. You could even set up an automation to make it even quicker and easier to generate such files.

Since the majority of my automations are based in Keyboard Maestro, using URL files for triggers was the ideal choice for me. To facilitate it, I created a simple folder structure and placed my URL files within it. I created a folder for each application I have set up so far to work with Quick Keys Remote, and a sub-folder within it for each set of keys.

I name each file the same name that I want to give to the button in the Xencelabs software.

Once the file ie created, go into the Xencelabs software, and select the option to Open/Run… for the button it is to be assigned to.

Next navigate to the file you want to use and switch from the default of selecting *.app to *.*. This will allow you to select the URL file.

Once selected, the button options will then populate.

For the sake of completeness, this URL file is set to execute a Keyboard Maestro macro via its trigger URL. Note that the URL does not have to be HTTP or HTTPS. Other schema definitions are supported.

[InternetShortcut]
URL=kmtrigger://macro=0C6D82E0-9B46-40DD-BF08-3853BC28C38B
IconIndex=0

A Quick Tip

You may have noticed in one of the screenshots above that I have a file called -.url in the ‘Quick Keys’ folder. This is a special URL file I created as an alternative to the Disable option for a key. Having a whole word displayed clutters the Quick Key Remote’s OLED display for me, so I created a generic URL file that does nothing.

[InternetShortcut]
URL=null://
IconIndex=0

This gives my remote a much cleaner look for “inactive” keys. Everything is still set up with Open/Run….

But by having significantly less text the overall result is that it helps to focus you on only the buttons that have actions.

A Bespoke Solution

It may be that you don’t have an app to trigger an automation via a URL. For those situations I have created a script helper application for macOS that may also be useful in other scenarios. Even if you do not use a Quick Keys Remote, or if you are happy using URL files as automation triggers, you might be interested in taking a look at this option too.

This helper application, called Script Runner, is used to run shell scripts without opening a terminal window. The application associates itself with the file types shx (shell executable) and rsh (run-shell). Opening a file of these types will cause Script Runner to execute the script in the background.

Shell scripts can have generally have any file extension (or none at all), so you can still execute shx and rsh files at the terminal just like any other shell script. But, if you want to make a script background executable when setting the file to open, then this is an option for you.

Just like the URL option above, you set up the script files in the same way in the Xencelabs software. However, rather than requiring an automation application that supports URLs, you can utilise this free app and tap directly into the power of scripting.

 
If you happen to find it really useful, you can donate a coffee ☕️.

Script Runner also makes a great option if you need to distribute scripted automations to people and you don’t want them to go into the terminal to run them, or if you just want the convenience yourself.

Conclusion

That’s an express overview of my automation set up of the Xencelabs Quick Keys Remote. The remote itself is exactly what I was hoping for in terms of its portability; the form factor and protective case make it perfect for dropping in a laptop go-bag. The software less-so as it doesn’t lend itself to use for automation.

The Quick Keys Remote is not going to replace my Elgato Stream Deck, which remains my hardware launcher of choice right now. Instead it is going to substitute in for the Stream Deck when I am travelling (which I am doing quite a bit of at the moment). I am slowly trying to wean myself away from the Touch Bar, which Better Touch Tool has previously made an invaluable tool for me, and this device is enabling a relatively smooth process.

If you have, or get a Quick Keys Remote, hopefully the details I have provided in this post will help you get more from its potential for automation. As noted,the software could benefit from improvement to make for easier triggering of broader automation, but until that happens, or until Elgato comes out with some travel friendly Stream Deck hardware, I think the options above should enable triggering any automation you might need to assign to the remote.

Author: Stephen Millard
Tags: | mac |

Buy me a coffeeBuy me a coffee



Related posts that you may also like to read