Help with tool path - each pass is offset from the previous pass

Hello, I’m still very early on my CNC journey and have encountered a new issue with my tool path. Each pass is offset on the x axis by about 16mm from the previous pass, please see the image below (I’ve also included a screenshot of the Estlcam project and the Gcode file).I reinstalled Estlcam and set the settings per the V1E guide. Do I have an incorrect setting somewhere? Many thanks in advance.

LysterVF.gcode (355.6 KB)

I think it might be an installation issue, the wire for the IO controller may not have had enough slack. I’m re-routing the wires/dust collector hose now and will try again!

So, it’s not the wiring/hose routing… I re-routed them then jogged the cutter to all 4 corners and there are snags. Then I ran the file again and the same thing happened, although this time the offset is smaller than the first time (about 11mm). So I’m thinking it’s a hardware issue.

Also, I didn’t move the workpiece and ran the same file but this time it started quite a bit further away than the first time. Please see image below:

Do you have endstops? If so run, “home” your axis. Then run the program, then when the issue happens, home your axis again. It should tell you how much you are out of line. If it says anything more than 0,5 mm then something is moving that should not be moving (or something that should be moving isn’t moving)

Check the grubscrews! Also check belt-tension.

Ahhh man, I was hoping to be the first to say grubscrews, dang it!!

So I’ve tightened the x axis belt, and tightened the grub screws on the x axis pulley. The shifting has been reduced significantly but still off by a couple of mm.

When I disconnect the power and turn the pulley by hand, it’s harder to turn one way than the other, could this mean the belt tension needs to be loosened?

Honestly take a step back and look at everything! Theee is no reason for it to be harder one way than the other. Belts are not supposed to be real tight. They can stretch that way.

We see the front, can u please take pics of the belt, stepper, etc?

I appreciate you taking the time to help with this, many thanks in advance! Please see some photos below:

The photos with my fingers show how much slack is in the belt currently. I tightened the slack to this amount at the same time as tightening the grub screws, and the shifting reduced significantly, although it’s still there.

Please let me know if there’s anything else I can capture (either photo or video) to help diagnose.

First off, I agree with Riley. The X axis should not be more difficult to move in one direction vs the other. Something is amiss.

It may be worth double-checking that there’s not something wrong with the belt routing through the idlers and across the geared pulley. The picture shows the bottom of the belt riding on the pulley, so there’s a chance it’s dragging or misaligned on the way through.

What controller are you using, with what firmware?

Double check the idler pulleys . I suspect that the belt is routed on the wrong side of the idler pulley,most likey on the side of the direction of the side that pulls hard.

I’m using Fluid NC

Thank you everyone for your input. I disassembled the core, re-applied blue loctite to the grub screws and re-assembled everything today. I was extra careful with routing the x axis pulley.

I’m off for a trip this evening and will try to run the file again once I’m back next week.

I’m still having the same problem after the steps in my previous post.

I also did the square test calibration after reassembling the core by marking 4 corners and measuring the diagonally and it was spot-on.

My thought on next steps is to:

  1. Use a fresh router bit - maybe the current one is dull and causing the pulley to slip since it’s not cutting fast enough?
  2. Buy new pulleys and belts for all X and Y axis steppers, unless there are other suggestions?

Here is a photo of my Y axis belt going through the pulleys, does it look correct? I don’t think it’s wrong since I was able to cut the “crown” and the strut plates without issues when I first got the machine.

I don’t know anything about that machine, but shouldn’t those be smooth pulleys and are there smooth pulleys where those toothed pulleys should be?

Yes but that would not cause a problem, may wear belt but not cause a problem, my MPCNC had them by accident.

Ok here may be an important question! Did this just start happening? It looks like you were able to cut before. You cut your braces, correct? Look for wires getting caught! One time this happened to me and the wires were getting caught on something in the carriage causing missed steps. Also remove bit and turn power off, move back and forth, do you feel any tension anywhere.

Not sure if it will help too much but what about creating a gcode file for a simple 100mm x 100mm square, set settings identical to what you have been using. Then run that file at X min, then close to centre, then also X max. Curious to see if there is any difference in offset at different x positions that could indicate some issues at particular points on the gantry?

EDIT: Also have you checked your dust extraction and cables? Is there perhaps a snag caused by one of them.

Another thing I noticed, it seems the whole shape is offset? When each pass happens normally it should trace the outline, then step down as it gets back to the beginning and continue. Is it lifting and then starting another whole new cut or is it continuing the current cut but just moving early? In the image below, does it cut red, then lift and move and cut blue completely offset? If so what depth is it cutting to (measured depth not programmed depth). Or is it cutting red and then steps down when it gets to the intersection in green and starts moving along Y so the cut is fully offset?

Have you let the program continue to see if it offsets on the next pass if there is one?

The gcode seems fine. Are you using the same spec steppers as in the build guide? Such a clean offset surely has to be belt/pulley/stepper related

If you can find something physically wrong with the machine, then it’s useful to focus there. I’m not sure what the clue is supposed to be about moving it one way or the other. Once the motors engage, it should skip steps to move either way.

Let’s think about this aloud though:

  • It’s not flex. If it was, you would see some parts off more than others.
  • Is the entire second pass off? Or does it skip at a certain part? Does it skip at the same part in all tests?
  • One way it can skip is if the motor skips. This is when the forces exceed the holding power of the motor and it jumps to a new location.
  • One way it can skip is if the motor pulley slips on the shaft. Seems unlikely since you used locktite and retightened the grub screws.
  • One way it can skip is if the pulley jumps on the belt. Given the routing of the belt and reasonable tightness of the belts, that seems unlikely.
  • One way it can skip is of the software tells it to. Did you post the gcode somewhere? I didn’t see it. What CAM are you using? Seems unlikely the CAM just picked a different X since it was different between the two passes.
  • One really annoying way it skips is if you have intermittent wiring issues. These are a real pain to diagnose. Especially if they only happen when in a certain location on the table.

There are a few other things you can test to narrow down the search. For one thing, the test crown is worth doing again. That is proven gcode that should be able to test out the hardware. If that works, then you should wonder why it does, but your gcode doesn’t. Maybe you’re using different speeds and feeds or maybe something is wrong with the second layer.

Another thing is running the same gcode in HD foam. That removes all of the load from the bit. If that works, then the gcode is probably too fast. It isn’t a perfect test. But if you have any backlash or interference or weird gcode issue, then it may also show up in the foam.

Thanks again for everyone’s input.

I took your note on wiring causing issues, so I decided to remove the IOT relay (I added a very long wire between it and the controller to facilitate a clean install), and the machine worked perfectly on a test cut. I made. 120mm x 120mm square and it’s perfect:

Now I’m going to shorten the wire on the IOT relay and see if it works.

I very much appreciate everyone’s time!