Diagonal skew with Omtech K40+

Hi folks,

I am using Lightburn 1.6 with an Omtech K40+

The first time I noticed an issue was when I cut circles out of plywood. They always turned out slightly elliptic (1-2mm deviation in diameter).

I tried calibrating the X Axis (it was slightly off). Now both axes are perfect for horizontal or vertical lines. However when printing diagonal lines, there seems to be some kind of skew. I tried cutting the following square (120x120mm):

It turns out to be 119.0 x 120.5 mm, No matter whether it’s plywood, cardboard or paper. Opposing edges are exactly the same length, so it’s still a closed rectangle. The lines are also perfectly straight. They are just the wrong length.

I upload the gcode of the rotated square here:
square.gc (496 Bytes)

The same square without rotation is cut exactly the specified size.

Any ideas on how to solve this would be highly appreciated

Best

Horst

Look carefully at the beam alignment and spot shape, because the optics may not be set up correctly. Diode lasers are notorious for having rectangular spots, but a CO₂ laser spot can become elliptical for a variety of (increasingly unpleasant) reasons.

Also, if you’re measuring the size of cut-out shapes, you must take the kerf size & shape into consideration. Rather than that, mark lines on the surface using low-power vector motions and measure those from center to center.

If the machine has a red-dot visible pointer, you can calibrate the axes using a good-quality metal scale:

Thank you Ed,

however I already did calibrate the X axis and with straight lines the sizes are exactly as specified. The beam seems round to me, as far as I can tell.

I also did another test with lines on cardboard.

The horizontal line at the top is 180mm long (as specified). I drew the dashed circle with that radius for orientation.
Then with each subsequent line, the length goes down to 179.0mm. At more than 45°, the length goes up again. So error seems to be something along the lines of sin(2*alpha). Very weird.

Run this test pattern on cardboard with optimizations turned off to see if anything shakes out:

GrundTest.lbrn2 (76.4 KB)

It looks a lot like mechanical backlash, but I’m not convinced yet.

Looks alright to me. However, circle diameter varies between 74 and 75mm.

Here is a closeup of the circle.

That definitely rules out all of the usual mechanical problems!

Aaaand all four sides of the rotated square are exactly 120 mm, so the G-Code is fine.

One possibility: try flipping both X and Y Step Port Invert bits to reverse the polarity of the Step pulse to the motor driver chips. I think you can flip those as discrete switches through Edit → Machine Settings → Vendor Settings or do it on hard mode by inverting the bitmask shown by $2.

That’s based on a feeling this resembles the Ruida misconfiguration caused by the same problem. If the circles suddenly start behaving, that’s what it is.

OMTech is mum about exactly which controller they’re using. What does the Console window show when you fire up the laser? There should be some identification appearing immediately after a reset.

I wouldn’t say that. Just noticed that the Y axis is not placed fully perpendicular to the X axis:

I guess something is slightly off mechanically… It’s not the belts however. I tightened them without any change.

That would count as an unusual problem for a CO₂ laser, because it means the frame is skewed or the linear guides are not perpendicular. Either one is hard to accomplish in a rigid box cabinet and harder to correct when you find it. :frowning_face:

However, IMOs an out-of-square frame (or whatever) should affect both the circle and the lines you showed earlier: the circle would be slightly oval, the lines would exactly match that shape, they’d all be off by the same distance at the same angle, and you’d never notice the error.

It’s not the frame, but the angle between the axes. After further investigation, I believe the X axis is the culprit. The X axis is mounted on two carriages which are on top of the left and right Y belt. So I should be able to correct this by moving only one belt until the axes are perpendicular.

An easy way