Include your customized HAL commands here #7i92 mesa # change number of encoders here loadrt encoder num_chan=4 addf encoder.capture-position servo-thread addf encoder.update-counters servo-thread # MPG stuff here #### load ilowpass for mpg smoothing ### loadrt ilowpass names=ilowpass.mpgX,ilowpass.mpgY,ilowpass.mpgZ addf ilowpass.mpgX servo-thread addf ilowpass.mpgY servo-thread addf ilowpass.mpgZ servo-thread setp ilowpass.mpgX.scale 1 setp ilowpass.mpgX.gain 0.1 setp ilowpass.mpgY.scale 1 setp ilowpass.mpgY.gain 0.1 setp ilowpass.mpgZ.scale 1 setp ilowpass.mpgZ.gain 0.1 # for velocity mode (when you stop spinning the dial the axis stops) # must be set for each axis #setp joint.0.jog-vel-mode 1 setp axis.x.jog-vel-mode 1 #setp joint.1.jog-vel-mode 1 setp axis.y.jog-vel-mode 1 #setp joint.2.jog-vel-mode 1 setp axis.z.jog-vel-mode 1 # "times 4 mode" one count per full quadrature cycle, instead of the usual one count per edge. # mpg jog wheels often have a full quadrature cycle per "click". 0 for off and 1 for on. setp encoder.0.x4-mode 0 setp encoder.1.x4-mode 0 setp encoder.2.x4-mode 0 #set axis to the required increment ( 0.01) net jog-inc-x joint.0.jog-scale axis.x.jog-scale sets jog-inc-x 0.001 net jog-inc-y joint.1.jog-scale axis.y.jog-scale sets jog-inc-y 0.01 net jog-inc-z joint.2.jog-scale axis.z.jog-scale sets jog-inc-z 1.0 #set inputs to 7i92 #also note these are on the second (P1) #encoder X net mpg-xa encoder.0.phase-A <= hm2_7i92.0.gpio.018.in net mpg-xb encoder.0.phase-B <= hm2_7i92.0.gpio.020.in #encoder Y net mpg-ya encoder.1.phase-A <= hm2_7i92.0.gpio.022.in net mpg-yb encoder.1.phase-B <= hm2_7i92.0.gpio.024.in #encoder Z net mpg-za encoder.2.phase-A <= hm2_7i92.0.gpio.025.in net mpg-zb encoder.2.phase-B <= hm2_7i92.0.gpio.026.in # send mpg-encoder counts to required axis # x encoder net pend-counts-x encoder.0.counts net pend-counts-x ilowpass.mpgX.in net pend-x ilowpass.mpgX.out net pend-x axis.x.jog-counts setp axis.x.jog-enable true # Y encoder net pend-counts-y encoder.1.counts net pend-counts-y ilowpass.mpgY.in net pend-y ilowpass.mpgY.out net pend-y axis.y.jog-counts setp axis.y.jog-enable true # Z encoder net pend-counts-z encoder.2.counts net pend-counts-z ilowpass.mpgZ.in net pend-z ilowpass.mpgZ.out net pend-z axis.z.jog-counts setp axis.z.jog-enable true