You need to ask CS Labs how it's motion controller handles varying spindle speed at both index time and during the actual threading. Also find out how current their plugin is with the current version of Mach4.
The above is different than:
CSMIO-ENC from machine start, spindle activation, and Index signal finding it starts to count encoder position, spindle angle, and speed. All the information are transferred by the CAN bus to a CSMIO/IP motion controller, where they are treated by algorithms which task is to accurately and smoothly synchronize move of a Z-axis to a spindle during G32 or M84 command activation. At the moment of threading when the Z axis moves, the CSMIO/IP motion controller sends current axis position to Mach3, so its Z-axis position DRO shows the real position.
RICH