Z accuracy problems

Hello,
I have been working on an mpcnc burly build and i am struggling with the behavior of the z axiis. i am using the skr pro kit from this store to control, and a 500w spindle from amazon to do the cutting. I am using estlcam to program the toolpath. When i try to cut out the profile of a part, it fails to go through the material no matter how deep i set the depth of cut. Also when it finishes, it is supposed to go back to z0 and back to the home position and its dragging through the material to get back to home. My first thought was its missing steps and losing its position. if i zero out on a piece of paper, jog the z up 10mm and then back to 0 it feels like its moving accurately. I have tried 2 different stepper motors on the z axis and everything seems to me moving smoothly so im starting to wonder if its a programming issue. Anybody have this happen or have any thoughts? Thanks in advance for any input

Can you share your Estlcam settings and gcode of the file you are trying to cut.

1 Like

Absolutely,

here is a screenshot of program (hopefully it works the forum doesnt want to let me upload things yet)

The general settings of the software are set up exactly like the tutorial from this site

Im trying to post my gcode, but the forum will not let me upload files, or post links, and the gcode is too many characters for a post. any other ideas on how i can share the file? it wont even let me share a dropbox link.

Thanks for taking a look!

There is a short period of time from a new user before you can post links and uploads. Two thoughts. You can post a link that is modified link that is not recognized as a link but that we can easily modify back to be a link. The other suggestion is to post the top and bottom 30 lines or so of your g-code file as text. You can use a “pre” html tag if you want it formatted as text.

2 Likes

Ahh good call! didnt think of that thanks. here is a dropbox link

Not sure if this is related to your issue, but your g-code file does not set your coordinates to zero before cutting. Whether you need to or not will depend on your setup process, but a lot of CAM setups insert:

G92 X0 Y0 Z0

…before cutting. This establishes that the router is at the origin you specified when you authored your CAM. This can be inserted automatically in both EstlCAM or Repetier-Host if this is the solution to your problem.

Also your code puts your router at (0,0,5) at the end of the job. You might want to compare the position of your router at the end of the job to the one at the start. You should be 5mm a above your Z start position. This will help you determine if you are losing steps. Check the grub screws on the connector between the stepper and the lead screw, and verify that your bit has the same amount below the nut both at the beginning and the end of the job.

2 Likes

Like Robert said, you’re missing the initial G92 command.

In Estlcam, check your program start and stop settings:

1 Like

If that doesn’t work, try the test crown. That is known good gcode, so if that doesn’t work, something is wrong with your machine. If it does, then it is probably something with your CAM.

3 Likes

Thank you all so much for all your help this is very encouraging, I was kind of hoping it would be an issue with my code! My CNC program start was set to “at clearance plane” so im wondering if that was my issue the whole time. The first thing i ran was the crown gcode and it worked well. I will regenerate the gcode and try cutting again this weekend and report back. Thanks again!

1 Like

Yes, the “at clearance plane” would definitely explain why the G92 was not at the start of the gcode.

Let us know how it goes and always start out by cutting into something like foam board - less of a chance to break a bit or your machine if something goes wrong!

I don’t think so. I don’t think estlcam will send G92 ever. You have to add it to the starting gcode.

If you’re interested in some long form explanations, check out the coordinates 101 and gcode 101

Estlcam natively adds the G92 (at least if you follow Ryan’s setup).

If you modify the start to “At clearance plane”, then there is no G92.

1 Like

ok so i changed my settings to “cnc program start: at origin” and it fixed the issue of the tool dragging through the material at the end of the cut, which is great. However, im still not cutting all the way through the material. I switched to a simpler geometry for troubleshooting purposes. it is a 10mm square, should be cutting 8mm deep. when i gauge the cut in the material, i get about 2.6mm deep. my z step is set to 1mm and it does make 8 passes around the square which should be correct. with the settings changed, g92 was still not added to gcode. i ran it once like that, then i manually added “G92 X0 Y0 Z0” after the “G90” line. and both results were the same, 2.6mm deep.

Here is a link to the new gcode, with the G92 Line added manually
h t t ps://www.dropbox.com/s/c4hh7s4awy8kmnx/square.gcode?dl=0

Here are a couple screen shots of my settings, i have to make a second post for the other screenshot

Thanks again for all the help! i feel close to a solution hopefully its something simple im missing in the programming

That’s odd because my Estlcam definitely adds the G92 on it’s own. You could always throw that line here:

image

As for the gcode, it looks fine and you should definitely go down 8mm.

Sounds more like firmware to me. If you just try to move the Z axis from the LCD (Or from the serial terminal) does it move correctly? What are y our steps/mm set to in the firmware? That sounds like what I’d expect if it’s set the same in Z as it is in X and Y.

Ill add the G92 to that screen so it adds everytime now, thanks. If i touch off on a piece of paper to zero out the z, jog up 10mm and back down to zero, the tension on the paper feels the same. I am going to try to find an indicator mount to print so i can get some concrete numbers too. the steps have not been modified, they are set to X:100 Y:100 Z:400. X & Y seem decently accurate, a little out of square but not horrible. The Z is baffling me though. Thanks!

Just to keep it even simpler - if you make the same gcode, but only go down 1mm, does it actually go down 1mm or is it only a tiny amount (equal to 2.6/8 from your previous run)?

Great idea, i will try this and report back