Is your router frame a parallelogram? Mine was!

The process I used… push the two y-axis ends up against a qualified reference ledge on my machine table top, push both y-axis carriages up against their end stops, install the x-axis, transfer mounting holes and drill thru table top, install mounting fasteners… easy-peasy.


I am still in this situation and can’t seem to get things square. I noticed it with two sided jobs as well as my tiled cuts not lining up correctly. Not sure what else to try… is it possible that my waste board is not square and is what is causing me issues??

I must have lucked out. I read this thread before mine arrived, so I was aware.

I squared my 1F to the front of the table as instructed and checked the diagonals with a laser distance measure (hard to do with a tape measure)

Kyle, what methods have you tried to ensure square?


where is the diagonal mentioned? The Official Onefinity CNC Assembly Video does mention no diagonal, it just fixes the two front feet flushing the front edge of the table and then, with X Axis mounted, slides the X Rail backwards. As Nick stated, this is unreliable for obtaining an accurate right angle. I would consider 0.1″ (2,54 mm) as a total no-go.
I would never assemble the machine without diagonal measurement for the screw holes to be drilled.




if you want to draw a right angle on your table top, there is the method of calculating the diagonal and then apply this measurement from the first two marked points.

The diagonal in a square is the root of two multiplied by one side:

diag_square = a × √2

or in programming:


That lets you construct a right angle geometrically.

But it would be simpler to directly mark the holes for the most exterior screws of the feet of the machine. But they do not form a square, but a rectangle. I use this method:

Squaring the machine on assembly:

At first I would mark the holes for the two most exterior screws on the front. Usually you know how much distance you want to have your machine from the front edge of your table top. So at that distance, you simply measure the width between the two holes:

If you have your machine already, and you have X Axis mounted on top of the Y Axes, so you pin a center punch into the two most exterior screw holes of the front feet and then you measure the distance between these two marks. This gives measurement x.
Be sure to hit the exact center of the screw hole in the aluminium block of the foot.

If one doesn’t have his/her machine yet, according to ‘Woodworker Dimensions’ on page 15 of the manual, the distance between the two most exterior screws on the front is (in inches):

44.069 - 2 × 0.419 = 43.231

(NOTE: One should check if these statements are true, as in this posting (Machine Dimensions) first number is 45.519 instead.)

This gives the distance between the to most exterior screw holes of the front feet of the machine. I mark these two with a center punch (at the distance from the edge of the table that you like).

For the third hole, for a rear foot now, which shall be the the hole for most exterior screw on one of the rear feet, we first need the distance between the most exterior screw holes of the Y Axes:

If you have your machine already, you take one of your Y Axes, pin a center punch into the two most exterior screw holes and measure this. This gives measurement y.
Be sure to hit the exact center of the screw hole in the aluminium block of the foot.

If one doesn’t have his/her machine yet, one would need to calculate the distance between the two most exterior screws of the Y-axes’ feet:

According to ‘Woodworker Dimensions’ on page 15 of the manual, the distance between the two is (in inches):

42.347 - 2 × 0.344 = 41.659

(NOTE: One should check if these statements are true, as in this posting (Machine Dimensions) first number is 42.597 instead.)

As we can see, this is no square, since the dimensions differ, so it’s a rectangle. So in order to calculate the diagonal of a rectangle, we use the pythagorean theorem:

c² = a² + b²

so we need to calculate c:

c = √(a² + b²)

or, in programming:


Here we go:


Result: The diagonal between the most exterior screwholes of one front foot and one opposite rear foot is 60.037 inches.

So, the third hole we want to mark is on the intersection of one line backwards from the first marked front hole with length y, and one diagonal line measured from the other marked front hole with length diag_rectangle.

If I apply these measurements accurately, the result is that the angle between x and y is a precise right angle.

The (good) question is how to measure this. Good roll-up tape measures have a pin for drawing circles. That’s the one I use:

Pocket tape BMI 405 VISO

After all, when done with assembly and first run, accuracy can be checked with a two-sided job or a tiled cut (e.g. see “Tiled cut issues”)


It’s extremely difficult without proper machinist’s tools & know how to accurately square a machine like this. Measuring diagonally is great, but what are you measuring to, and what are you measuring with? Eyeballing a diagonal measurement to within 1/32" with a tape measure is about as close as you can hope to achieve with a tape measure.

And I will reiterate: the machine is NOT self-squaring. You simply can’t expect even a precision 2" wide bolted assembly to ensure squareness across the entire length of the gantry. It will be close, but not close enough. While the machine is easy to assemble and fairly accurate, it’s only going to be as accurate as how square you assembled it.

FYI: the theoretical diagonal measurement from inside corner to inside corner on the Woodworker is 52.197" But let me be perfectly clear: this corner-to-corner diagonal measurement will only ensure squareness if both Y rails are exactly the same length.

1 Like

I agree Bill. Also I imagine there is some variability/play in the two screws that hold each tube into the blocks at either end.

I have been working on my Onefinity build for a few weeks now - I am using a Masso G3 controller, as well as homing sensors.

To test for square, as well as accuracy and repeatability I used a CNC pen holder I had designed and 3D printed, then fitted with a sewing needle as a test tip. I taped small squares of cardboard to various test locations, and lowered the Z axis until the needle made a hole in the cardboard. Measurements between needle holes were made with a metal ruler and tape measure with 1 mm increments (I am saving up for a precision linear scale).

I set up a work offset, and repeatedly jogged between various start positions, and home and the work offset. Happily the needle lowered into the exact hole in the cardboard every time at each location (I felt confident after about 5-6 replications).

I tested my X and Y axes for square and found them to be out by 1 mm (using 600mmx450mmx750mm right angle triangle reference points). Before working to resolve this, I thought it would be best to first calibrate my X and Y axes. I went through the calibration process two times each for the X and Y axes until my distance readings were as accurate as possible using my measuring tools. (I do not know if the 1F controller has this option). After rehoming, and resetting my 600m and 450mm needle reference holes, I was now showing square. Keeping in mind I am only as good as my current measuring tools, and prescription glasses.

My set up is still in the testing phase, with my CNC temporarily mounted using 3D printed mounts I designed - see below. The idea is that when I mount it to its final resting place - probably a torsion box - I can make sure it is set up perfectly, then mark the exact position of the 16 screw holes using the alignment holes in the posts of each mount. So far, using screws in the four external mounting holes has been working extremely well for testing purposes. Keep in mind the only dynamic testing has been a first run of gcode to test the drawing ability of my marker holder.


Hey Bill,

for drawing circles or constructing intersections of lines, with the tape measure model I mentioned above, I use its center pin and on the other end I draw with a drop action pencil. It surely depends how good your eyes are and how much you have tremor, but it’s much more accurate than just a ruler or a tape measure without circle pin.

For simply measuring distances, I like to use a flexible ruler made of spring steel. Its accuracy is 2004/22/EG Class II which means 0,5 mm tolerance for one meter and 0,7 mm for 2 meters.

Generally the accuracy of a ruler or a tape measure is important. But if you use one that is not that precise, it does not matter as long as you use the same one for all the measurements of one project (here: assembling the onefinity cnc).

For geometrical construction on wood projects, I also use a beam compass. To set it up, one can put a steel ruler or a meterstick on a table and adjust the trammel points to the exact measurement that one wants to apply. I use these: Trammel Points. These may also work: Beam Compass, Beam Compass Heads

For the exact distance between the feet, yes, this depends on how accurately the rails were cut, and on how accurately the feet were fixed. I’m a bit worried about the fact that the dimensions in the two statements from Onefinity mentioned above already differ(!).

But if one has his/her machine already, one can measure it on his/her individual exemplar.


1 Like

I should add that the accuracy of the method described above of constructing the rectangle for the four most exterior screw holes by constructing them geometrically can be verified by constructing the fourth and last mark the same way than the third, and then measuring the distance between the two resulting rear marks. If you measure the same distance than on the two front feet screwhole marks, then you definitely know that your measurement method is accurate and that it’s perfectly squared. Otherwise front and rear distances would differ.

Nice method for checking accuracy.

I just asked myself what will arise if one mounts it onto the Onefinity Quick Change Wasteboard (QCW) Frame. Its squareness relies on the aluminium profiles machined.

1 Like

Tom, this is a most excellent idea! Love it!

1 Like

I was just about run the program for my waste-board when I realized that I have the same issue. I can’t believe the instruction video does have you check diagonals.

Not sure I totally follow the bolt holes method as there is enough play in the holes to still allow a margin for significant error.

Mine doesn’t seem to want to square. I am wondering if my Y bars could be holding it skewed. I will try loosening it tomorrow.

I have an idea for a 3D printed three sided jig at each foot that could be used to get it into position and hold it while tightening it down.

Another idea of onefinity would be they could provide a bolt hole template printed on Mylar or plastic that could be laid out.

I designed and used a template - see my earlier post above - to set up my 1F and locate the screw holes. The plastic can be left in place once the final location is determined, with the benefit of raising the CNC a few mm to help avoid binding. They can also be used to mark the holes, then removed and the holes drilled and the CNC screwed in place,

I meant a full sheet template like you would need to print out on a plan size paper but would you mind sharing your design files or an STL, I would like to use it.

I know the could anyone recommend a long precise measurement device? I don’t think dads old Stanley tape measure will cut it for this one.

I was thinking about maybe one of these
Certified Lightweight Aluminum Ruler, 2 M Long, Right to Left, mm and cm Graduation Marks | McMaster-Carr

Certified Lightweight Aluminum Ruler, 78"/200 cm Long, Left to Right, mm and 16ths Graduation Marks | McMaster-Carr But I think this might be tricky with different measurements on each side.

Unless you or someone can print on a single large sheet I think you might get error in hole location when taping sheets together. I used a 3-4-5 right angle triangle method described above and it got me to less than a mm. I did calibrate for accuracy first, but am using a different controller.
I am happy to share my files:

CNC final base hole template v2.f3d (124.0 KB)
CNC final base hole template v2.stl (75.9 KB)
CNC final base hole template v3.dxf (414.1 KB)


I found this discussion very helpful and the parallelogram phenomenon explains why I couldn’t get the correct angles for some test projects.

Using the diagonal measures, I am able to get it squared up. However, when square I’ve discovered that the Y-axis motors can’t move. Basically it’s either square or able to move on the Y-axis, but not both. Would appreciate any insights or ideas that might help resolve this.

Hey woodsnipper,

it could be that the Y ball screws remained at non-squared positions.
Be sure beforing squaring, i.e. before making a rectangle of your machine’s Y Axes, the controller must be powered off. Then after squaring, manually shift the X Rail to the front. It should touch the front blocks on both left and right sides.

What exactly do you mean by “Y-axis motors can’t move”? Do you mean they don’t move when the machine is on and tells them to, or you can’t move them by hand when controller is powered off?

1 Like

Hi @Aiph5u, I took the following approach:

  • Aligned the front of the y-axis rails to the front of the table
  • Loosely screwed down y-axis mount on right side (one of the four mounting screws as described in the install video)
  • Pulled x-rails all the way forward
  • Fixed the left y-rail mount (one of the four mounting screws)
  • Pushed the x-rails to the back
  • Fixed a screw in mounts of back y-axis
  • Then measured diagonals
  • Made minor adjustments to front left side y-position mount (within the play of the screw hole)

To your question, the y-axis motors couldn’t move very far because of what most likely a non-parallel state.

Based on your comment, I have since (with machine off) pulled the x-rail forward again and fixed the rest of the screws. Diagonals look really good and it runs smoothly.

However, I’m still not able to get 90 degree angles with basic cuts (using controller straight up the y-axis and straight across the x-axis). Remarkably, it is giving me a trapezoid (narrower at towards the back relative to the front on both sides.


I’m wondering if it’s because my table on which it’s mounted is not perfectly level or flat. i.e. perhaps there is a z-axis contribution to the problem in my situation. Thought I could sort that with a leveled spoil-board, but something clearly is still off.

I appreciate the insights!

What is the difference in X measure now when comparing the front vs back of the Y travel (closest vs farthest side of the ‘parallelogram’? Is it possible that some of the through bolts that hold the X/Y tubes in their blocks are loose? (There is a bit of ‘play’ possible in these holes compared to the bolt diameters). When making your test cut for square, are you using the MDI to enter g code commands to make a rectangle, or are you running a file that makes a test rectangle?