This guide was created by discord user @fpq473.
This guide concerns the adjustment of the Y dual axis offset. For the result to be consistent, the parallelism of the upper and lower X-axis rails must have been checked and corrected if necessary, otherwise this test will be incorrect.
This method computes the Y dual axis offset needed to square a gantry. For a probe with center-finding accuracy of 0.01mm and a standard work area of 900mm x 600mm, we get an expected accuracy of 0.02mm over 900mm, or within 0.0011 degrees of square. This method is also fast and easy; we need only center-find a steel dowel pin four times. There is no cutting, measuring, or other precision work.
Disclaimer: Accuracy is a tricky topic and accuracy claims and comparisons rely on simplifying assumptions. I’m no expert, and in particular, I don’t consider whether inaccuracies in XY travel overwhelm the benefit of probing across the entire work area.
Find a strip of plywood slightly longer than your work area diagonal. Drill a hole at each end, taking care to make the holes as vertical as possible. Make the holes as far apart as possible while still fitting within the work area (diagonally). You can optionally insert steel dowel pins (pictured right) if you want to use a 3d probe and an external center-finding routine (see Steps 3 and 4). Tips : Once you've drilled the holes, say 6mm, in the ends of your stud, you can use a broken or worn bit of the same diameter. The idea is to fit the bit into the hole with the spindle. Fix this assembly securely to your wasteboard, nothing must move during the measurements. For other ideas on how to make this strip, see discussion here, here, and here. |
![]() |
Set Y dual axis offset ($171) to 0 in ioSender > “Settings: GRBL” > “Y-axis”. Make sure this setting is saved to the controller (e.g. the Flexi-HAL) and not just entered into ioSender GUI. To verify, enter $171 into the MDI and see what is printed in the Console tab.
Now home the machine (or only home Y, if you prefer).
Connect to the calculator here and prepare to fill out the form fields.
Note: For illustrative purposes, we show a machine with Y1 on the right and Y2 on the left, with homing to the rear. Adapt to your own machine in the calculator.
Secure the strip running from front left to rear right. The strip must not move during the measurements!
Find the X and Y coordinates of the front left dowel center and enter them into the calculator.
Find the X and Y coordinates of the rear right dowel center and enter them into the calculator.
You can use a probe, or manually jog-and-aim, or any other method.
Turn the strip to the opposite diagonal. You don’t need to Home between step 3 and 4, and you don't need to mirror Step 3 exactly.
Secure the strip running from front right to rear left. The strip must not move during the measurements!
Find the X and Y coordinates of the front right dowel center and enter them into the calculator.
Find the X and Y coordinates of the rear left dowel center and enter them into the calculator.
You can use a probe, or manually jog-and-aim, or any other method.
Measure the distance between your Y ballscrews ( from center to center ) and enter the data in the calculator, select the options relevant to your machine. The calculator will show the new offset.
Enter the new offset in ioSender > “Settings: GRBL” > “Y-axis” > Y dual axis offset ($171). Make sure this setting is saved to the controller (e.g. the Flexi-HAL) and not just entered into ioSender GUI. To verify, enter $171 into the MDI and see what is printed in the Console tab.
Now home the machine (or only home Y, if you prefer).
With the new offset in effect, you can repeat Step 3 and Step 4. The calculator will hopefully show your gantry being square or very close to square.
Let a and b be the X and Y distances between centers from Step 3, and c and d be the X and Y distances between centers from Step 4. Then the Y offset to make the gantry square is below. If Y offset is negative, the right side of the gantry needs to be brought forward.
Y offset = 0.5*(distance between Y ballscrews)*(a*a+b*b-c*c-d*d)/(a*b+c*d)