A HAL file to support the ShuttleXpress USB Dongle was obtained from the following source:
github.com/araisrobo/linuxcnc/blob/maste...on/shuttlexpress.hal
While this code worked just fine, we found it inconvenient to have to hold down and x, y, or z button while jogging a particular axis. Instead, we preferred that the x,y, or z button need only be tapped, after which the axis could be jogged. (This functionality is consistent with that used by Tormach Inc. on its Pathpilot interface.)
The following code uses the D Flip Flop HAL command to make the x, y, or z key press persistent. It is based on a modification of the code obtained from the link above. The new code is found in the attachment. Note that we also modified the parameters for the jog speed to suit our machine. The former values are retained as comments.