Mr. Wallin asked for some additions to this wiki for a jog wheel. Well, I finally got my working, thanks to a lot of help, including his website.
Here's the .hal file: [jog.hal]
As one sees, this hooks to ClassicLadder (cl), which takes input from a multi-position rotary axis switch and a multi-position rotary increment switch. Both rotaries get power through a simple toggle switch, so the jog wheel can be on or off. I like cl. It works well. Editing is a bit clumsy, but much easier now that a little work has been done on it. Thanks.
And here's the pyvcp file: [on-led.xml]
As you can see, it's not pretty, but it does work. To keep from overshooting the end stops when spinning the wheel, the jog is put into velocity mode. This works good at .0001 and .001 increment, but at .1 increment something is not keeping up the increments are not .1 exactly. At .01 increment a slow wheel motion produces accurate increments, but a fast spin does not. I am not sure how to reduce the jog velocity (or if it is even possible) based on the increment. If you know, pass it on please. UPDATE: velocity mode will NEVER guarantee accurate increments - that is what position mode is for. Velocity mode guarantees that the machine will stop when the wheel stops, even if it hasn't moved full number of increments that the wheel moved. Position mode guarantees that the machine will move as far as the wheel did, even if it takes a longer time. Pick your poison.