Hi Bob,

One of the ways to solve this that I know of is to run the motors independently (separate control signals) from mach3, i presume your machine uses that software? you can then set up your y axis to use motor 1 (Y axis) and motor 2 (A axis). Then when you reference your machine at startup you have 2 microswitches (one for each end of the gantry), the machine travels towards these, touches, then offsets and if you have your microswitches set true to your machine you will have a square gantry. Unfortunately I don't know how you can overcome the motors loosing steps, unless you use encoders to create a closed loop system, similar to how servo's work.

Adam.