Commanding HQ Player... The fun way

Ever since I have got my Xencelabs Quick Keys (tip o’ the hat to @DrCWO), I have been looking for new ways to mess with it. Today I spent an hour to see what it brings to the table with regards to HQ Player.

A thousand words in a single picture:

First I mapped the dial to system volume commands and capture these in BetterTouchTool to execute two small shell scripts using hqp5-control (command line tool included with HQ Player), so HQP controls the volume:

/Applications/hqp5-control/Contents/MacOS/hqp5-control localhost --volume-down (and --volume-up)

Then I mapped the buttons to a few other commands, allowing to change filters and shapers with a single button press. Rather nice for switching and comparing favourites on the fly.

/Applications/hqp5-control/Contents/MacOS/hqp5-control localhost --set-filter 20

/Applications/hqp5-control/Contents/MacOS/hqp5-control localhost --set-shaping 7

Finally, I made a key mapping to set the OS output to BlackHole with 100% volume, load Spotify with 100% volume as well and pick and start the correct transport in HQ Player:

/Applications/hqp5-control/Contents/MacOS/hqp5-control localhost --set-transport 5 ‘audio:BlackHole 2ch/44100/2’

/Applications/hqp5-control/Contents/MacOS/hqp5-control localhost --play

More fun to come – the Quick Keys can store up to 4 dial commands and 40 different key mappings. Controlling Roon with Quick Keys via RoonCommand? Viva the long weekend! :slight_smile:


Thanks to @RBM 's guidance I got my Mac Mini keyboard buttons controlling HQPlayer Embedded machine volume.

So I now have BetterTouchTool and will be testing 3 remotes:

  1. Microsoft Surface Dial (60 days free returns)

  2. Xencelabs Quick Keys (30 days free returns)

  3. This cheap bluetooth from AliExpress which takes AA batteries (I don’t like getting cheap stuff with built-in rechargeable battery) - no returns but it is $15 :smile: and very small. I will program volume up, down and mute. No dongle required, just direct bluetooth.


This is very cool, can you please provide link for instructions? I am on windows 11


Edit: silly me the original post was right there!!


I can also post here, that this has been tested to work (ordered from Amazon):

And on Cinnamon desktop (on Linux Mint, which is variant of Ubuntu 22.04), one can easily bind these keys to hqp5-control commands. Instead of just letting those go to HQPlayer Client directly.

This is a regular RF HID device, so no Bluetooth to configure, just plug in the USB dongle and it works.

Comes with QWERTY keyboard on the other side, and air mouse. If you like to use for example HQPlayer Client in home theather through HDMI projector.


What program do you use to bind these keys to hqp5-control commands?

On macOS BetterTouchTool that @RBM recommended works great.

What is recommended for Linux ?

Cinnamon desktop’s keyboard settings.

1 Like

Nice, so it is built-in to Ubuntu , I’ll give it a try with my Apple Keyboard, see if the media keys work

As a test before my remotes arrive

To Linux Mint to be exact. Mint is a light-weight distro built on top of Ubuntu. Cinnamon is their pretty nice desktop environment.

Can confirm it works very easy in Ubuntu Desktop. Probably exactly same feature as Mint. No 3rd party app to install

Controlling Mac Mini HQP Desktop here from Ubuntu

Surface Dial will be trickier to get working


Can something similar be done in windows 11?

Don’t have Windows at home. Give it a try and let us know !

Just google binding keyboard keys to shell script and see where it leads

Once you get there, it is literally 1 line command for each command, as you can see I shared example above

Tbh Linux is perfect for this kind of thing, especially since it is baked in, no 3rd party app

Run Linux Mint on a low powered laptop for example


It has been at least 25 years since I have touched Windows, but it appears that AutoHotKey is the ticket.


If you want to have both NAA and this on a RPi4, you can of course run Linux desktop and a networkaudiod package there.

1 Like

Thanks again to @RBM 's tips, I have Microsoft Surface Dial controlling HQPlayer

Can control both HQP Desktop on same machine and my HQP Embedded on different machine

I have the single press button to reduce volume by -30dB but you can make it do whatever you want

Like Darko and others use for Roon with rooDial:


So the cheap AliExpress remote arrived and it is wonderful.

Quite small and I’ve setup both up and down , left and right, + and - for volume up/down

And a couple mute (or -40dB volume cuts) options

It has bluetooth built-in, so no USB dongles to use.

Super easy to pair with Ubuntu - and no 3rd party app to use/install.

2 x AAA batteries and has automatic battery saver mode after 10 minutes (Surface Dial is 5 minutes). You tap any button to wake it.

Very cheap and pretty small option.

The Surface Dial is sexier but the keypad is fit for purpose. If you drop it, it is lighter and less chance to break. And if it does, $15 :grinning:

Surface Dial you can use in the dark without much lighting. The keypad needs some lighting to see what you are pressing. Would be great to have compact and backlit but would take a battery hit.

On macOS, even though this is a keyboard, still best to use BetterTouchTools.

Very happy I took @RBM’s recommendation to try this app - I purchased lifetime license

1 Like

Hi @RBM,

I have a number of shell scripts set up on the Mac and working on the QuickKeys buttons but am having no luck getting the dial to call the volume scripts.
Could you please outline how you’ve configured this to work? No doubt I’m missing something obvious.



Sure – this is how I do it:

In the Quick Keys software, map the volume commands to the dial via Keystrokes (special):

Then capture the volume commands/dial movements in BetterTouchTool and map whatever you like to them:

1 Like

Excellent - Thanks @RBM, I’ve got it working now. I’d missed the ‘Add Special’ function.



1 Like

I posted a short draft video here showing the current state of my implementation of rooMax integrating Quick Keys into rooExtend :+1:

Preview on rooMax: Use XenceLabs Quick keys for Roon - Audio Gear Talk / rooExtend - Roon Labs Community

Best DrCWO