Summary: qjoypad is a utility that takes joypad button and joystick movements and turns them into keyboard strokes. These keyboard commands can be used to control linuxCNC. This tutorial shows how to install and configure qjoypad for linuxCNC.
qjoystick can be installed either by building the source code, or by downloading a binary file. The binary can be downloaded [here] however qjoypad has several dependencies that must be installed as well, so adding a repository and using apt-get is recommended.
The final command installs qjoystick and the joystick kernel module, a required dependency which does not get installed by default.
Now you have qjoypad installed, start it either by typing qjoypad or by running it from the applications menu. Now plug in your joypad. Right click on the joypad icon in the system tray, a menu will appear. From that menu click update joystick devices. NOTE: your computer might need to be restarted before this will work. Now left click on the system tray icon. It should open a window like this:
Click on the quick set button. The menus should guide you through configuration.
When you are done save by clicking the update button and typing in a name.
It is recommended that you go back and change the threshold values for the joysticks (axis) on the controller so they aren't as sensitive.
note that qjoypad will not use multiple key shortcuts (uppercase shortcuts included) to get around this a button must be set to SHIFT, another to CTL, ETC
This tutorial is in large part based off of this video which provides most of the information on configuring qjoypad. [LinuxCNC with USB controller]