halcmd show all  | grep orient
    42  RT    orient                                                ready
    54  bit   OUT         FALSE  debounce_spindle.out ==> spindle-is-oriented-and0
    57  bit   IN          FALSE  edge.0.in <== spindle-is-oriented-edge
    57  bit   OUT         FALSE  edge.0.out ==> spindle-is-oriented
    51  float IN            382  near-spindle.in1 <== orient-command
    48  bit   IN           TRUE  orient-mux-or.in0 <== orient-enable
    48  bit   IN          FALSE  orient-mux-or.in1 <== spindle-locked
    48  bit   OUT          TRUE  orient-mux-or.out ==> orient-mux-sel
    48  s32   OUT           537  orient-mux-or.time
    45  float IN              0  orient-mux.in0 <== spindle-vel-output
    45  float IN          -1000  orient-mux.in1 <== spindle-pos-output
    45  float OUT         -1000  orient-mux.out ==> spindle-output
    45  bit   IN           TRUE  orient-mux.sel <== orient-mux-sel
    45  s32   OUT           130  orient-mux.time
    39  float IN              0  orient-pid.Dgain
    39  float IN              0  orient-pid.FF0
    39  float IN           6000  orient-pid.FF1
    39  float IN              0  orient-pid.FF2
    39  float IN              0  orient-pid.FF3
    39  float IN              0  orient-pid.Igain
    39  float IN           6000  orient-pid.Pgain
    39  float IN              0  orient-pid.bias
    39  float IN            382  orient-pid.command <== orient-command
    39  float IN              0  orient-pid.command-deriv
    39  float IN           0.01  orient-pid.deadband
    39  s32   OUT          1222  orient-pid.do-pid-calcs.time
    39  bit   IN           TRUE  orient-pid.enable <== orient-mux-sel
    39  float OUT     -458.9487  orient-pid.error
    39  bit   IN           TRUE  orient-pid.error-previous-target
    39  float IN       840.9487  orient-pid.feedback <== spindle-revs
    39  float IN       20.99609  orient-pid.feedback-deriv
    39  bit   IN          FALSE  orient-pid.index-enable <== spindle-index-enable
    39  float IN              0  orient-pid.maxcmdD
    39  float IN              0  orient-pid.maxcmdDD
    39  float IN              0  orient-pid.maxcmdDDD
    39  float IN              0  orient-pid.maxerror
    39  float IN              0  orient-pid.maxerrorD
    39  float IN              0  orient-pid.maxerrorI
    39  float IN           1000  orient-pid.maxoutput
    39  float OUT         -1000  orient-pid.output ==> spindle-pos-output
    39  bit   OUT          TRUE  orient-pid.saturated
    39  s32   OUT         10705  orient-pid.saturated-count
    39  float OUT         21.41  orient-pid.saturated-s
    39  u32   I/O    0x00000032  orient-pid.tune-cycles
    39  float I/O           0.5  orient-pid.tune-effort
    39  bit   IN          FALSE  orient-pid.tune-mode
    39  bit   I/O         FALSE  orient-pid.tune-start
    39  u32   I/O    0x00000000  orient-pid.tune-type
    42  float IN              0  orient.angle <== orient-angle
    42  float OUT           382  orient.command ==> orient-command
    42  bit   IN           TRUE  orient.enable <== orient-enable
    42  bit   OUT         FALSE  orient.is-oriented
    42  s32   IN              0  orient.mode <== orient-mode
    42  float OUT      165221.5  orient.poserr
    42  float IN       840.9487  orient.position <== spindle-revs
    42  s32   OUT           685  orient.time
    42  float IN            0.5  orient.tolerance
    48  bit   IN           TRUE  spindle-enable-or.in1 <== orient-enable
    60  bit   IN          FALSE  spindle-is-oriented-and.in0 <== spindle-is-oriented-and0
    60  bit   IN           TRUE  spindle-is-oriented-and.in1 <== orient-enable
    60  bit   OUT         FALSE  spindle-is-oriented-and.out ==> spindle-is-oriented-edge
    60  s32   OUT           130  spindle-is-oriented-and.time
    29  bit   IN          FALSE  spindle.0.is-oriented <== spindle-is-oriented
    29  bit   OUT          TRUE  spindle.0.orient ==> orient-enable
    29  float OUT             0  spindle.0.orient-angle ==> orient-angle
    29  s32   IN              0  spindle.0.orient-fault <== spindle-orient-fault
    29  s32   OUT             0  spindle.0.orient-mode ==> orient-mode
float             0  orient-angle
                         ==> orient.angle
                         <== spindle.0.orient-angle
float           382  orient-command
                         ==> orient-pid.command
                         <== orient.command
bit            TRUE  orient-enable
                         ==> orient-mux-or.in0
                         ==> orient.enable
                         ==> spindle-is-oriented-and.in1
                         <== spindle.0.orient
s32               0  orient-mode
                         ==> orient.mode
                         <== spindle.0.orient-mode
bit            TRUE  orient-mux-sel
                         <== orient-mux-or.out
                         ==> orient-mux.sel
                         ==> orient-pid.enable
                         ==> orient-pid.index-enable
bit           FALSE  spindle-is-oriented
                         ==> spindle.0.is-oriented
bit           FALSE  spindle-is-oriented-and0
                         ==> spindle-is-oriented-and.in0
bit           FALSE  spindle-is-oriented-edge
                         <== spindle-is-oriented-and.out
                         ==> orient-mux-or.in1
s32               0  spindle-orient-fault
                         ==> spindle.0.orient-fault
                         <== orient-mux.out
                         ==> orient-mux.in1
                         <== orient-pid.output
                         ==> orient-pid.feedback
                         ==> orient.position
                         ==> orient-mux.in0
    48  s32   RW           4722  orient-mux-or.tmax
    48  bit   RO          FALSE  orient-mux-or.tmax-increased
    45  s32   RW           3352  orient-mux.tmax
    45  bit   RO          FALSE  orient-mux.tmax-increased
    39  s32   RW           5481  orient-pid.do-pid-calcs.tmax
    39  bit   RO          FALSE  orient-pid.do-pid-calcs.tmax-increased
    42  s32   RW           4833  orient.tmax
    42  bit   RO          FALSE  orient.tmax-increased
    60  s32   RW           3574  spindle-is-oriented-and.tmax
    60  bit   RO          FALSE  spindle-is-oriented-and.tmax-increased
 00042  7f8c610fe4  7f8cb46310  YES      1   orient
 00045  7f8c5e0e64  7f8cb46370  YES      1   orient-mux
 00048  7f8c5b0db4  7f8cb463f0  NO       1   orient-mux-or
 00039  7f8c640dc8  7f8cb46020  YES      1   orient-pid.do-pid-calcs
 00060  7f8c4f0db4  7f8cb46550  NO       1   spindle-is-oriented-and
                  9 orient-pid.do-pid-calcs
                 11 orient
                 12 orient-mux
                 13 orient-mux-or
                 18 spindle-is-oriented-and