Loaded HAL Components:
ID      Type  Name                                            PID   State
    48  User  halcmd1185                                       1185 ready
    44  User  halcmd1140                                       1140 ready
    38  User  axisui                                           1115 ready
    36  User  inihal                                           1111 ready
    23  RT    hm2_eth                                               ready
    20  RT    hostmot2                                              ready
    17  RT    pid                                                   ready
    14  RT    __servo-thread                                        ready
    13  RT    motmod                                                ready
    10  RT    trivkins                                              ready
     4  User  iocontrol                                        1063 ready

Component Pins:
Owner   Type  Dir         Value  Name
    13  float OUT             0  axis.a.eoffset
    13  bit   IN          FALSE  axis.a.eoffset-clear
    13  s32   IN              0  axis.a.eoffset-counts
    13  bit   IN          FALSE  axis.a.eoffset-enable
    13  float OUT             0  axis.a.eoffset-request
    13  float IN              0  axis.a.eoffset-scale
    13  float IN              1  axis.a.jog-accel-fraction
    13  s32   IN              0  axis.a.jog-counts
    13  bit   IN          FALSE  axis.a.jog-enable
    13  float IN              0  axis.a.jog-scale
    13  bit   IN          FALSE  axis.a.jog-vel-mode
    13  bit   OUT         FALSE  axis.a.kb-jog-active
    13  float OUT             0  axis.a.pos-cmd
    13  float OUT             0  axis.a.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.a.teleop-tp-enable
    13  float OUT             0  axis.a.teleop-vel-cmd
    13  float OUT             0  axis.a.teleop-vel-lim
    13  bit   OUT         FALSE  axis.a.wheel-jog-active
    13  float OUT             0  axis.b.eoffset
    13  bit   IN          FALSE  axis.b.eoffset-clear
    13  s32   IN              0  axis.b.eoffset-counts
    13  bit   IN          FALSE  axis.b.eoffset-enable
    13  float OUT             0  axis.b.eoffset-request
    13  float IN              0  axis.b.eoffset-scale
    13  float IN              1  axis.b.jog-accel-fraction
    13  s32   IN              0  axis.b.jog-counts
    13  bit   IN          FALSE  axis.b.jog-enable
    13  float IN              0  axis.b.jog-scale
    13  bit   IN          FALSE  axis.b.jog-vel-mode
    13  bit   OUT         FALSE  axis.b.kb-jog-active
    13  float OUT             0  axis.b.pos-cmd
    13  float OUT             0  axis.b.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.b.teleop-tp-enable
    13  float OUT             0  axis.b.teleop-vel-cmd
    13  float OUT             0  axis.b.teleop-vel-lim
    13  bit   OUT         FALSE  axis.b.wheel-jog-active
    13  float OUT             0  axis.c.eoffset
    13  bit   IN          FALSE  axis.c.eoffset-clear
    13  s32   IN              0  axis.c.eoffset-counts
    13  bit   IN          FALSE  axis.c.eoffset-enable
    13  float OUT             0  axis.c.eoffset-request
    13  float IN              0  axis.c.eoffset-scale
    13  float IN              1  axis.c.jog-accel-fraction
    13  s32   IN              0  axis.c.jog-counts
    13  bit   IN          FALSE  axis.c.jog-enable
    13  float IN              0  axis.c.jog-scale
    13  bit   IN          FALSE  axis.c.jog-vel-mode
    13  bit   OUT         FALSE  axis.c.kb-jog-active
    13  float OUT             0  axis.c.pos-cmd
    13  float OUT             0  axis.c.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.c.teleop-tp-enable
    13  float OUT             0  axis.c.teleop-vel-cmd
    13  float OUT             0  axis.c.teleop-vel-lim
    13  bit   OUT         FALSE  axis.c.wheel-jog-active
    13  float OUT             0  axis.u.eoffset
    13  bit   IN          FALSE  axis.u.eoffset-clear
    13  s32   IN              0  axis.u.eoffset-counts
    13  bit   IN          FALSE  axis.u.eoffset-enable
    13  float OUT             0  axis.u.eoffset-request
    13  float IN              0  axis.u.eoffset-scale
    13  float IN              1  axis.u.jog-accel-fraction
    13  s32   IN              0  axis.u.jog-counts
    13  bit   IN          FALSE  axis.u.jog-enable
    13  float IN              0  axis.u.jog-scale
    13  bit   IN          FALSE  axis.u.jog-vel-mode
    13  bit   OUT         FALSE  axis.u.kb-jog-active
    13  float OUT             0  axis.u.pos-cmd
    13  float OUT             0  axis.u.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.u.teleop-tp-enable
    13  float OUT             0  axis.u.teleop-vel-cmd
    13  float OUT             0  axis.u.teleop-vel-lim
    13  bit   OUT         FALSE  axis.u.wheel-jog-active
    13  float OUT             0  axis.v.eoffset
    13  bit   IN          FALSE  axis.v.eoffset-clear
    13  s32   IN              0  axis.v.eoffset-counts
    13  bit   IN          FALSE  axis.v.eoffset-enable
    13  float OUT             0  axis.v.eoffset-request
    13  float IN              0  axis.v.eoffset-scale
    13  float IN              1  axis.v.jog-accel-fraction
    13  s32   IN              0  axis.v.jog-counts
    13  bit   IN          FALSE  axis.v.jog-enable
    13  float IN              0  axis.v.jog-scale
    13  bit   IN          FALSE  axis.v.jog-vel-mode
    13  bit   OUT         FALSE  axis.v.kb-jog-active
    13  float OUT             0  axis.v.pos-cmd
    13  float OUT             0  axis.v.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.v.teleop-tp-enable
    13  float OUT             0  axis.v.teleop-vel-cmd
    13  float OUT             0  axis.v.teleop-vel-lim
    13  bit   OUT         FALSE  axis.v.wheel-jog-active
    13  float OUT             0  axis.w.eoffset
    13  bit   IN          FALSE  axis.w.eoffset-clear
    13  s32   IN              0  axis.w.eoffset-counts
    13  bit   IN          FALSE  axis.w.eoffset-enable
    13  float OUT             0  axis.w.eoffset-request
    13  float IN              0  axis.w.eoffset-scale
    13  float IN              1  axis.w.jog-accel-fraction
    13  s32   IN              0  axis.w.jog-counts
    13  bit   IN          FALSE  axis.w.jog-enable
    13  float IN              0  axis.w.jog-scale
    13  bit   IN          FALSE  axis.w.jog-vel-mode
    13  bit   OUT         FALSE  axis.w.kb-jog-active
    13  float OUT             0  axis.w.pos-cmd
    13  float OUT             0  axis.w.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.w.teleop-tp-enable
    13  float OUT             0  axis.w.teleop-vel-cmd
    13  float OUT             0  axis.w.teleop-vel-lim
    13  bit   OUT         FALSE  axis.w.wheel-jog-active
    13  float OUT             0  axis.x.eoffset
    13  bit   IN          FALSE  axis.x.eoffset-clear
    13  s32   IN              0  axis.x.eoffset-counts
    13  bit   IN          FALSE  axis.x.eoffset-enable
    13  float OUT             0  axis.x.eoffset-request
    13  float IN              0  axis.x.eoffset-scale
    13  float IN              1  axis.x.jog-accel-fraction
    13  s32   IN              0  axis.x.jog-counts
    13  bit   IN          FALSE  axis.x.jog-enable
    13  float IN              0  axis.x.jog-scale
    13  bit   IN          FALSE  axis.x.jog-vel-mode
    13  bit   OUT         FALSE  axis.x.kb-jog-active
    13  float OUT             0  axis.x.pos-cmd
    13  float OUT             0  axis.x.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.x.teleop-tp-enable
    13  float OUT             0  axis.x.teleop-vel-cmd
    13  float OUT             0  axis.x.teleop-vel-lim
    13  bit   OUT         FALSE  axis.x.wheel-jog-active
    13  float OUT             0  axis.y.eoffset
    13  bit   IN          FALSE  axis.y.eoffset-clear
    13  s32   IN              0  axis.y.eoffset-counts
    13  bit   IN          FALSE  axis.y.eoffset-enable
    13  float OUT             0  axis.y.eoffset-request
    13  float IN              0  axis.y.eoffset-scale
    13  float IN              1  axis.y.jog-accel-fraction
    13  s32   IN              0  axis.y.jog-counts
    13  bit   IN          FALSE  axis.y.jog-enable
    13  float IN              0  axis.y.jog-scale
    13  bit   IN          FALSE  axis.y.jog-vel-mode
    13  bit   OUT         FALSE  axis.y.kb-jog-active
    13  float OUT             0  axis.y.pos-cmd
    13  float OUT             0  axis.y.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.y.teleop-tp-enable
    13  float OUT             0  axis.y.teleop-vel-cmd
    13  float OUT             0  axis.y.teleop-vel-lim
    13  bit   OUT         FALSE  axis.y.wheel-jog-active
    13  float OUT             0  axis.z.eoffset
    13  bit   IN          FALSE  axis.z.eoffset-clear
    13  s32   IN              0  axis.z.eoffset-counts
    13  bit   IN          FALSE  axis.z.eoffset-enable
    13  float OUT             0  axis.z.eoffset-request
    13  float IN              0  axis.z.eoffset-scale
    13  float IN              1  axis.z.jog-accel-fraction
    13  s32   IN              0  axis.z.jog-counts
    13  bit   IN          FALSE  axis.z.jog-enable
    13  float IN              0  axis.z.jog-scale
    13  bit   IN          FALSE  axis.z.jog-vel-mode
    13  bit   OUT         FALSE  axis.z.kb-jog-active
    13  float OUT             0  axis.z.pos-cmd
    13  float OUT             0  axis.z.teleop-pos-cmd
    13  bit   OUT         FALSE  axis.z.teleop-tp-enable
    13  float OUT             0  axis.z.teleop-vel-cmd
    13  float OUT             0  axis.z.teleop-vel-lim
    13  bit   OUT         FALSE  axis.z.wheel-jog-active
    38  bit   OUT         FALSE  axisui.jog.a
    38  bit   OUT         FALSE  axisui.jog.b
    38  bit   OUT         FALSE  axisui.jog.c
    38  float OUT             0  axisui.jog.increment
    38  bit   OUT         FALSE  axisui.jog.u
    38  bit   OUT         FALSE  axisui.jog.v
    38  bit   OUT         FALSE  axisui.jog.w
    38  bit   OUT         FALSE  axisui.jog.x
    38  bit   OUT         FALSE  axisui.jog.y
    38  bit   OUT         FALSE  axisui.jog.z
    38  bit   IN          FALSE  axisui.notifications-clear
    38  bit   IN          FALSE  axisui.notifications-clear-error
    38  bit   IN          FALSE  axisui.notifications-clear-info
    38  bit   IN          FALSE  axisui.resume-inhibit
    23  float IN           -100  hm2_7i96.0.dpll.01.timer-us
    23  float IN            100  hm2_7i96.0.dpll.02.timer-us
    23  float IN            100  hm2_7i96.0.dpll.03.timer-us
    23  float IN            100  hm2_7i96.0.dpll.04.timer-us
    23  float IN              1  hm2_7i96.0.dpll.base-freq-khz
    23  u32   OUT    0x0000002A  hm2_7i96.0.dpll.ddsize
    23  float OUT     -1.919329  hm2_7i96.0.dpll.phase-error-us
    23  u32   IN     0x00400000  hm2_7i96.0.dpll.plimit
    23  u32   OUT    0x00000018  hm2_7i96.0.dpll.prescale
    23  u32   IN     0x000007D0  hm2_7i96.0.dpll.time-const
    23  s32   OUT             0  hm2_7i96.0.encoder.00.count
    23  s32   OUT             0  hm2_7i96.0.encoder.00.count-latched
    23  bit   I/O         FALSE  hm2_7i96.0.encoder.00.index-enable
    23  bit   OUT          TRUE  hm2_7i96.0.encoder.00.input-a
    23  bit   OUT          TRUE  hm2_7i96.0.encoder.00.input-b
    23  bit   OUT         FALSE  hm2_7i96.0.encoder.00.input-index
    23  bit   IN          FALSE  hm2_7i96.0.encoder.00.latch-enable
    23  bit   IN          FALSE  hm2_7i96.0.encoder.00.latch-polarity
    23  float OUT             0  hm2_7i96.0.encoder.00.position
    23  float OUT             0  hm2_7i96.0.encoder.00.position-latched
    23  bit   OUT         FALSE  hm2_7i96.0.encoder.00.quad-error
    23  bit   IN          FALSE  hm2_7i96.0.encoder.00.quad-error-enable
    23  s32   OUT             0  hm2_7i96.0.encoder.00.rawcounts
    23  s32   OUT             0  hm2_7i96.0.encoder.00.rawlatch
    23  bit   IN          FALSE  hm2_7i96.0.encoder.00.reset
    23  float OUT             0  hm2_7i96.0.encoder.00.velocity
    23  float OUT             0  hm2_7i96.0.encoder.00.velocity-rpm
    23  u32   IN     0x017D7840  hm2_7i96.0.encoder.sample-frequency
    23  s32   IN             -1  hm2_7i96.0.encoder.timer-number
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.000.in ==> min-limit-home-joint-0
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.000.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.000.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.001.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.001.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.001.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.002.in ==> min-limit-home-joint-1
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.002.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.002.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.003.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.003.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.003.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.004.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.004.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.004.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.005.in ==> min-limit-home-joint-3
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.005.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.005.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.006.in ==> min-limit-home-joint-2
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.006.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.006.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.007.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.007.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.007.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.008.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.008.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.008.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.009.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.009.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.009.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.010.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.010.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.010.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.011.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.011.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.012.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.012.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.013.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.013.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.014.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.014.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.015.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.015.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.016.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.016.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.017.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.017.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.018.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.018.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.019.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.019.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.020.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.020.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.021.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.021.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.022.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.022.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.023.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.023.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.024.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.024.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.025.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.025.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.026.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.026.in_not
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.027.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.027.in_not
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.028.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.028.in_not
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.029.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.029.in_not
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.030.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.030.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.030.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.031.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.031.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.031.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.032.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.032.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.032.out
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.033.in
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.033.in_not
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.034.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.034.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.034.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.035.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.035.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.035.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.036.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.036.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.036.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.037.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.037.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.037.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.038.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.038.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.038.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.039.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.039.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.039.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.040.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.040.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.040.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.041.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.041.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.041.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.042.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.042.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.042.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.043.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.043.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.043.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.044.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.044.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.044.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.045.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.045.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.045.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.046.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.046.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.046.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.047.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.047.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.047.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.048.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.048.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.048.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.049.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.049.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.049.out
    23  bit   OUT          TRUE  hm2_7i96.0.gpio.050.in
    23  bit   OUT         FALSE  hm2_7i96.0.gpio.050.in_not
    23  bit   IN          FALSE  hm2_7i96.0.gpio.050.out
    23  bit   IN          FALSE  hm2_7i96.0.led.CR01
    23  bit   IN          FALSE  hm2_7i96.0.led.CR02
    23  bit   IN          FALSE  hm2_7i96.0.led.CR03
    23  bit   IN          FALSE  hm2_7i96.0.led.CR04
    23  bit   OUT         FALSE  hm2_7i96.0.packet-error
    23  bit   OUT         FALSE  hm2_7i96.0.packet-error-exceeded
    23  s32   OUT             0  hm2_7i96.0.packet-error-level
    23  s32   OUT             0  hm2_7i96.0.read-request.time
    23  s32   OUT       1024350  hm2_7i96.0.read.time
    23  bit   IN          FALSE  hm2_7i96.0.ssr.00.out-00
    23  bit   IN          FALSE  hm2_7i96.0.ssr.00.out-01
    23  bit   IN          FALSE  hm2_7i96.0.ssr.00.out-02
    23  bit   IN          FALSE  hm2_7i96.0.ssr.00.out-03
    23  bit   IN          FALSE  hm2_7i96.0.ssr.00.out-04
    23  bit   IN          FALSE  hm2_7i96.0.ssr.00.out-05
    23  u32   IN     0x000F4240  hm2_7i96.0.ssr.00.rate
    23  bit   IN           TRUE  hm2_7i96.0.stepgen.00.control-type
    23  s32   OUT             0  hm2_7i96.0.stepgen.00.counts
    23  float OUT             0  hm2_7i96.0.stepgen.00.dbg_err_at_match
    23  float OUT             0  hm2_7i96.0.stepgen.00.dbg_ff_vel
    23  float OUT             0  hm2_7i96.0.stepgen.00.dbg_pos_minus_prev_cmd
    23  float OUT             0  hm2_7i96.0.stepgen.00.dbg_s_to_match
    23  s32   OUT             0  hm2_7i96.0.stepgen.00.dbg_step_rate
    23  float OUT             0  hm2_7i96.0.stepgen.00.dbg_vel_error
    23  bit   IN          FALSE  hm2_7i96.0.stepgen.00.enable <== emcmot.0.enable
    23  float IN              0  hm2_7i96.0.stepgen.00.position-cmd
    23  float OUT             0  hm2_7i96.0.stepgen.00.position-fb ==> motor.0.pos-fb
    23  float IN              0  hm2_7i96.0.stepgen.00.velocity-cmd <== motor.0.command
    23  float OUT             0  hm2_7i96.0.stepgen.00.velocity-fb
    23  bit   IN           TRUE  hm2_7i96.0.stepgen.01.control-type
    23  s32   OUT             0  hm2_7i96.0.stepgen.01.counts
    23  float OUT             0  hm2_7i96.0.stepgen.01.dbg_err_at_match
    23  float OUT             0  hm2_7i96.0.stepgen.01.dbg_ff_vel
    23  float OUT             0  hm2_7i96.0.stepgen.01.dbg_pos_minus_prev_cmd
    23  float OUT             0  hm2_7i96.0.stepgen.01.dbg_s_to_match
    23  s32   OUT             0  hm2_7i96.0.stepgen.01.dbg_step_rate
    23  float OUT             0  hm2_7i96.0.stepgen.01.dbg_vel_error
    23  bit   IN          FALSE  hm2_7i96.0.stepgen.01.enable <== emcmot.1.enable
    23  float IN              0  hm2_7i96.0.stepgen.01.position-cmd
    23  float OUT            -0  hm2_7i96.0.stepgen.01.position-fb ==> motor.1.pos-fb
    23  float IN              0  hm2_7i96.0.stepgen.01.velocity-cmd <== motor.1.command
    23  float OUT             0  hm2_7i96.0.stepgen.01.velocity-fb
    23  bit   IN           TRUE  hm2_7i96.0.stepgen.02.control-type
    23  s32   OUT             0  hm2_7i96.0.stepgen.02.counts
    23  float OUT             0  hm2_7i96.0.stepgen.02.dbg_err_at_match
    23  float OUT             0  hm2_7i96.0.stepgen.02.dbg_ff_vel
    23  float OUT             0  hm2_7i96.0.stepgen.02.dbg_pos_minus_prev_cmd
    23  float OUT             0  hm2_7i96.0.stepgen.02.dbg_s_to_match
    23  s32   OUT             0  hm2_7i96.0.stepgen.02.dbg_step_rate
    23  float OUT             0  hm2_7i96.0.stepgen.02.dbg_vel_error
    23  bit   IN          FALSE  hm2_7i96.0.stepgen.02.enable <== emcmot.2.enable
    23  float IN              0  hm2_7i96.0.stepgen.02.position-cmd
    23  float OUT             0  hm2_7i96.0.stepgen.02.position-fb ==> motor.2.pos-fb
    23  float IN              0  hm2_7i96.0.stepgen.02.velocity-cmd <== motor.2.command
    23  float OUT             0  hm2_7i96.0.stepgen.02.velocity-fb
    23  bit   IN           TRUE  hm2_7i96.0.stepgen.03.control-type
    23  s32   OUT             0  hm2_7i96.0.stepgen.03.counts
    23  float OUT             0  hm2_7i96.0.stepgen.03.dbg_err_at_match
    23  float OUT             0  hm2_7i96.0.stepgen.03.dbg_ff_vel
    23  float OUT             0  hm2_7i96.0.stepgen.03.dbg_pos_minus_prev_cmd
    23  float OUT             0  hm2_7i96.0.stepgen.03.dbg_s_to_match
    23  s32   OUT             0  hm2_7i96.0.stepgen.03.dbg_step_rate
    23  float OUT             0  hm2_7i96.0.stepgen.03.dbg_vel_error
    23  bit   IN          FALSE  hm2_7i96.0.stepgen.03.enable <== emcmot.3.enable
    23  float IN              0  hm2_7i96.0.stepgen.03.position-cmd
    23  float OUT             0  hm2_7i96.0.stepgen.03.position-fb ==> motor.3.pos-fb
    23  float IN              0  hm2_7i96.0.stepgen.03.velocity-cmd <== motor.3.command
    23  float OUT             0  hm2_7i96.0.stepgen.03.velocity-fb
    23  bit   IN          FALSE  hm2_7i96.0.stepgen.04.control-type
    23  s32   OUT             0  hm2_7i96.0.stepgen.04.counts
    23  float OUT             0  hm2_7i96.0.stepgen.04.dbg_err_at_match
    23  float OUT             0  hm2_7i96.0.stepgen.04.dbg_ff_vel
    23  float OUT             0  hm2_7i96.0.stepgen.04.dbg_pos_minus_prev_cmd
    23  float OUT             0  hm2_7i96.0.stepgen.04.dbg_s_to_match
    23  s32   OUT             0  hm2_7i96.0.stepgen.04.dbg_step_rate
    23  float OUT             0  hm2_7i96.0.stepgen.04.dbg_vel_error
    23  bit   IN          FALSE  hm2_7i96.0.stepgen.04.enable
    23  float IN              0  hm2_7i96.0.stepgen.04.position-cmd
    23  float OUT             0  hm2_7i96.0.stepgen.04.position-fb
    23  float IN              0  hm2_7i96.0.stepgen.04.velocity-cmd
    23  float OUT             0  hm2_7i96.0.stepgen.04.velocity-fb
    23  s32   IN              1  hm2_7i96.0.stepgen.timer-number
    23  bit   I/O         FALSE  hm2_7i96.0.watchdog.has_bit
    23  s32   OUT         71040  hm2_7i96.0.write.time
    36  float IN              0  ini.0.backlash
    36  float IN              1  ini.0.ferror
    36  float IN              0  ini.0.home
    36  float IN            -30  ini.0.home_offset
    36  s32   IN              1  ini.0.home_sequence
    36  float IN           2000  ini.0.max_acceleration
    36  float IN           1300  ini.0.max_limit
    36  float IN            150  ini.0.max_velocity
    36  float IN           0.25  ini.0.min_ferror
    36  float IN             -1  ini.0.min_limit
    36  float IN              0  ini.1.backlash
    36  float IN              1  ini.1.ferror
    36  float IN              0  ini.1.home
    36  float IN              2  ini.1.home_offset
    36  s32   IN              0  ini.1.home_sequence
    36  float IN           1000  ini.1.max_acceleration
    36  float IN              1  ini.1.max_limit
    36  float IN             75  ini.1.max_velocity
    36  float IN           0.25  ini.1.min_ferror
    36  float IN           -100  ini.1.min_limit
    36  float IN              0  ini.2.backlash
    36  float IN              1  ini.2.ferror
    36  float IN              5  ini.2.home
    36  float IN            -15  ini.2.home_offset
    36  s32   IN             -2  ini.2.home_sequence
    36  float IN           2000  ini.2.max_acceleration
    36  float IN            200  ini.2.max_limit
    36  float IN            150  ini.2.max_velocity
    36  float IN           0.25  ini.2.min_ferror
    36  float IN             -2  ini.2.min_limit
    36  float IN              0  ini.3.backlash
    36  float IN              1  ini.3.ferror
    36  float IN              5  ini.3.home
    36  float IN            -15  ini.3.home_offset
    36  s32   IN             -2  ini.3.home_sequence
    36  float IN           2000  ini.3.max_acceleration
    36  float IN            200  ini.3.max_limit
    36  float IN            150  ini.3.max_velocity
    36  float IN           0.25  ini.3.min_ferror
    36  float IN             -2  ini.3.min_limit
    36  float IN              0  ini.a.max_acceleration
    36  float IN              0  ini.a.max_limit
    36  float IN              0  ini.a.max_velocity
    36  float IN              0  ini.a.min_limit
    36  float IN              0  ini.b.max_acceleration
    36  float IN              0  ini.b.max_limit
    36  float IN              0  ini.b.max_velocity
    36  float IN              0  ini.b.min_limit
    36  float IN              0  ini.c.max_acceleration
    36  float IN              0  ini.c.max_limit
    36  float IN              0  ini.c.max_velocity
    36  float IN              0  ini.c.min_limit
    36  bit   IN           TRUE  ini.traj_arc_blend_enable
    36  bit   IN          FALSE  ini.traj_arc_blend_fallback_enable
    36  float IN              4  ini.traj_arc_blend_gap_cycles
    36  s32   IN             50  ini.traj_arc_blend_optimization_depth
    36  float IN            100  ini.traj_arc_blend_ramp_freq
    36  float IN            0.1  ini.traj_arc_blend_tangent_kink_ratio
    36  float IN          1e+99  ini.traj_default_acceleration
    36  float IN              1  ini.traj_default_velocity
    36  float IN          1e+99  ini.traj_max_acceleration
    36  float IN            200  ini.traj_max_velocity
    36  float IN              0  ini.u.max_acceleration
    36  float IN              0  ini.u.max_limit
    36  float IN              0  ini.u.max_velocity
    36  float IN              0  ini.u.min_limit
    36  float IN              0  ini.v.max_acceleration
    36  float IN              0  ini.v.max_limit
    36  float IN              0  ini.v.max_velocity
    36  float IN              0  ini.v.min_limit
    36  float IN              0  ini.w.max_acceleration
    36  float IN              0  ini.w.max_limit
    36  float IN              0  ini.w.max_velocity
    36  float IN              0  ini.w.min_limit
    36  float IN           2000  ini.x.max_acceleration
    36  float IN           1300  ini.x.max_limit
    36  float IN            150  ini.x.max_velocity
    36  float IN             -1  ini.x.min_limit
    36  float IN           2000  ini.y.max_acceleration
    36  float IN            200  ini.y.max_limit
    36  float IN            150  ini.y.max_velocity
    36  float IN             -2  ini.y.min_limit
    36  float IN           1000  ini.z.max_acceleration
    36  float IN              1  ini.z.max_limit
    36  float IN             75  ini.z.max_velocity
    36  float IN           -100  ini.z.min_limit
     4  bit   OUT         FALSE  iocontrol.0.coolant-flood
     4  bit   OUT         FALSE  iocontrol.0.coolant-mist
     4  bit   IN          FALSE  iocontrol.0.emc-enable-in <== estop-loop
     4  bit   OUT         FALSE  iocontrol.0.lube
     4  bit   IN          FALSE  iocontrol.0.lube_level
     4  bit   OUT         FALSE  iocontrol.0.tool-change
     4  bit   IN          FALSE  iocontrol.0.tool-changed
     4  s32   OUT             0  iocontrol.0.tool-number
     4  s32   OUT             0  iocontrol.0.tool-prep-number
     4  s32   OUT             0  iocontrol.0.tool-prep-pocket
     4  bit   OUT         FALSE  iocontrol.0.tool-prepare
     4  bit   IN          FALSE  iocontrol.0.tool-prepared
     4  bit   OUT         FALSE  iocontrol.0.user-enable-out ==> estop-loop
     4  bit   OUT         FALSE  iocontrol.0.user-request-enable
    13  float OUT             0  joint.0.acc-cmd
    13  bit   OUT          TRUE  joint.0.active
    13  bit   OUT         FALSE  joint.0.amp-enable-out ==> emcmot.0.enable
    13  bit   IN          FALSE  joint.0.amp-fault-in
    13  float OUT             0  joint.0.backlash-corr
    13  float OUT             0  joint.0.backlash-filt
    13  float OUT             0  joint.0.backlash-vel
    13  float OUT             0  joint.0.coarse-pos-cmd
    13  bit   OUT         FALSE  joint.0.error
    13  float OUT             0  joint.0.f-error
    13  float OUT          0.25  joint.0.f-error-lim
    13  bit   OUT         FALSE  joint.0.f-errored
    13  bit   OUT         FALSE  joint.0.faulted
    13  float OUT             0  joint.0.free-pos-cmd
    13  bit   OUT         FALSE  joint.0.free-tp-enable
    13  float OUT             0  joint.0.free-vel-lim
    13  s32   OUT             0  joint.0.home-state
    13  bit   IN          FALSE  joint.0.home-sw-in <== min-limit-home-joint-0
    13  bit   OUT         FALSE  joint.0.homed
    13  bit   OUT         FALSE  joint.0.homing
    13  bit   OUT          TRUE  joint.0.in-position
    13  bit   I/O         FALSE  joint.0.index-enable
    13  float IN              1  joint.0.jog-accel-fraction
    13  s32   IN              0  joint.0.jog-counts
    13  bit   IN          FALSE  joint.0.jog-enable
    13  float IN              0  joint.0.jog-scale
    13  bit   IN          FALSE  joint.0.jog-vel-mode
    13  bit   OUT         FALSE  joint.0.kb-jog-active
    13  float OUT             0  joint.0.motor-offset
    13  float OUT             0  joint.0.motor-pos-cmd ==> emcmot.0.pos-cmd
    13  float IN              0  joint.0.motor-pos-fb <== motor.0.pos-fb
    13  bit   OUT         FALSE  joint.0.neg-hard-limit
    13  bit   IN          FALSE  joint.0.neg-lim-sw-in <== min-limit-home-joint-0
    13  float OUT             0  joint.0.pos-cmd
    13  float OUT             0  joint.0.pos-fb
    13  bit   OUT         FALSE  joint.0.pos-hard-limit
    13  bit   IN          FALSE  joint.0.pos-lim-sw-in
    13  float OUT             0  joint.0.vel-cmd
    13  bit   OUT         FALSE  joint.0.wheel-jog-active
    13  float OUT             0  joint.1.acc-cmd
    13  bit   OUT          TRUE  joint.1.active
    13  bit   OUT         FALSE  joint.1.amp-enable-out ==> emcmot.1.enable
    13  bit   IN          FALSE  joint.1.amp-fault-in
    13  float OUT             0  joint.1.backlash-corr
    13  float OUT             0  joint.1.backlash-filt
    13  float OUT             0  joint.1.backlash-vel
    13  float OUT             0  joint.1.coarse-pos-cmd
    13  bit   OUT         FALSE  joint.1.error
    13  float OUT             0  joint.1.f-error
    13  float OUT          0.25  joint.1.f-error-lim
    13  bit   OUT         FALSE  joint.1.f-errored
    13  bit   OUT         FALSE  joint.1.faulted
    13  float OUT             0  joint.1.free-pos-cmd
    13  bit   OUT         FALSE  joint.1.free-tp-enable
    13  float OUT             0  joint.1.free-vel-lim
    13  s32   OUT             0  joint.1.home-state
    13  bit   IN          FALSE  joint.1.home-sw-in <== min-limit-home-joint-1
    13  bit   OUT         FALSE  joint.1.homed
    13  bit   OUT         FALSE  joint.1.homing
    13  bit   OUT          TRUE  joint.1.in-position
    13  bit   I/O         FALSE  joint.1.index-enable
    13  float IN              1  joint.1.jog-accel-fraction
    13  s32   IN              0  joint.1.jog-counts
    13  bit   IN          FALSE  joint.1.jog-enable
    13  float IN              0  joint.1.jog-scale
    13  bit   IN          FALSE  joint.1.jog-vel-mode
    13  bit   OUT         FALSE  joint.1.kb-jog-active
    13  float OUT             0  joint.1.motor-offset
    13  float OUT             0  joint.1.motor-pos-cmd ==> emcmot.1.pos-cmd
    13  float IN             -0  joint.1.motor-pos-fb <== motor.1.pos-fb
    13  bit   OUT         FALSE  joint.1.neg-hard-limit
    13  bit   IN          FALSE  joint.1.neg-lim-sw-in <== min-limit-home-joint-1
    13  float OUT            -0  joint.1.pos-cmd
    13  float OUT            -0  joint.1.pos-fb
    13  bit   OUT         FALSE  joint.1.pos-hard-limit
    13  bit   IN          FALSE  joint.1.pos-lim-sw-in
    13  float OUT             0  joint.1.vel-cmd
    13  bit   OUT         FALSE  joint.1.wheel-jog-active
    13  float OUT             0  joint.2.acc-cmd
    13  bit   OUT          TRUE  joint.2.active
    13  bit   OUT         FALSE  joint.2.amp-enable-out ==> emcmot.2.enable
    13  bit   IN          FALSE  joint.2.amp-fault-in
    13  float OUT             0  joint.2.backlash-corr
    13  float OUT             0  joint.2.backlash-filt
    13  float OUT             0  joint.2.backlash-vel
    13  float OUT             0  joint.2.coarse-pos-cmd
    13  bit   OUT         FALSE  joint.2.error
    13  float OUT             0  joint.2.f-error
    13  float OUT          0.25  joint.2.f-error-lim
    13  bit   OUT         FALSE  joint.2.f-errored
    13  bit   OUT         FALSE  joint.2.faulted
    13  float OUT             0  joint.2.free-pos-cmd
    13  bit   OUT         FALSE  joint.2.free-tp-enable
    13  float OUT             0  joint.2.free-vel-lim
    13  s32   OUT             0  joint.2.home-state
    13  bit   IN          FALSE  joint.2.home-sw-in <== min-limit-home-joint-2
    13  bit   OUT         FALSE  joint.2.homed
    13  bit   OUT         FALSE  joint.2.homing
    13  bit   OUT          TRUE  joint.2.in-position
    13  bit   I/O         FALSE  joint.2.index-enable
    13  float IN              1  joint.2.jog-accel-fraction
    13  s32   IN              0  joint.2.jog-counts
    13  bit   IN          FALSE  joint.2.jog-enable
    13  float IN              0  joint.2.jog-scale
    13  bit   IN          FALSE  joint.2.jog-vel-mode
    13  bit   OUT         FALSE  joint.2.kb-jog-active
    13  float OUT             0  joint.2.motor-offset
    13  float OUT             0  joint.2.motor-pos-cmd ==> emcmot.2.pos-cmd
    13  float IN              0  joint.2.motor-pos-fb <== motor.2.pos-fb
    13  bit   OUT         FALSE  joint.2.neg-hard-limit
    13  bit   IN          FALSE  joint.2.neg-lim-sw-in <== min-limit-home-joint-2
    13  float OUT             0  joint.2.pos-cmd
    13  float OUT             0  joint.2.pos-fb
    13  bit   OUT         FALSE  joint.2.pos-hard-limit
    13  bit   IN          FALSE  joint.2.pos-lim-sw-in
    13  float OUT             0  joint.2.vel-cmd
    13  bit   OUT         FALSE  joint.2.wheel-jog-active
    13  float OUT             0  joint.3.acc-cmd
    13  bit   OUT          TRUE  joint.3.active
    13  bit   OUT         FALSE  joint.3.amp-enable-out ==> emcmot.3.enable
    13  bit   IN          FALSE  joint.3.amp-fault-in
    13  float OUT             0  joint.3.backlash-corr
    13  float OUT             0  joint.3.backlash-filt
    13  float OUT             0  joint.3.backlash-vel
    13  float OUT             0  joint.3.coarse-pos-cmd
    13  bit   OUT         FALSE  joint.3.error
    13  float OUT             0  joint.3.f-error
    13  float OUT          0.25  joint.3.f-error-lim
    13  bit   OUT         FALSE  joint.3.f-errored
    13  bit   OUT         FALSE  joint.3.faulted
    13  float OUT             0  joint.3.free-pos-cmd
    13  bit   OUT         FALSE  joint.3.free-tp-enable
    13  float OUT             0  joint.3.free-vel-lim
    13  s32   OUT             0  joint.3.home-state
    13  bit   IN          FALSE  joint.3.home-sw-in <== min-limit-home-joint-3
    13  bit   OUT         FALSE  joint.3.homed
    13  bit   OUT         FALSE  joint.3.homing
    13  bit   OUT          TRUE  joint.3.in-position
    13  bit   I/O         FALSE  joint.3.index-enable
    13  float IN              1  joint.3.jog-accel-fraction
    13  s32   IN              0  joint.3.jog-counts
    13  bit   IN          FALSE  joint.3.jog-enable
    13  float IN              0  joint.3.jog-scale
    13  bit   IN          FALSE  joint.3.jog-vel-mode
    13  bit   OUT         FALSE  joint.3.kb-jog-active
    13  float OUT             0  joint.3.motor-offset
    13  float OUT             0  joint.3.motor-pos-cmd ==> emcmot.3.pos-cmd
    13  float IN              0  joint.3.motor-pos-fb <== motor.3.pos-fb
    13  bit   OUT         FALSE  joint.3.neg-hard-limit
    13  bit   IN          FALSE  joint.3.neg-lim-sw-in <== min-limit-home-joint-3
    13  float OUT             0  joint.3.pos-cmd
    13  float OUT             0  joint.3.pos-fb
    13  bit   OUT         FALSE  joint.3.pos-hard-limit
    13  bit   IN          FALSE  joint.3.pos-lim-sw-in
    13  float OUT             0  joint.3.vel-cmd
    13  bit   OUT         FALSE  joint.3.wheel-jog-active
    13  s32   OUT           555  motion-command-handler.time
    13  s32   OUT         20400  motion-controller.time
    13  float IN              1  motion.adaptive-feed
    13  float IN              0  motion.analog-in-00
    13  float IN              0  motion.analog-in-01
    13  float IN              0  motion.analog-in-02
    13  float IN              0  motion.analog-in-03
    13  float OUT             0  motion.analog-out-00
    13  float OUT             0  motion.analog-out-01
    13  float OUT             0  motion.analog-out-02
    13  float OUT             0  motion.analog-out-03
    13  bit   OUT         FALSE  motion.coord-error
    13  bit   OUT         FALSE  motion.coord-mode
    13  float OUT             0  motion.current-vel
    13  bit   IN          FALSE  motion.digital-in-00
    13  bit   IN          FALSE  motion.digital-in-01
    13  bit   IN          FALSE  motion.digital-in-02
    13  bit   IN          FALSE  motion.digital-in-03
    13  bit   OUT         FALSE  motion.digital-out-00
    13  bit   OUT         FALSE  motion.digital-out-01
    13  bit   OUT         FALSE  motion.digital-out-02
    13  bit   OUT         FALSE  motion.digital-out-03
    13  float OUT             0  motion.distance-to-go
    13  bit   IN           TRUE  motion.enable
    13  bit   OUT         FALSE  motion.eoffset-active
    13  bit   OUT         FALSE  motion.eoffset-limited
    13  bit   IN          FALSE  motion.feed-hold
    13  bit   IN          FALSE  motion.feed-inhibit
    13  bit   IN          FALSE  motion.homing-inhibit
    13  bit   OUT          TRUE  motion.in-position
    13  bit   OUT         FALSE  motion.motion-enabled
    13  s32   OUT             0  motion.motion-type
    13  bit   OUT         FALSE  motion.on-soft-limit
    13  bit   IN          FALSE  motion.probe-input
    13  s32   OUT             0  motion.program-line
    13  float OUT             0  motion.requested-vel
    13  u32   OUT    0x002DB9A0  motion.servo.last-period
    13  bit   OUT         FALSE  motion.teleop-mode
    13  float OUT             0  motion.tooloffset.a
    13  float OUT             0  motion.tooloffset.b
    13  float OUT             0  motion.tooloffset.c
    13  float OUT             0  motion.tooloffset.u
    13  float OUT             0  motion.tooloffset.v
    13  float OUT             0  motion.tooloffset.w
    13  float OUT             0  motion.tooloffset.x
    13  float OUT             0  motion.tooloffset.y
    13  float OUT             0  motion.tooloffset.z
    13  bit   IN          FALSE  motion.tp-reverse
    17  float IN              0  pid.0.Dgain
    17  float IN              0  pid.0.FF0
    17  float IN              1  pid.0.FF1
    17  float IN       0.000127  pid.0.FF2
    17  float IN              0  pid.0.Igain
    17  float IN           1000  pid.0.Pgain
    17  float IN              0  pid.0.bias
    17  float IN              0  pid.0.command <== emcmot.0.pos-cmd
    17  float IN              0  pid.0.command-deriv
    17  float IN              0  pid.0.deadband
    17  s32   OUT          1245  pid.0.do-pid-calcs.time
    17  bit   IN          FALSE  pid.0.enable <== emcmot.0.enable
    17  float OUT             0  pid.0.error
    17  bit   IN           TRUE  pid.0.error-previous-target
    17  float IN              0  pid.0.feedback <== motor.0.pos-fb
    17  float IN              0  pid.0.feedback-deriv
    17  bit   IN          FALSE  pid.0.index-enable
    17  float IN              0  pid.0.maxcmdD
    17  float IN              0  pid.0.maxcmdDD
    17  float IN              0  pid.0.maxerror
    17  float IN              0  pid.0.maxerrorD
    17  float IN              0  pid.0.maxerrorI
    17  float IN              0  pid.0.maxoutput
    17  float OUT             0  pid.0.output ==> motor.0.command
    17  bit   OUT         FALSE  pid.0.saturated
    17  s32   OUT             0  pid.0.saturated-count
    17  float OUT             0  pid.0.saturated-s
    17  float IN              0  pid.1.Dgain
    17  float IN              0  pid.1.FF0
    17  float IN              1  pid.1.FF1
    17  float IN       0.000127  pid.1.FF2
    17  float IN              0  pid.1.Igain
    17  float IN           1000  pid.1.Pgain
    17  float IN              0  pid.1.bias
    17  float IN              0  pid.1.command <== emcmot.1.pos-cmd
    17  float IN              0  pid.1.command-deriv
    17  float IN              0  pid.1.deadband
    17  s32   OUT           420  pid.1.do-pid-calcs.time
    17  bit   IN          FALSE  pid.1.enable <== emcmot.1.enable
    17  float OUT             0  pid.1.error
    17  bit   IN           TRUE  pid.1.error-previous-target
    17  float IN             -0  pid.1.feedback <== motor.1.pos-fb
    17  float IN              0  pid.1.feedback-deriv
    17  bit   IN          FALSE  pid.1.index-enable
    17  float IN              0  pid.1.maxcmdD
    17  float IN              0  pid.1.maxcmdDD
    17  float IN              0  pid.1.maxerror
    17  float IN              0  pid.1.maxerrorD
    17  float IN              0  pid.1.maxerrorI
    17  float IN              0  pid.1.maxoutput
    17  float OUT             0  pid.1.output ==> motor.1.command
    17  bit   OUT         FALSE  pid.1.saturated
    17  s32   OUT             0  pid.1.saturated-count
    17  float OUT             0  pid.1.saturated-s
    17  float IN              0  pid.2.Dgain
    17  float IN              0  pid.2.FF0
    17  float IN              1  pid.2.FF1
    17  float IN       0.000127  pid.2.FF2
    17  float IN              0  pid.2.Igain
    17  float IN           1000  pid.2.Pgain
    17  float IN              0  pid.2.bias
    17  float IN              0  pid.2.command <== emcmot.2.pos-cmd
    17  float IN              0  pid.2.command-deriv
    17  float IN              0  pid.2.deadband
    17  s32   OUT           405  pid.2.do-pid-calcs.time
    17  bit   IN          FALSE  pid.2.enable <== emcmot.2.enable
    17  float OUT             0  pid.2.error
    17  bit   IN           TRUE  pid.2.error-previous-target
    17  float IN              0  pid.2.feedback <== motor.2.pos-fb
    17  float IN              0  pid.2.feedback-deriv
    17  bit   IN          FALSE  pid.2.index-enable
    17  float IN              0  pid.2.maxcmdD
    17  float IN              0  pid.2.maxcmdDD
    17  float IN              0  pid.2.maxerror
    17  float IN              0  pid.2.maxerrorD
    17  float IN              0  pid.2.maxerrorI
    17  float IN              0  pid.2.maxoutput
    17  float OUT             0  pid.2.output ==> motor.2.command
    17  bit   OUT         FALSE  pid.2.saturated
    17  s32   OUT             0  pid.2.saturated-count
    17  float OUT             0  pid.2.saturated-s
    17  float IN              0  pid.3.Dgain
    17  float IN              0  pid.3.FF0
    17  float IN              1  pid.3.FF1
    17  float IN       0.000127  pid.3.FF2
    17  float IN              0  pid.3.Igain
    17  float IN           1000  pid.3.Pgain
    17  float IN              0  pid.3.bias
    17  float IN              0  pid.3.command <== emcmot.3.pos-cmd
    17  float IN              0  pid.3.command-deriv
    17  float IN              0  pid.3.deadband
    17  s32   OUT           405  pid.3.do-pid-calcs.time
    17  bit   IN          FALSE  pid.3.enable <== emcmot.3.enable
    17  float OUT             0  pid.3.error
    17  bit   IN           TRUE  pid.3.error-previous-target
    17  float IN              0  pid.3.feedback <== motor.3.pos-fb
    17  float IN              0  pid.3.feedback-deriv
    17  bit   IN          FALSE  pid.3.index-enable
    17  float IN              0  pid.3.maxcmdD
    17  float IN              0  pid.3.maxcmdDD
    17  float IN              0  pid.3.maxerror
    17  float IN              0  pid.3.maxerrorD
    17  float IN              0  pid.3.maxerrorI
    17  float IN              0  pid.3.maxoutput
    17  float OUT             0  pid.3.output ==> motor.3.command
    17  bit   OUT         FALSE  pid.3.saturated
    17  s32   OUT             0  pid.3.saturated-count
    17  float OUT             0  pid.3.saturated-s
    14  s32   OUT       1111425  servo-thread.time
    13  bit   IN          FALSE  spindle.0.amp-fault-in
    13  bit   IN           TRUE  spindle.0.at-speed
    13  bit   OUT          TRUE  spindle.0.brake
    13  bit   OUT         FALSE  spindle.0.forward
    13  bit   I/O         FALSE  spindle.0.index-enable
    13  bit   IN          FALSE  spindle.0.inhibit
    13  bit   IN          FALSE  spindle.0.is-oriented
    13  bit   OUT         FALSE  spindle.0.locked
    13  bit   OUT         FALSE  spindle.0.on
    13  bit   OUT         FALSE  spindle.0.orient
    13  float OUT             0  spindle.0.orient-angle
    13  s32   IN              0  spindle.0.orient-fault
    13  s32   OUT             0  spindle.0.orient-mode
    13  bit   OUT         FALSE  spindle.0.reverse
    13  float IN              0  spindle.0.revs
    13  float OUT             0  spindle.0.speed-cmd-rps
    13  float IN              0  spindle.0.speed-in
    13  float OUT             0  spindle.0.speed-out
    13  float OUT             0  spindle.0.speed-out-abs
    13  float OUT             0  spindle.0.speed-out-rps
    13  float OUT             0  spindle.0.speed-out-rps-abs

Pin Aliases:
 Alias                                            Original Name

Signals:
Type          Value  Name     (linked to)
bit           FALSE  emcmot.0.enable
                         ==> hm2_7i96.0.stepgen.00.enable
                         <== joint.0.amp-enable-out
                         ==> pid.0.enable
float             0  emcmot.0.pos-cmd
                         <== joint.0.motor-pos-cmd
                         ==> pid.0.command
bit           FALSE  emcmot.1.enable
                         ==> hm2_7i96.0.stepgen.01.enable
                         <== joint.1.amp-enable-out
                         ==> pid.1.enable
float             0  emcmot.1.pos-cmd
                         <== joint.1.motor-pos-cmd
                         ==> pid.1.command
bit           FALSE  emcmot.2.enable
                         ==> hm2_7i96.0.stepgen.02.enable
                         <== joint.2.amp-enable-out
                         ==> pid.2.enable
float             0  emcmot.2.pos-cmd
                         <== joint.2.motor-pos-cmd
                         ==> pid.2.command
bit           FALSE  emcmot.3.enable
                         ==> hm2_7i96.0.stepgen.03.enable
                         <== joint.3.amp-enable-out
                         ==> pid.3.enable
float             0  emcmot.3.pos-cmd
                         <== joint.3.motor-pos-cmd
                         ==> pid.3.command
bit           FALSE  estop-loop
                         ==> iocontrol.0.emc-enable-in
                         <== iocontrol.0.user-enable-out
bit           FALSE  min-limit-home-joint-0
                         <== hm2_7i96.0.gpio.000.in
                         ==> joint.0.home-sw-in
                         ==> joint.0.neg-lim-sw-in
bit           FALSE  min-limit-home-joint-1
                         <== hm2_7i96.0.gpio.002.in
                         ==> joint.1.home-sw-in
                         ==> joint.1.neg-lim-sw-in
bit           FALSE  min-limit-home-joint-2
                         <== hm2_7i96.0.gpio.006.in
                         ==> joint.2.home-sw-in
                         ==> joint.2.neg-lim-sw-in
bit           FALSE  min-limit-home-joint-3
                         <== hm2_7i96.0.gpio.005.in
                         ==> joint.3.home-sw-in
                         ==> joint.3.neg-lim-sw-in
float             0  motor.0.command
                         ==> hm2_7i96.0.stepgen.00.velocity-cmd
                         <== pid.0.output
float             0  motor.0.pos-fb
                         <== hm2_7i96.0.stepgen.00.position-fb
                         ==> joint.0.motor-pos-fb
                         ==> pid.0.feedback
float             0  motor.1.command
                         ==> hm2_7i96.0.stepgen.01.velocity-cmd
                         <== pid.1.output
float            -0  motor.1.pos-fb
                         <== hm2_7i96.0.stepgen.01.position-fb
                         ==> joint.1.motor-pos-fb
                         ==> pid.1.feedback
float             0  motor.2.command
                         ==> hm2_7i96.0.stepgen.02.velocity-cmd
                         <== pid.2.output
float             0  motor.2.pos-fb
                         <== hm2_7i96.0.stepgen.02.position-fb
                         ==> joint.2.motor-pos-fb
                         ==> pid.2.feedback
float             0  motor.3.command
                         ==> hm2_7i96.0.stepgen.03.velocity-cmd
                         <== pid.3.output
float             0  motor.3.pos-fb
                         <== hm2_7i96.0.stepgen.03.position-fb
                         ==> joint.3.motor-pos-fb
                         ==> pid.3.feedback

Parameters:
Owner   Type  Dir         Value  Name
    23  bit   RW          FALSE  hm2_7i96.0.encoder.00.counter-mode
    23  bit   RW           TRUE  hm2_7i96.0.encoder.00.filter
    23  bit   RW          FALSE  hm2_7i96.0.encoder.00.index-invert
    23  bit   RW          FALSE  hm2_7i96.0.encoder.00.index-mask
    23  bit   RW          FALSE  hm2_7i96.0.encoder.00.index-mask-invert
    23  float RW              1  hm2_7i96.0.encoder.00.scale
    23  float RW            0.5  hm2_7i96.0.encoder.00.vel-timeout
    23  bit   RW          FALSE  hm2_7i96.0.gpio.000.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.000.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.000.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.001.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.001.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.001.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.002.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.002.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.002.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.003.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.003.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.003.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.004.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.004.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.004.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.005.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.005.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.005.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.006.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.006.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.006.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.007.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.007.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.007.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.008.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.008.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.008.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.009.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.009.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.009.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.010.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.010.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.010.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.011.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.011.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.012.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.012.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.013.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.013.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.014.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.014.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.015.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.015.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.016.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.016.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.030.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.030.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.030.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.031.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.031.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.031.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.032.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.032.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.032.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.033.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.033.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.034.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.034.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.034.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.035.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.035.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.035.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.036.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.036.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.036.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.037.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.037.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.037.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.038.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.038.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.038.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.039.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.039.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.039.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.040.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.040.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.040.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.041.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.041.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.041.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.042.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.042.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.042.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.043.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.043.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.043.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.044.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.044.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.044.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.045.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.045.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.045.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.046.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.046.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.046.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.047.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.047.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.047.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.048.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.048.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.048.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.049.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.049.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.049.is_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.050.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.gpio.050.is_opendrain
    23  bit   RW          FALSE  hm2_7i96.0.gpio.050.is_output
    23  bit   RW          FALSE  hm2_7i96.0.io_error
    23  s32   RO              1  hm2_7i96.0.packet-error-decrement
    23  s32   RW              2  hm2_7i96.0.packet-error-increment
    23  s32   RW             10  hm2_7i96.0.packet-error-limit
    23  s32   RW             80  hm2_7i96.0.packet-read-timeout
    23  s32   RW              0  hm2_7i96.0.read-request.tmax
    23  bit   RO          FALSE  hm2_7i96.0.read-request.tmax-increased
    23  s32   RW        2226555  hm2_7i96.0.read.tmax
    23  bit   RO          FALSE  hm2_7i96.0.read.tmax-increased
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.00.direction.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.00.direction.is_opendrain
    23  u32   RW     0x00001388  hm2_7i96.0.stepgen.00.dirhold
    23  u32   RW     0x00001388  hm2_7i96.0.stepgen.00.dirsetup
    23  float RW           2500  hm2_7i96.0.stepgen.00.maxaccel
    23  float RW            250  hm2_7i96.0.stepgen.00.maxvel
    23  float RW          116.5  hm2_7i96.0.stepgen.00.position-scale
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.00.step.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.00.step.is_opendrain
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.00.step_type
    23  u32   RW     0x000009C4  hm2_7i96.0.stepgen.00.steplen
    23  u32   RW     0x000009C4  hm2_7i96.0.stepgen.00.stepspace
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.00.table-data-0
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.00.table-data-1
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.00.table-data-2
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.00.table-data-3
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.01.direction.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.01.direction.is_opendrain
    23  u32   RW     0x00001388  hm2_7i96.0.stepgen.01.dirhold
    23  u32   RW     0x00001388  hm2_7i96.0.stepgen.01.dirsetup
    23  float RW           1250  hm2_7i96.0.stepgen.01.maxaccel
    23  float RW            150  hm2_7i96.0.stepgen.01.maxvel
    23  float RW           -800  hm2_7i96.0.stepgen.01.position-scale
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.01.step.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.01.step.is_opendrain
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.01.step_type
    23  u32   RW     0x00000FA0  hm2_7i96.0.stepgen.01.steplen
    23  u32   RW     0x00000FA0  hm2_7i96.0.stepgen.01.stepspace
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.01.table-data-0
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.01.table-data-1
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.01.table-data-2
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.01.table-data-3
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.02.direction.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.02.direction.is_opendrain
    23  u32   RW     0x00001388  hm2_7i96.0.stepgen.02.dirhold
    23  u32   RW     0x00001388  hm2_7i96.0.stepgen.02.dirsetup
    23  float RW           2500  hm2_7i96.0.stepgen.02.maxaccel
    23  float RW            250  hm2_7i96.0.stepgen.02.maxvel
    23  float RW             29  hm2_7i96.0.stepgen.02.position-scale
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.02.step.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.02.step.is_opendrain
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.02.step_type
    23  u32   RW     0x000009C4  hm2_7i96.0.stepgen.02.steplen
    23  u32   RW     0x000009C4  hm2_7i96.0.stepgen.02.stepspace
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.02.table-data-0
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.02.table-data-1
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.02.table-data-2
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.02.table-data-3
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.03.direction.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.03.direction.is_opendrain
    23  u32   RW     0x00001388  hm2_7i96.0.stepgen.03.dirhold
    23  u32   RW     0x00001388  hm2_7i96.0.stepgen.03.dirsetup
    23  float RW           2500  hm2_7i96.0.stepgen.03.maxaccel
    23  float RW            250  hm2_7i96.0.stepgen.03.maxvel
    23  float RW             29  hm2_7i96.0.stepgen.03.position-scale
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.03.step.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.03.step.is_opendrain
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.03.step_type
    23  u32   RW     0x000009C4  hm2_7i96.0.stepgen.03.steplen
    23  u32   RW     0x000009C4  hm2_7i96.0.stepgen.03.stepspace
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.03.table-data-0
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.03.table-data-1
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.03.table-data-2
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.03.table-data-3
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.04.direction.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.04.direction.is_opendrain
    23  u32   RW     0x00027FF6  hm2_7i96.0.stepgen.04.dirhold
    23  u32   RW     0x00027FF6  hm2_7i96.0.stepgen.04.dirsetup
    23  float RW              1  hm2_7i96.0.stepgen.04.maxaccel
    23  float RW              0  hm2_7i96.0.stepgen.04.maxvel
    23  float RW              1  hm2_7i96.0.stepgen.04.position-scale
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.04.step.invert_output
    23  bit   RW          FALSE  hm2_7i96.0.stepgen.04.step.is_opendrain
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.04.step_type
    23  u32   RW     0x00027FF6  hm2_7i96.0.stepgen.04.steplen
    23  u32   RW     0x00027FF6  hm2_7i96.0.stepgen.04.stepspace
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.04.table-data-0
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.04.table-data-1
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.04.table-data-2
    23  u32   RW     0x00000000  hm2_7i96.0.stepgen.04.table-data-3
    23  u32   RW     0x017D7840  hm2_7i96.0.watchdog.timeout_ns
    23  s32   RW         118740  hm2_7i96.0.write.tmax
    23  bit   RO          FALSE  hm2_7i96.0.write.tmax-increased
     4  s32   RO              0  iocontrol.0.tool-prep-index
    13  s32   RW          51675  motion-command-handler.tmax
    13  bit   RO          FALSE  motion-command-handler.tmax-increased
    13  s32   RW          68775  motion-controller.tmax
    13  bit   RO          FALSE  motion-controller.tmax-increased
    13  bit   RO          FALSE  motion.debug-bit-0
    13  bit   RO          FALSE  motion.debug-bit-1
    13  float RO              0  motion.debug-float-0
    13  float RO              0  motion.debug-float-1
    13  float RO              0  motion.debug-float-2
    13  float RO              1  motion.debug-float-3
    13  s32   RO              0  motion.debug-s32-0
    13  s32   RO              0  motion.debug-s32-1
    17  s32   RW          39705  pid.0.do-pid-calcs.tmax
    17  bit   RO          FALSE  pid.0.do-pid-calcs.tmax-increased
    17  s32   RW          41580  pid.1.do-pid-calcs.tmax
    17  bit   RO          FALSE  pid.1.do-pid-calcs.tmax-increased
    17  s32   RW          39195  pid.2.do-pid-calcs.tmax
    17  bit   RO          FALSE  pid.2.do-pid-calcs.tmax-increased
    17  s32   RW          38880  pid.3.do-pid-calcs.tmax
    17  bit   RO          FALSE  pid.3.do-pid-calcs.tmax-increased
    14  s32   RW        2306685  servo-thread.tmax
    13  float RO              0  tc.0.acc
    13  float RO              0  tc.0.pos
    13  float RO              0  tc.0.vel
    13  float RO              0  tc.1.acc
    13  float RO              0  tc.1.pos
    13  float RO              0  tc.1.vel
    13  float RO              0  tc.2.acc
    13  float RO              0  tc.2.pos
    13  float RO              0  tc.2.vel
    13  float RO              0  tc.3.acc
    13  float RO              0  tc.3.pos
    13  float RO              0  tc.3.vel
    13  u32   RO     0x00000000  traj.active_tc
    13  float RO              0  traj.pos_out
    13  float RO              0  traj.vel_out

Parameter Aliases:
 Alias                                            Original Name
 hm2_7i96.0.stepgen.00.direction.invert_output    hm2_7i96.0.gpio.018.invert_output
 hm2_7i96.0.stepgen.00.direction.is_opendrain     hm2_7i96.0.gpio.018.is_opendrain
 hm2_7i96.0.stepgen.00.step.invert_output         hm2_7i96.0.gpio.017.invert_output
 hm2_7i96.0.stepgen.00.step.is_opendrain          hm2_7i96.0.gpio.017.is_opendrain
 hm2_7i96.0.stepgen.01.direction.invert_output    hm2_7i96.0.gpio.020.invert_output
 hm2_7i96.0.stepgen.01.direction.is_opendrain     hm2_7i96.0.gpio.020.is_opendrain
 hm2_7i96.0.stepgen.01.step.invert_output         hm2_7i96.0.gpio.019.invert_output
 hm2_7i96.0.stepgen.01.step.is_opendrain          hm2_7i96.0.gpio.019.is_opendrain
 hm2_7i96.0.stepgen.02.direction.invert_output    hm2_7i96.0.gpio.022.invert_output
 hm2_7i96.0.stepgen.02.direction.is_opendrain     hm2_7i96.0.gpio.022.is_opendrain
 hm2_7i96.0.stepgen.02.step.invert_output         hm2_7i96.0.gpio.021.invert_output
 hm2_7i96.0.stepgen.02.step.is_opendrain          hm2_7i96.0.gpio.021.is_opendrain
 hm2_7i96.0.stepgen.03.direction.invert_output    hm2_7i96.0.gpio.024.invert_output
 hm2_7i96.0.stepgen.03.direction.is_opendrain     hm2_7i96.0.gpio.024.is_opendrain
 hm2_7i96.0.stepgen.03.step.invert_output         hm2_7i96.0.gpio.023.invert_output
 hm2_7i96.0.stepgen.03.step.is_opendrain          hm2_7i96.0.gpio.023.is_opendrain
 hm2_7i96.0.stepgen.04.direction.invert_output    hm2_7i96.0.gpio.026.invert_output
 hm2_7i96.0.stepgen.04.direction.is_opendrain     hm2_7i96.0.gpio.026.is_opendrain
 hm2_7i96.0.stepgen.04.step.invert_output         hm2_7i96.0.gpio.025.invert_output
 hm2_7i96.0.stepgen.04.step.is_opendrain          hm2_7i96.0.gpio.025.is_opendrain

Exported Functions:
Owner   CodeAddr  Arg       FP   Users  Name
 00023  7f164655072f  5652085c8d00  YES      1   hm2_7i96.0.read
 00023  7f16465506bf  5652085c8d00  YES      0   hm2_7i96.0.read-request
 00023  7f16465505dc  5652085c8d00  YES      1   hm2_7i96.0.write
 00013  7f1646bea0f5  00000000  YES      1   motion-command-handler
 00013  7f1646bed8fd  00000000  YES      1   motion-controller
 00017  7f1646774d70  7f1648e04200  YES      1   pid.0.do-pid-calcs
 00017  7f1646774d70  7f1648e04328  YES      1   pid.1.do-pid-calcs
 00017  7f1646774d70  7f1648e04450  YES      1   pid.2.do-pid-calcs
 00017  7f1646774d70  7f1648e04578  YES      1   pid.3.do-pid-calcs

Realtime Threads:
     Period  FP     Name               (     Time, Max-Time )
    1000000  YES          servo-thread (  1149120,  2306685 )
                  1 hm2_7i96.0.read
                  2 motion-command-handler
                  3 motion-controller
                  4 pid.0.do-pid-calcs
                  5 pid.1.do-pid-calcs
                  6 pid.2.do-pid-calcs
                  7 pid.3.do-pid-calcs
                  8 hm2_7i96.0.write

