MPG read me This hal. is set up to work with the Mesa 7i76e card. It uses TB5 pins to facilitate it's functions. This mpg_#.hal example is designed for use were a spindle encoder is already utilized thus necessitating mode 2 selection. This hal. is set up to use jog-vel-mode 1 however mode 0 can be used instead. to do so just remove the # from the heading you wish to use and put it in front of the one you don't. It should look like this when completed. #setp jog-vel-mode 1 This hal. is set up to use the axis only and will not move joints which means the machine requires being Homed before the axis can be jogged with the MPG. The Feed and Spindle overrides aren't affected by the machine being homed. This hal. uses mux16 for increment selection because it's usually used when the main hal is set up and I am still very new to Linuxcnc. mux16 is straight forward and can be customized to one's own needs. with that in mind I set- setp jog.inc.use-graycode false. This hal. is also setup so that- setp jogincr.in00 0.000000 which won't allow the jog-wheel to move any of the axis if the jog-wheel is rotated. With that in mind- setp jog.inc.supress-no-input false. The MPG jog-wheel I am using is an MPG5 60MM encoder sold by cnc4pc. It operates on 5 volt and is quadrature based. It's also a 100 pulse per rotation encoder. Other jog-wheels could also work however I have not tested them with this hal. An important note where as the Jog-wheel uses 5 volts the switches operate on 24 volts That said most MPG pendants found on cnc4pc, Ebay, Amazon, ECT "should" work as long as the jog-wheel is supplied 5 volts and the switches are able to operate on a separate 24 volt feed. Most MPG's fit this requirement. That said check their wiring schematic to be sure. If the MPG does not have a 5 volt power wire going to the encoder and a separate power wire going to the switches their is a possibility to try, though I haven't done it myself. Use at your own risk. One possibility is to send 5 volts to the encoder and the switches. Then use opto-isolators to utilize the 5 volts from the MPG switches to command the opto-isolators to switch the 24 volts back to the TB5 pins. Again I haven't needed to do this so I haven't tested this. Use at your own risk. The rotary selector switches I use are- 1@ C&K A10405RNZQ 4 position rotary switch 1@ C&K A12505RNZQ 8 position rotary switch both switches can be found on Digikey, Mouser, ECT the switches are a single pole non-shorting type I use the 4 position switch as follows Pos. 1 0.0001 Pos. 2 0.0010 pos. 3 0.0100 pos. 4 open Obviously this won't take full advantage of mux16 . That said I personally haven't needed to. If someone wishes to take full advantage of mux16 either a 5 position switch or higher will be needed and additional wiring with inline diodes to prevent voltage back feed is also required. Use at your own risk. I use the 8 position switch as follows Pos. 1 Spindle Override Pos. 2 Feed Override Pos. 3 Off Pos. 4 X axis select Pos. 5 Y axis select Pos. 6 Z axis select Pos. 7 A axis select Pos. 8 B or C axis select Obviously position 8 can be used for other options besides a 5th Axis but may require customization of the MPG hal. Some have used a TB5 output pin to power an led to indicate that the MPG is active. This Hal. Doesn't contain one . If the user wishes to utilize one they will have to add it themselves. That said if one were so inclined an MPG enable/power switch could be used to both power the led and power the switch functions as well. This basically accomplishes the same thing and saves using an output pin for something more essential. However it also means that just because the switch and the led is ON doesn't necessarily mean moving the jog wheel will actuate the selected axis. One scenario would be before the machine has been homed.