For completeness, I will add my axis selct code here. Normally you would use another mux4 component but in my case I have a 6 axis selection knob on my pendant so I've used a mux8 paired with a select8. This lets me add another 3 controls. eg. I could use the Axis 4 selection setting to control reverse run to step back and forth in the g code. (maybe....).
Also note you need to convert the data type to keep select8 happy.
Code:
loadrt mux8 count=1
loadrt select8 count=1
loadrt conv_float_s32 count=1
addf mux8.0 servo-thread
addf select8.0 servo-thread
addf conv-float-s32.0 servo-thread
#Axis Select (0=off, 1=x, 2=z, 3=y, na, 5=6, 6=4, 7=5)
setp mux8.0.in0 0
setp mux8.0.in1 1
setp mux8.0.in2 2
setp mux8.0.in3 3
setp mux8.0.in4 4
setp mux8.0.in5 5
setp mux8.0.in6 6
setp mux8.0.in7 7
net mux8-sel0 <= hm2_7i76e.0.7i76.0.0.input-23
net mux8-sel1 <= hm2_7i76e.0.7i76.0.0.input-24
net mux8-sel2 <= hm2_7i76e.0.7i76.0.0.input-25
net mux8-sel0 => mux8.0.sel0
net mux8-sel1 => mux8.0.sel1
net mux8-sel2 => mux8.0.sel2
net mux-float conv-float-s32.0.in <= mux8.0.out
net mux-s32 <= conv-float-s32.0.out
net mux-s32 => select8.0.sel
net axis-select-x <= select8.0.out1
net axis-select-y <= select8.0.out3
net axis-select-z <= select8.0.out2
net axis-select-4 <= select8.0.out6
net axis-select-5 <= select8.0.out7
net axis-select-6 <= select8.0.out5
net axis-select-x => axis.x.jog-enable
net axis-select-y => axis.y.jog-enable
net axis-select-z => axis.z.jog-enable
# Encoder counts
net jog-counter <= hm2_7i76e.0.7i76.0.0.enc0.count
net jog-counter => axis.x.jog-counts
net jog-counter => axis.y.jog-counts
net jog-counter => axis.z.jog-counts
Hope I've copied accross everything you need....