Bluetooth keypad for UGS


(Julien Heyman) #1

Bought a 20$ bluetooth keypad, printed some custom labels:

I’d like to use it to generate shortcuts for UGS. I want to remap each key to e.g. Ctrl+Alt+, so that the key strokes from this keypad cannot do anything else that triggering the associated UGS shortcut.

To achieve this, it seems like it is required to have some SW-in-the-middle solution that intercepts the keystrokes from THIS specific keyboard, and remaps them dynamically.

I’ve tried HIDmacros, it almost works but some keys are causing issues. I am now on to installing Interception and using that.

I wonder how you guys use your keypads with UGS and whether you have a simpler solution that does not require any SW trick ?


(Daniel Story) #2

This on Mac or Windows?, I use USB Overdrive (macOS) for some custom shortcuts/key binding overrides.


(Julien Heyman) #3

I should have mentioned it, I am using Windows, so I am looking for something that does the same but on Windows. Interception (for Windows) seems to work similarly, i.e. it’s actually a driver that catches all keystrokes from any keyboard before the OS does anything with it. I’m fairly confident I’ll make it work, but as this is a bit convoluted to install/use, I wondered how others deal with their keypad and UGS.


(John Champlain) #4

This programmable keypad may be a better keypad solution:
https://tinyurl.com/y7k9nek4
I have one, but have yet to work with it.


(Julien Heyman) #5

Yep, a programmable keypad would be on my list of next steps if I failed to make this work correctly, but I’m sure not everyone got a programmable one, and still manage to use it in their work routine.


(Julien Heyman) #6

I finally had time to set this up, and it turned out to be WAY more convoluted than I anticipated, so I’ll leave some info here in case anyone needs it someday.

  • My requirement was to be able to map the keys from THIS keypad only, i.e. that any keystroke from the main keyboard is managed separately.
  • I tried HIDMacros, but it did not work out for me.
  • I then moved to using “Interception”, which is basically a windows driver that…intercepts all keystrokes from all connected input devices at kernel level, and allows a user-side application to get that information.
  • on top of that, I used “Intercept” (the user-side app), and created a specific config file that remaps each keypad button to an associated “Ctrl+Shift+” combination
  • I then setup UGS to use the various Ctrl+Shift+ combos as shortcuts for the actions seen on the keypad.
  • the instructions to install Interception and use Intercept were taken from here
  • the “bluetooth/calculator” key had a specific issue: Windows has a built-in behavior of launching the calculator app when this key is used, which somehow cannot be overriden by Intercept. So using the information from here I modified the Windows registry key “HKEY_LOCAL_MACHINE/software/microsoft/windows/currentversion/explorer/appkey/18/ShellExecute” so that it executes the Intercept remapping app instead of the calculator. I used the key string " C:\Users\Julien\Desktop\intercept\intercept.exe /apply" to do that, the “/apply” param allows Intercept to just use the predefined config file for remapping keys
  • the “00” key produces two keystrokes, which gave problem of it own, so I gave that one up too.
  • in the end my keypad looks like this:

FINALLY I have this keypad set up with UGS. If there are easier/smarter ways to achieve this, I’d be happy to hear about them, but try as I might I could not find any simpler solution that allows keystrokes to be filtered by their “source” keyboard when multiple keyboards are connected.


(mikep) #7

Just out of curiosity, did you try the “pendant” built into UGS? Click on the “phone” icon to get the link, then use the browser on your phone as a pendant. Doesn’t do everything, but does do a fair number of things.


(Julien Heyman) #8

Hi Mike,

thanks for the suggestion. No, I did not even try it, because I really do not like to have to use my phone to control my CNC (I was never a big fan of mixing touchscreens and safety, but mostly the garage is the one place where I don’t bring it with me, this is my digital detox space :slight_smile: )

Also, I wanted to have an app-independent way to remap any keyboard. So for UGS there are probably other options (like the pendant functionality), but this method should pay off when I decide to switch to a different UI, and I can just remap the keys freely to any obscure combo of keystrokes.