diff --git a/solution/TrialLicense.tclrs b/solution/TrialLicense.tclrs
index 35fbe7d..1132474 100644
--- a/solution/TrialLicense.tclrs
+++ b/solution/TrialLicense.tclrs
@@ -1,2 +1,2 @@
-{21469191-0300-E1C0-C3DD-62104774D30F}2019-06-03T12:43:002019-06-11T00:00:005dacefa756b5b013c66d6344cb3a48465bb45514e5c4843f450ae665865ca7f65dd3c43a441f54f73922566091c85994675624132e35c097ba119913df9734d50327dbecad56613840e7e38439426704b79e4a45f0616e6096c1d8ae2594a5af4cd72070b662221015adef28225406c0a0b2aca146def4e9ae8c381fc4a8cbf845f1aa682d50e5d2617f8b6cdada65077ff089d724e93ff3f27bf79e6ca7b0f9be83228413878fb58d6dde3383c68e07fe3341e104beb70d43bdbc744d9d1e3f35e1f99ed2c1d245d424c48efdd6c78f4dded487338a7d8a795a51d622af66aab1a78a6bfe5fcaf4df00a8be43e3739d4aa2ad6c81dc8e668033efed76727ba7{4C256767-E6E6-4AF5-BD68-9F7ABAD0C200}TC3 ADSTC1000{3FF18E97-7754-401B-93FB-70544DE28A13}TC3 IOTC1100{66689887-CCBD-452C-AC9A-039D997C6E66}TC3 PLCTC1200{A19036CF-A53B-4E3A-99FF-023EF5C4798B}TC3 NC PTP Axis10{520DE751-9DB6-47CB-8240-BD5C466E7E64}TC3 NC PTPTF5000{3EBB9639-5FF3-42B6-8847-35C70DC013C8}TC3 TCP/IPTF6310
+{52C4A619-551C-008A-DE5B-87C2D878314F}2019-06-20T07:59:002019-06-28T00:00:00440abbbe2f39181db097f16818237251fd1f2d0718115982971343370c9a4a58093f0af3461229dc88336bf779b68022b904abbf9339ebd5a3e73111bf8d2758177c4fbb82aa1b3482b71fef6f7a9b6300970484803798af4d353c784fdefb7b5accab29d326173225fc71fddd9406080470ea2f8a3f68bb26df6c0e7ff7fe974254b232fbf8028e90b2ac13c20814290951e328ff7dbfc8165a7725f2ab3fedde40703fef94b94eb878dd5405b279dd070c783c8c962192b0fcdc7877841ccd04669fa108e4a857081bc8c510cc8548b38d441e6c1199c59d543223ab5453adfbb6e5133d1ac99c0d8608066a000a15787944e475d15e777e111450f531be85{4C256767-E6E6-4AF5-BD68-9F7ABAD0C200}TC3 ADSTC1000{3FF18E97-7754-401B-93FB-70544DE28A13}TC3 IOTC1100{66689887-CCBD-452C-AC9A-039D997C6E66}TC3 PLCTC1200{A19036CF-A53B-4E3A-99FF-023EF5C4798B}TC3 NC PTP Axis10{520DE751-9DB6-47CB-8240-BD5C466E7E64}TC3 NC PTPTF5000{3EBB9639-5FF3-42B6-8847-35C70DC013C8}TC3 TCP/IPTF6310
diff --git a/solution/_Config/NC/Axes/Axis 3.xti b/solution/_Config/NC/Axes/Axis 3.xti
new file mode 100644
index 0000000..13d544c
--- /dev/null
+++ b/solution/_Config/NC/Axes/Axis 3.xti
@@ -0,0 +1,1551 @@
+
+
+
+
+ UINTARR2
+ 32
+ UINT
+
+ 0
+ 2
+
+
+ [%u, %u]
+ [0]
+ [1]
+
+
+ 0x%08x [%u, %u]
+ .
+ [0]
+ [1]
+
+
+ 0x%08x (%u)
+ .
+ .
+
+
+
+ NCENCODERSTRUCT_IN2B
+ 320
+
+ nDataIn1
+ UINTARR2
+ 32
+ 0
+
+
+ nDataIn2
+ UINTARR2
+ 32
+ 32
+
+
+ nState1
+ USINT
+ 8
+ 64
+
+
+ nState2
+ USINT
+ 8
+ 72
+
+
+ nState3
+ USINT
+ 8
+ 80
+
+
+ nState4
+ USINT
+
+
+
+ 8
+ 88
+
+
+ nDataIn3
+ UINTARR2
+ 32
+ 96
+
+
+ nDataIn4
+ UINTARR2
+ 32
+ 128
+
+
+ nDataIn5
+ UINTARR2
+ 32
+ 160
+
+
+ nDataIn6
+ UINTARR2
+ 32
+ 192
+
+
+ nState5
+ USINT
+ 8
+ 224
+
+
+ nState6
+ USINT
+ 8
+ 232
+
+
+ nState7
+ USINT
+ 8
+ 240
+
+
+ nState8
+ USINT
+ 8
+ 248
+
+
+ nDcInputTime
+ DINT
+ 32
+ 256
+
+
+ nDataIn7
+ UINTARR2
+ 32
+ 288
+
+
+
+ NCENCODERSTRUCT_IN
+
+ 96
+
+
+
+
+
+ NCENCODERSTRUCT_OUT2
+ 320
+
+ nDataOut1
+ UINTARR2
+ 32
+ 0
+
+
+ nDataOut2
+ UINTARR2
+ 32
+ 32
+
+
+ nCtrl1
+ USINT
+ 8
+ 64
+
+
+ nCtrl2
+ USINT
+ 8
+ 72
+
+
+ nCtrl3
+ USINT
+ 8
+ 80
+
+
+ nCtrl4
+ USINT
+ 8
+ 88
+
+
+ nDataOut3
+ UINTARR2
+ 32
+ 96
+
+
+ nDataOut4
+ UINTARR2
+ 32
+ 128
+
+
+ nDataOut5
+ UINTARR2
+ 32
+ 160
+
+
+ nDataOut6
+ UINTARR2
+ 32
+ 192
+
+
+ nCtrl5
+ USINT
+ 8
+ 224
+
+
+ nCtrl6
+ USINT
+ 8
+ 232
+
+
+ nCtrl7
+ USINT
+ 8
+ 240
+
+
+ nCtrl8
+ USINT
+ 8
+ 248
+
+
+
+ NCENCODERSTRUCT_OUT
+
+ 96
+
+
+
+
+
+ NCDRIVESTRUCT_IN2
+ 320
+
+ nDataIn1
+ UINTARR2
+ 32
+ 0
+
+
+ nDataIn2
+ UINTARR2
+ 32
+ 32
+
+
+ nState1
+ USINT
+ 8
+ 64
+
+
+ nState2
+ USINT
+ 8
+ 72
+
+
+ nState3
+ USINT
+ 8
+ 80
+
+
+ nState4
+ USINT
+
+
+
+ 8
+ 88
+
+
+ nDataIn3
+ UINTARR2
+ 32
+ 96
+
+
+ nDataIn4
+ UINTARR2
+ 32
+ 128
+
+
+ nDataIn5
+ UINTARR2
+ 32
+ 160
+
+
+ nDataIn6
+ UINTARR2
+ 32
+ 192
+
+
+ nState5
+ USINT
+ 8
+ 224
+
+
+ nState6
+ USINT
+ 8
+ 232
+
+
+ nState7
+ USINT
+ 8
+ 240
+
+
+ nState8
+ USINT
+ 8
+ 248
+
+
+ nDcOutputTime
+ DINT
+ 32
+ 256
+
+
+
+ NCDRIVESTRUCT_IN
+
+ 96
+
+
+
+
+
+ NCDRIVESTRUCT_OUT2
+ 320
+
+ nDataOut1
+ UINTARR2
+ 32
+ 0
+
+
+ nDataOut2
+ UINTARR2
+ 32
+ 32
+
+
+ nCtrl1
+ USINT
+ 8
+ 64
+
+
+ nCtrl2
+ USINT
+ 8
+ 72
+
+
+ nCtrl3
+ USINT
+ 8
+ 80
+
+
+ nCtrl4
+ USINT
+ 8
+ 88
+
+
+ nDataOut3
+ UINTARR2
+ 32
+ 96
+
+
+ nDataOut4
+ UINTARR2
+ 32
+ 128
+
+
+ nDataOut5
+ UINTARR2
+ 32
+ 160
+
+
+ nDataOut6
+ UINTARR2
+ 32
+ 192
+
+
+ nCtrl5
+ USINT
+ 8
+ 224
+
+
+ nCtrl6
+ USINT
+ 8
+ 232
+
+
+ nCtrl7
+ USINT
+ 8
+ 240
+
+
+ nCtrl8
+ USINT
+ 8
+ 248
+
+
+
+ NCDRIVESTRUCT_OUT
+
+ 96
+
+
+
+
+
+ PLCTONC_AXIS_REF_CTRL
+ 32
+
+ Enable
+ BIT
+ 1
+ 0
+
+
+ FeedEnablePlus
+ BIT
+ 1
+ 1
+
+
+ FeedEnableMinus
+ BIT
+ 1
+ 2
+
+
+ HomingSensor
+ BIT
+ 1
+ 5
+
+
+ AcceptBlockedDrive
+ BIT
+ 1
+ 8
+
+
+ PlcDebugFlag
+ BIT
+ 1
+ 30
+
+
+ NcDebugFlag
+ BIT
+ 1
+ 31
+
+
+ %08x
+
+
+ 0x%08x
+
+
+ 16#%08X
+
+
+
+ PLCTONC_AXIS_REF
+ 1024
+
+ ControlDWord
+ PLCTONC_AXIS_REF_CTRL
+ 32
+ 0
+
+
+ Override
+ UDINT
+ 32
+ 32
+
+
+ AxisModeRequest
+ UDINT
+ 32
+ 64
+
+
+ AxisModeDWord
+ UDINT
+ 32
+ 96
+
+
+ AxisModeLReal
+ LREAL
+ 64
+ 128
+
+
+ PositionCorrection
+ LREAL
+ 64
+ 192
+
+
+ ExtSetPos
+ LREAL
+ 64
+ 256
+
+
+ ExtSetVelo
+ LREAL
+ 64
+ 320
+
+
+ ExtSetAcc
+ LREAL
+ 64
+ 384
+
+
+ ExtSetDirection
+ DINT
+ 32
+ 448
+
+
+ ExtControllerOutput
+ LREAL
+ 64
+ 512
+
+
+ GearRatio1
+ LREAL
+ 64
+ 576
+
+
+ GearRatio2
+ LREAL
+ 64
+ 640
+
+
+ GearRatio3
+ LREAL
+ 64
+ 704
+
+
+ GearRatio4
+ LREAL
+ 64
+ 768
+
+
+ MapState
+ BOOL
+ 8
+ 832
+
+
+ PlcCycleControl
+ BYTE
+ 8
+ 840
+
+
+ PlcCycleCount
+ BYTE
+ 8
+ 848
+
+
+
+ NcStructType
+ 1
+
+
+
+
+ NCAXLESTRUCT_FROMPLC3
+
+
+
+
+ NCTOPLC_AXIS_REF_STATE
+ 32
+
+ Operational
+ BIT
+ 1
+ 0
+
+
+ Homed
+ BIT
+ 1
+ 1
+
+
+ NotMoving
+ BIT
+ 1
+ 2
+
+
+ InPositionArea
+ BIT
+ 1
+ 3
+
+
+ InTargetPosition
+ BIT
+ 1
+ 4
+
+
+ Protected
+ BIT
+ 1
+ 5
+
+
+ ErrorPropagationDelayed
+ BIT
+ 1
+ 6
+
+
+ HasBeenStopped
+ BIT
+ 1
+ 7
+
+
+ HasJob
+ BIT
+ 1
+ 8
+
+
+ PositiveDirection
+ BIT
+ 1
+ 9
+
+
+ NegativeDirection
+ BIT
+ 1
+ 10
+
+
+ HomingBusy
+ BIT
+ 1
+ 11
+
+
+ ConstantVelocity
+ BIT
+ 1
+ 12
+
+
+ Compensating
+ BIT
+ 1
+ 13
+
+
+ ExtSetPointGenEnabled
+ BIT
+ 1
+ 14
+
+
+ PhasingActive
+ BIT
+ 1
+ 15
+
+
+ ExternalLatchValid
+ BIT
+ 1
+ 16
+
+
+ NewTargetPos
+ BIT
+ 1
+ 17
+
+
+ ContinuousMotion
+ BIT
+ 1
+ 19
+
+
+ ControlLoopClosed
+ BIT
+ 1
+ 20
+
+
+ CamTableQueued
+ BIT
+ 1
+ 21
+
+
+ CamDataQueued
+ BIT
+ 1
+ 22
+
+
+ CamScalingPending
+ BIT
+ 1
+ 23
+
+
+ CmdBuffered
+ BIT
+ 1
+ 24
+
+
+ PTPmode
+ BIT
+ 1
+ 25
+
+
+ SoftLimitMinExceeded
+ BIT
+ 1
+ 26
+
+
+ SoftLimitMaxExceeded
+ BIT
+ 1
+ 27
+
+
+ DriveDeviceError
+ BIT
+ 1
+ 28
+
+
+ MotionCommandsLocked
+ BIT
+ 1
+ 29
+
+
+ IoDataInvalid
+ BIT
+ 1
+ 30
+
+
+ Error
+ BIT
+ 1
+ 31
+
+
+ %08x
+
+
+ 0x%08x
+
+
+ 16#%08X
+
+
+
+ NCTOPLC_AXIS_REF_OPMODE
+ 32
+
+ OpModePosAreaMonitoring
+ BIT
+ 1
+ 0
+
+
+ OpModeTargetPosMonitoring
+ BIT
+ 1
+ 1
+
+
+ OpModeLoop
+ BIT
+ 1
+ 2
+
+
+ OpModeMotionMonitoring
+ BIT
+ 1
+ 3
+
+
+ OpModePEHTimeMonitoring
+ BIT
+ 1
+ 4
+
+
+ OpModeBacklashCompensation
+ BIT
+ 1
+ 5
+
+
+ OpModeDelayedErrorReaction
+ BIT
+ 1
+ 6
+
+
+ OpModeModulo
+ BIT
+ 1
+ 7
+
+
+ OpModeSimulationAxis
+ BIT
+ 1
+ 8
+
+
+ OpModePosLagMonitoring
+ BIT
+ 1
+ 16
+
+
+ OpModeVeloLagMonitoring
+ BIT
+ 1
+ 17
+
+
+ OpModeSoftLimitMinMonitoring
+ BIT
+ 1
+ 18
+
+
+ OpModeSoftLimitMaxMonitoring
+ BIT
+ 1
+ 19
+
+
+ OpModePosCorrection
+ BIT
+ 1
+ 20
+
+
+ OpModeAllowSlaveCommands
+ BIT
+ 1
+ 21
+
+
+ OpModeAllowExtSetAxisCommands
+ BIT
+ 1
+ 22
+
+
+ ApplicationRequest
+ BIT
+ 1
+ 23
+
+
+
+ NCTOPLC_AXIS_REF_STATE2_FLAGS
+ 32
+
+ AvoidingCollision
+ BIT
+ 1
+ 0
+
+
+ %08x
+
+
+ 0x%08x
+
+
+ 16#%08X
+
+
+
+ NCTOPLC_AXIS_REF_STATE2
+ 32
+
+ Value
+ DWORD
+ 32
+ 0
+
+
+ Flags
+ NCTOPLC_AXIS_REF_STATE2_FLAGS
+ 32
+ 0
+
+
+ %08x
+
+
+ 0x%08x
+
+
+ 16#%08X
+
+
+
+ NCTOPLC_AXIS_REF_CAMCOUPLINGSTATE
+ 8
+
+ CamActivationPending
+ BIT
+ 1
+ 0
+
+
+ CamDeactivationPending
+ BIT
+ 1
+ 1
+
+
+ CamActive
+ BIT
+ 1
+ 2
+
+
+ CamDataQueued
+ BIT
+ 1
+ 6
+
+
+ CamScalingPending
+ BIT
+ 1
+ 7
+
+
+
+ UINTARR8
+ 128
+ UINT
+
+ 0
+ 8
+
+
+
+ NCTOPLC_AXIS_REF
+ 2048
+
+ StateDWord
+ NCTOPLC_AXIS_REF_STATE
+ 32
+ 0
+
+
+ ErrorCode
+ UDINT
+ 32
+ 32
+
+
+ AxisState
+ UDINT
+
+
+
+ 32
+ 64
+
+
+ AxisModeConfirmation
+ UDINT
+ 32
+ 96
+
+
+ HomingState
+ UDINT
+
+
+
+ 32
+ 128
+
+
+ CoupleState
+ UDINT
+
+
+
+ 32
+ 160
+
+
+ SvbEntries
+ UDINT
+ 32
+ 192
+
+
+ SafEntries
+ UDINT
+ 32
+ 224
+
+
+ AxisId
+ UDINT
+ 32
+ 256
+
+
+ OpModeDWord
+ NCTOPLC_AXIS_REF_OPMODE
+ 32
+ 288
+
+
+ ActPos
+ LREAL
+ 64
+ 320
+
+
+ ModuloActPos
+ LREAL
+ 64
+ 384
+
+
+ ActiveControlLoopIndex
+ UINT
+ 16
+ 448
+
+
+ ControlLoopIndex
+ UINT
+ 16
+ 464
+
+
+ ModuloActTurns
+ DINT
+ 32
+ 480
+
+
+ ActVelo
+ LREAL
+ 64
+ 512
+
+
+ PosDiff
+ LREAL
+ 64
+ 576
+
+
+ SetPos
+ LREAL
+ 64
+ 640
+
+
+ SetVelo
+ LREAL
+ 64
+ 704
+
+
+ SetAcc
+ LREAL
+ 64
+ 768
+
+
+ TargetPos
+ LREAL
+ 64
+ 832
+
+
+ ModuloSetPos
+ LREAL
+ 64
+ 896
+
+
+ ModuloSetTurns
+ DINT
+ 32
+ 960
+
+
+ CmdNo
+ UINT
+ 16
+ 992
+
+
+ CmdState
+ UINT
+ 16
+ 1008
+
+
+ SetJerk
+ LREAL
+ 64
+ 1024
+
+
+ SetTorque
+ LREAL
+ 64
+ 1088
+
+
+ ActTorque
+ LREAL
+ 64
+ 1152
+
+
+ StateDWord2
+ NCTOPLC_AXIS_REF_STATE2
+ 32
+ 1216
+
+
+ StateDWord3
+ DWORD
+ 32
+ 1248
+
+
+ TouchProbeState
+ DWORD
+ 32
+ 1280
+
+
+ TouchProbeCounter
+ DWORD
+ 32
+ 1312
+
+
+ CamCouplingState
+ NCTOPLC_AXIS_REF_CAMCOUPLINGSTATE
+
+ 0
+ 8
+
+ 64
+ 1344
+
+
+ CamCouplingTableID
+ UINTARR8
+ 128
+ 1408
+
+
+ ActTorqueDerivative
+ LREAL
+ 64
+ 1536
+
+
+ SetTorqueDerivative
+ LREAL
+ 64
+ 1600
+
+
+ ActPosWithoutPosCorrection
+ LREAL
+ 64
+ 1792
+
+
+ ActAcc
+ LREAL
+ 64
+ 1856
+
+
+ DcTimeStamp
+ UDINT
+ 32
+ 1920
+
+
+
+ NcStructType
+ 2
+
+
+
+
+ NCAXLESTRUCT_TOPLC
+
+
+ NCAXLESTRUCT_TOPLC2
+
+
+ NCAXLESTRUCT_TOPLC3
+
+
+ NCAXLESTRUCT_TOPLC4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ __FILENAME__
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 4352
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nState4
+
+
+
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 7424
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 4672
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nState4
+
+
+
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+
+
+ Outputs
+
+ Out
+ NCDRIVESTRUCT_OUT2
+ 7744
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nCtrl2
+
+
+
+
+
+ nCtrl3
+
+
+
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ FromPlc
+ PLCTONC_AXIS_REF
+ 3328
+
+
+
+ Outputs
+
+ ToPlc
+ NCTOPLC_AXIS_REF
+ 5376
+
+ AxisState
+
+
+
+
+
+ HomingState
+
+
+
+
+
+ CoupleState
+
+
+
+
+
+
+
+
diff --git a/solution/solution.tsproj b/solution/solution.tsproj
index 1326ba3..779cfe8 100644
--- a/solution/solution.tsproj
+++ b/solution/solution.tsproj
@@ -914,6 +914,7 @@ External Setpoint Generation:
+
@@ -1082,6 +1083,83 @@ External Setpoint Generation:
1: axis is a master axis
2: axis is master and slave
3: axis is a slave axis
+]]>
+
+
+
+
+ GVL.axes[3].inputs.bLimitFwd
+
+
+
+ BOOL
+
+
+ GVL.axes[3].inputs.bLimitBwd
+
+
+
+ BOOL
+
+
+ GVL.axes[3].inputs.bHomeSensor
+
+
+
+ BOOL
+
+
+ GVL.axes[3].inputs.bEncLAtch
+
+
+
+ BOOL
+
+
+ GVL.axes[3].Axis.NcToPlc
+ NCTOPLC_AXIS_REF
+
+ AxisState
+
+
+
+
+
+ HomingState
+
+
+
+
+
+ CoupleState
+
+
@@ -1104,6 +1182,10 @@ External Setpoint Generation:
GVL.axes[2].Axis.PlcToNc
PLCTONC_AXIS_REF
+
+ GVL.axes[3].Axis.PlcToNc
+ PLCTONC_AXIS_REF
+
@@ -1124,6 +1206,10 @@ External Setpoint Generation:
+
+
+
+
diff --git a/solution/tc_project_app/tc_mca_std_lib b/solution/tc_project_app/tc_mca_std_lib
index fe55ce8..63439ec 160000
--- a/solution/tc_project_app/tc_mca_std_lib
+++ b/solution/tc_project_app/tc_mca_std_lib
@@ -1 +1 @@
-Subproject commit fe55ce8af8ae32471e1031b6d089e9497ac5f69e
+Subproject commit 63439ecde299754c957958a98f3756bc6b9a6d09