My mpcnc works great except it starts carving 3mm to high with or without touch plate. If your doing a large piece it goes through several layers before actually coming into contact with work piece. I’ve tried manually homing z and even made sure it knows where i want z0 to be but when you run a job it starts 3 mm too high.
How are you setting Z=0?
What are you using for CAM to create the gcode job?
What does your starting code like?
How do you set up your machine to prepare for the job.
The machine has no inherent way to know where 0 is, it has to be told
Now let’s say that you use the touchplate to set Z=0 to the top of the work, but the code backs off 3mm yo allow you to remove the touchplate, but your CAM adds a
G92 X0 Y0 Z0 to the start of the gcode. This will then set that current position 3mm above the work as Z=0 undoing the setup.
Personally, I do not use code in the job to set the zero point, for pretty much this reason. I always set up my zero points before starting the job, but that is my work flow. Others do things differently and it works for them.