Why Your 4040 CNC Cuts Out of Square — and the Weekend Fix

Why Your 4040 CNC Cuts Out of Square — and the Weekend Fix - A step into the workshop.
Stop Wasting Wood
Generate clear cut diagrams instantly with our new Cutlist Optimizer. Plan your cuts to make your next build easier.
Every few weeks a client asks me for a run of shelves. Not cabinets, just shelves: clean edges, consistent width, square corners. And every time, I hear the same follow-up from people in the hobby-CNC world: "My machine repeats to a tenth of a millimeter, why does my shelf come out a rhombus?"
The question contains its own answer, but you have to unpack it. I've come to believe that most frustration with sub-$1,500 hobby CNCs isn't about the machine's motion at all. It's about the difference between two properties that spec sheets quietly conflate: repeatability and squareness. One is a controller problem. The other is a mechanical assembly problem. Confusing them wastes weekends.
What the Spec Sheet Does and Doesn't Promise
Take the Genmitsu 4040-PRO MAX, a representative 4040-class machine. The Maker's Chest lists it at $899.00 (regular $969.00), with a 400 × 400 × 78 mm work area and a 710 W spindle. The retailer's listing claims repeatability "down to ±0.1 mm" and machine accuracy of ±0.01 mm.
Here's the honest reading: those numbers are positioning claims. They say the machine can return to a coordinate. They say nothing about whether the bed is square, whether the gantry sits perpendicular to the rails, or whether the shelf you cut at the front of the bed matches the angle of the one you cut at the back. Mechanical squareness is an assembly-level property, and no spec table I've seen for these machines addresses it.
That's not a knock on the manufacturer. It's just a category error to read "±0.01 mm accuracy" as "square parts." The two live in different places on the machine.
The Diagonal Test: Your Ground Truth
Before you fix anything, you need a measurement. The standard shop method, as Hendrick Manufacturing describes it for resquared sheet stock, is simple: measure both diagonals, and the squareness deviation is the difference between them divided by two. Their worked example: diagonals of 84.75" and 84.50" mean the sheet is 0.125" out of square.
Nothing stops you from running this test on the CNC's own output. Cut a test rectangle, measure both diagonals with a tape or calipers, halve the difference. The only way to know where your machine lands is to measure it.
Why Gantry Squareness Is a Real Problem on These Machines
The Shapeoko CNC A to Z reference, maintained by the Shapeoko enthusiast community, documents the root cause well. Gantry squareness is checked by pushing the gantry to the front of the Y rails, tightening the front screws, sliding it to the back, and tightening again. In the best case, that's the whole fix. More commonly, one side plate makes contact while the opposite end shows a gap. The X-extrusion sides aren't perfectly square, and tolerances stack up in the side-plate and V-wheel assembly.
The documented fixes are refreshingly low-tech: shims between the X extrusion and the side plates on opposite ends. Folded aluminum foil works. So do feeler gauges. Slightly different washer thicknesses on front versus back V-wheels can rotate a plate into square. The community reference notes that filing the extrusion end flat is not easy to do correctly for the casual hobbyist, and I'd agree; it's the kind of operation that makes a part worse if you're tired.
Notice what this means: your squareness error is a static mechanical condition, not a controller error. Recalibrating steps-per-mm won't touch it.
Belts, When the Machine Has Them
Even a mechanically square gantry can cut out of square if the two sides don't move it the same distance. The Shapeoko reference covers belt-driven machines, where belts run a 2 mm pitch — 40 motor steps equal 1 mm of travel — but tensioned belts stretch, which changes the effective pitch. If the two Y-axis belts are tensioned unevenly, the two sides of the gantry travel different distances under identical motor steps, and the gantry racks out of square. You notice it most when jogging from home at the back all the way to the front.
The community's measurement method is approachable. Pinch a known span of belt, pluck it, and measure the vibration frequency with a smartphone app — Gates, the belt manufacturer, offers a free one. A reasonable target range is 100–140 Hz; the community author aims for about 120 Hz and recorded 109 Hz on his own machine. The key isn't hitting an exact number. It's that both Y belts read the same.
If your machine runs ball screws instead of belts, this layer of the problem may not exist for you — but the gantry and wasteboard checks below still apply.
The Weekend Squaring Sequence
The full squaring workflow, in the order the Shapeoko reference documents it — and the order matters:
- Square the gantry to the Y rails, using the gap check at both ends of travel and foil or feeler-gauge shims as needed.
- Equalize belt tension if your machine is belt-driven, matching both sides in that 100–140 Hz range.
- Surface the wasteboard flat and parallel to the gantry plane.
- Tram the router perpendicular to the wasteboard.
Surfacing must precede tramming. If you tram first on an unmilled wasteboard, the board's tilt and thickness variation get baked into your tram adjustment, and you've squared the spindle to a warped reference.
On surfacing: use the largest cutter available — a fly cutter covers real estate fastest — and scribble pencil squiggles over the wasteboard before you start. After the pass, any remaining pencil marks are low spots the cutter didn't reach. It's a free inspection method. And if your wasteboard is MDF, seal it afterward with shellac, polyurethane, varnish, or lacquer to limit humidity absorption and MDF tearing, especially if you're using tape-and-glue workholding.
For tramming without an expensive two-dial tram bar: mount a dial indicator on a stub dowel in the router and rotate it by hand, or use a fixed dowel that catches the wasteboard on one side only, or check a machinist square against the router mount in both directions. Fixes include rotating the whole gantry around its axis via the side-plate screws, or shimming the router mount with folded foil. Unplug the router before you put indicators in place.
Where the Fixture Comes In
Here's the part I care about most, because it's where the machine stops being the enemy. Once the machine is as square as you can make it, add one more step: skim a dedicated squaring fixture in place on the spoilboard — a sub-plate you machine flat, square, and parallel on the very machine that will use it. Then register your parts against that fixture for every cut.
The logic is the same as surfacing the wasteboard: you're transferring the machine's own reference frame into the workholding, eliminating accumulated error from clamping to something you didn't control. A 400 × 400 mm bed becomes a repeatable position rather than a fuzzy zone.
I'll be straight about the limits here: I don't have published measurements proving how much error this eliminates, and I'd be suspicious of anyone quoting thousandths for it. What I can say is that the diagonal test gives you the before-and-after number. Cut a rectangle before the squaring sequence, cut one after, and let Hendrick's math tell you what you gained.
The Judgement Call
Is a 4040-class machine capable of a square shelf? I've come to believe the answer is yes, with caveats that are actually useful. The machine's positioning claims — ±0.1 mm repeatability per the retailer's listing — describe a controller that can hold a coordinate. Squareness is your job: shim the gantry, surface before you tram, seal the MDF, and skim a fixture you can trust.
Then run the diagonal test and stop arguing with yourself. If the two diagonals agree within your tolerance, you're done. If they don't, you now know which layer of the machine to open next — and it's never the one the spec sheet was talking about.