Weird offset in CNC cut after tool change

Hi all, I’m trying to figure out why the second operation I’m running with a second (smaller) bit is causing a repeatable offset in all three axes. I’m using (free) Fusion 360.

My first (roughing) cut is done with a 6mm bit in an ER-11 collet that I bought online. The second (finish) pass is done with a 3mm bit from Amazon. Neither bit has tool information available so I measured them with a manual vernier caliper (yes I need to buy a digital one) and entered custom tool data in Fusion. It’s certainly possible that my numbers are off, but I don’t think that would explain my problem.

Every time I run these operations, the second bit’s pass is 1mm too deep in the Z direction, ~0.7mm offset in the positive X direction, and ~0.7mm offset in the negative Y direction. This result is repeatable. I tried using 0.5mm “Leave stock” on the first pass and I’ve tried without, same result.

When performing the tool change, I re-set the Z position of the work origin (shorter bit) but I do not change the X or Y. I use the calibration card, and I’m using an origin on the stock that is not cut.

I’ve included my gcode files. Let me know if I should upload anything else.

circle_test_30mm_finish.cnc (66.4 KB)
circle_test_30mm_rough.cnc (38.6 KB)

FWIW I’m using a SM2.0 A350.

I have 0mm offset in all dimensions on my stock in Setup.

I’m using the same body for all toolpaths.

My cuts are “2D Pocket”, both tools running 400 mm/m at 12k rpm.

It’s pretty hard to tell in the photo, but the rougher area is the remaining stock from the roughing cut. You can see it at two levels - the upper circle and the deeper circle. You can also tell that the circle is more of an ovoid due to the second cut being offset. There’s also a “lip” caused by the second cut being too deep, despite the gcode cutting at the same Z position.

I loaded your gcode in ncviewer (both files) but don’t see anything obviously wrong with them.

What actions do you do when changing the tools?

  • Move the toolhead high enough so you can change the tool
  • Adjust your z-origin for the new tool (bits have different lengths) (Make sure you only change the z-one!!)
  • X and Y origin should remain unchanged

Or does your process look different?

Yup, that’s correct. The toolhead automatically moves to max z-height after the first operation concludes. I just swap the collet and bit and bring it back down (Z only) to the calibration card. On close inspection, it looks pretty much exactly right on the X and Y, so I don’t think there’s any drift or anything. At least, not by a full mm.

I would guess there’s something off with your settings in fusion.
If you can share those we can take a look.

You’ve tried repeating the same tool path and get identical results?
If you home and then go to work origin (without changing bits) does it return to the same place?


Sure, what file should I upload from Fusion? Or would you like screenshots instead?

I have repeated the same tool paths (one rough followed by two finish paths with the smaller tool) with different work origins and observed the same offset.

If I set work origin with either tool, then Home and then use “go to origin” it brings the tool to the exact same (to my eyes) spot.

Here’s an exported f3d file, if that’s the right one…
Circle Test 30mm new (133.8 KB)

Disregard, they visually line up pretty well…the perspective had me thinking there was an offset

Good catch I didn’t see that… my guess is that because the rough is using a 1/4" bit and the finish is using a 1/8" bit, so those lines are the centers of the bits. Either way, I didn’t intentionally create the offset… any idea where in Fusion settings that’s happening?

Sorry, false alarm.

I’m wondering if this is being caused by a controller glitch, some people have reported errors in starting jobs.

Maybe modify the gcode to drill a small hole in the origin, or just use a sharpie dot so that between jobs you can verify the origin isn’t changing when you start the job.

Another option would be to see if you get different results by running from the touchscreen vs “playing” the file in luban (without sending the file via wifi). Or even USB vs wifi.

I actually did mark the origin with a blade and sharpie, so I’m pretty confident the origin is correct. I’ve been doing everything via USB stick, not wifi, due to wifi being out of range for my workshop.

My operating assumption is that the cutting data I measured/guessed for these two (cheap) bits isn’t accurate enough… OR the climb chatter on the 1/4" bit (there is some chatter during cutting) is just really consistent chatter, causing the offset.

Unless anyone has any ideas re:Fusion, I’m going to try swapping out the 1/8" bit and see if the behavior changes. I’m also going to try running the 1/4" with a bunch more depth passes and a slower feedrate to see if that changes anything.

1 Like

I ran the 1/4" bit slower (200 mm/m instead of 400) and halved the stepdowns. The finish is better, but the offsets observed are exactly the same.
I then ran a second test with the old 1/4" speeds and swapped out my cheap 3mm for the 1/8" double flute that came with the SM. Again, the finish is better (double flute vs single), but the offset is identical.

I now believe the issue is caused by inaccurate geometry on the 1/4" bit. My next attempt will be to tweak the tool settings for the 1/4" bit. After that, I will run all passes with the 1/8" bit. After that, I will be forced to manually offset the work origin to compensate for the error.

Still open to any other suggestions. :slight_smile:

Update 2:
I ran the 1/4" bit with tool config set to 6.35mm instead of the 6mm read by my caliper, and then did the finish pass with the “known” SM 1/8" bit. The result was BETTER, but the offset still exists. It appears to be ~0.5mm instead of ~1mm, but in the same directions. Interesting.

I also ran the entire job with my 3mm bit from Amazon, and the result is perfect, no offsets… but it took 13 minutes and I need to do hundreds of these. (Hence the desire for a 1/4" roughing first.)

Next attempt is to intentionally offset the work origin on the 1/4" bit to compensate for its apparent wobble. Final attempt will be to see if I can just live with it.

I had a quick look at your fusion file but didn’t notice anything obviously strange (to me).

I find measuring bits by caliper rather difficult (unless you can measure at the shaft and that has the same diameter). Anyway, even if was the wrong size, the hole would be over/underdimensioned, not have that weird offset.

That confirms there is nothing really wrong with the toolpaths. But why do you want to do it with the smaller bit? The diameter of the center hole is 9mm, your bigger bit is 6.35mm. So you don’t really need the smaller one?

Additional questions:

  • the collet is definitely mounted well in the head? (I’ve had one in a bit crooked once)
  • Do you insert the bits deep enough into the collet? If they don’t grip them at the back of the collect, there does tend to be wobble and undesired results.
  • Are you suing backlash compensation and/or have you been making changes to those values?

Great questions @brvdboss, thanks for taking a look.

  1. I’m very willing to assume my caliper measurements are off, but the problem did (slightly) improve when I changed the tool config. Maybe the cutting edge of the bit is a little off-center and that’s causing fusion to run it too far into the stock on one side… who knows.
  2. I want the smaller bit for a finer finish. I find it hard to get a smooth (enough) face on the circles if I rely on the 1/4"… still, it’s a good point, I’ll run a test with 1/4" finishing passes and see if I can make that work.
  3. I take the holder entirely off twice per job (to change the collets). I always bottom out the bit (in the collet) on a flat surface before re-attaching the holder to the head. It’s certainly possible the collet has been crooked, but not every single time. Do you think I should instead bottom-out the bit in the head? (Push it up against the head before tightening it?)
  4. I don’t know what backlash compensation is or where to configure it. Any suggestions for values I should try?

EDIT: I just ran a 1/4"-only job, and even with 2 finish passes, a repeat pass, and a finish stepdown the face finish was still a little too rough for my project. It would work if I hand-sanded it, but… ugh.

For what it’s worth, I ran a job with an intentional work origin offset (between tool changes) of 1mm in the Y direction and 0.1mm in the X direction and I am able to reliably compensate for the issue that way. Worst case scenario, that’s a solution even if it’s a kludge…

You can play with the overlap of the different passes to improve the surface finish. Or is that what you meant with the finishing pass? You can do that one with a small overlap so you get a flatter surface finish. I assume you’re using a flat-end mill?

Sounds good to me like that.

It’s an option to compensate for the inaccuracies of the lead screw. If you move 10mm in a direction, and then 0.01mm in the opposite direction, there is a good chance nothing moves due to play in the lead screw. Using backlash compensation you can correct that in software.

But I don’t think that is the issue here. However, if you set this value too high, you sometimes do get weird behavior, but other people are more knowledgeable about that topic than I am. If you had played with the default values, it could have been an explanation, but probably completely unrelated in this case.

However, if you have a good flat-end bit, you should be able to get a good surface finish. But do the finishing pass with a small step-over. (I think the default is 1/2 of bit diameter) set this to 1/3 or something like that, and this pass can go rather quickly in my experience. As you’re not cutting away anything significant anymore.

But I must say I have very little experience with acrylic, mostly wood so far. And acrylic does have a tendency to melt if you go too slow.