Can I also bump this. Thanks in anticipation of replies, bonus thanks to get this working
My symptoms are similar.
1. Ensure CNC homed
2. Move cutter so it is above the mobile probe (probe is a RATTMMOTOR
https://www.amazon.co.uk/gp/product/B08NSQNJRV/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1 )
3. Press Set as Mobile Probe position.
4. Move cutter so it is level with top of workpiece (setting the Z height jus off to the side of the workpiece for testing )
5. Set Z zero
6. Press Reference current as workpiece
7. Press Start Probing
8. Cutter moves to X,Y of probe at same Z level (I'd rather the Z move up to Z machine zero coordinates)
OK this was fixed by setting Greater Z is safer in G17 and setting Z height to 0.5 which prevents triggering Z top limit switch 9. Cutter moves up to the Z height
No longer the case since adjusting setting in step 810. Cutter then is moved down to touch the mobile probe
11. Cutter moves back up a small bit then back down for fine adjustment then returns to Z hieght to original position
12. M6 is called, tool changed and cutter moves above mobile probe again then repeats the touchoff on the probe.
13. On return to where the Reference current as workpiece was set the cutter/Z zero is always 8.47mm below the top of the material.
Below is the M6 macro I am using, I have added a small bit as I'm currnetly yet to sort out the VFD, connections and control the spindle with UCCNC.
// 1) We save XY coordinates machines, Z relative
// 2) Raise Z to maximum
// 3) We are going to the zone of tool changing
// 4) We ask that the tool changed?
// 5) We are going to where milling stopped
// 6) We ask a toolsetter in place?
// 7) measure mill
// 8) we subtract the height of the plate and write as a new zero
// 11) go down to the relative height
// All heights store in machine coordinates
double ToolChangeX = 0; // Coordinates of the zone tool change
double ToolChangeY = 200; //
double ToolProbeX = -0.2638; //Tool Probe - Added by DF
double ToolProbeY = 373.150; //Tool Probe - Added by DF
double SafeZ = 0; // Safe Z in machine coordinates
double ZRetractHeight = 15; // rebound height for more accurate measurement
double FastRate = 250; // The speed of the first "fast" touch
double SlowRate = 25; // The speed of the second "slow" touch
double Zmin = -100; // Z search distance
double XOriginalPos = exec.GetXmachpos(); // We get current machines coordinates
double YOriginalPos = exec.GetYmachpos(); //
double ZOriginalPos = exec.GetZpos(); // and relative Z.
double newZpos = 0; // Calculated Z.
double OffsetDiv = 0; // The thickness of the measuring plate - Changed to Zero as using a bed mounted probe
// Help
// G91 mode of operation in increments
// G90 absolute coordinate mode
// G53 Mode of absolute coordinates for one command
// G31 move to sensor worker
// Turn off the spindle
exec.Stopspin();
MessageBox.Show ("Check Spindle. Press OK when Spindle is Stopped");
exec.Wait (200);
// All Macro in increments are working
exec.Code ("G91");
// Climb to safe height
exec.Code ("G53 G00 Z" + SafeZ);
while (exec.IsMoving ()){}
exec.Wait (200);
// We go to change the tool
exec.Code ("G53 G00 X" + ToolChangeX+ " Y" + ToolChangeY);
while (exec.IsMoving ()){}
exec.Wait (200);
MessageBox.Show ("Press OK when toolchange is complete");
exec.Wait (200);
// //Move back
//exec.Code ("G53 G00 X" + XOriginalPos + " Y" + YOriginalPos);
// while(exec.IsMoving()){}
// exec.Wait(200);
// warning moving to tool probe X Y - Added by me DF
MessageBox.Show ("OK to move to Tool Probe Position");
exec.Wait (200);
exec.Code ("G53 G00 X" + ToolProbeX + " Y" + ToolProbeY);
while (exec.IsMoving ()){}
exec.Wait (200);
// original script carry on
// warning to set Toolsetter
MessageBox.Show("Toolsetter installed and ON?");
// Measurement on Toolnetter
exec.Code("G31 Z" + Zmin + "F" + FastRate);
while(exec.IsMoving()){}
exec.Wait(200);
exec.Code ("G00 Z" + ZRetractHeight);
while(exec.IsMoving()){}
exec.Wait(200);
exec.Code("M07");//We blow the cutter to get rid of chips
exec.Wait(1000);
exec.Code("M09");
exec.Wait(200);
exec.Code("G31 Z" + Zmin + "F" + SlowRate);
while(exec.IsMoving()){}
exec.Wait(200);
newZpos = OffsetDiv;//At the time of touching the plate, the end of the cutter is located on the thickness of the plate above the place you want to count the zero axis z
exec.mainform.sumoffsetcontrol1.G54.newCzinput(newZpos);//We write down a new height in all coordinate systems
exec.mainform.sumoffsetcontrol1.G55.newCzinput(newZpos);
exec.mainform.sumoffsetcontrol1.G56.newCzinput(newZpos);
exec.mainform.sumoffsetcontrol1.G57.newCzinput(newZpos);
exec.mainform.sumoffsetcontrol1.G58.newCzinput(newZpos);
exec.mainform.sumoffsetcontrol1.G59.newCzinput(newZpos);
// Move back
exec.Code ("G53 G00 Z" + SafeZ );
// Warning to start spindle
MessageBox.Show ("Check Spindle. Press OK when Spindle is running");
exec.Wait (200);
exec.Code ("G53 G00 X" + XOriginalPos + " Y" + YOriginalPos);
while(exec.IsMoving()){}
exec.Wait(200);
//Return to absolute mode
exec.Code ("G90");
//Lower Z to the memorandum memorized
exec.Code ("G00 Z" + ZOriginalPos);
while(exec.IsMoving()){}
exec.Wait(100);