I couldn’t post on my original thread for some reason.
WARNING I haven’t actually cut anything with this firmware yet. I only was trying to get the zProbe working. Let us know of anything that’s off if you are going to use it.
ZProbe using RC8 (RCBugFix) is now functional (see video) yeah !:
MPCNC doing a XYZ Probe to touch plate
Everything I changed is marked p3dCnC. Mostly Configuration.h, a little in Configuration_adv.h and replaced the endstops.cpp (see previous links in this thread).
My X and Y are reversed, so you’ll have to set those to true.
Use G38.2 X(somedistance) F(somespeed) to move toward the touch plate. Similar for Y and Z. 38.3 should also work, same but does not return an error if it doesn’t find the touch plate in the distance you specify as “somedistance”.
Here is the code I saved to a script. I place the bit above the touch plate approx 10mmx10mmx10mm from the corner:
; ZTouch script p3dCnC
; place bit approx 10mmx10mmx10mm over corner
G92 X0 ; set current position as 0,0,0
G21 ; use millimeters
; Touch off Z
G38.2 Z-20 F300 ; move in -z direction a max of 25.4mm, stop when Z_MIN activates
G92 Z10.4 ; Set Z to thickness of touch plate 10.4 in my case
G0 Z15 F300 ; raise 5mm
; Touch off X
G0 X-20 F3600 ; move over
G0 Z8 F300 ; move 5mm below touch plate surface
G38.2 X30 F300 ; move in -x direction a max of 50mm, stop when Z_MIN activates
G92 X-10.85 ; set current position to touch plate X offset
G0 X-15 F3600 ; back off from the touch plate
G0 Z15 F300 ; move up Z origin+10
G0 X0 F3600 ; move X origin
; Touch off Y
G0 Y-20 F3600
G0 Z5 F300
G38.2 Y30 F300 ; move in -y direction a max of 20mm, stop when Z_MIN activates
G92 Y-10.3 ; set current postion to touch plate Y offset
G0 Y-15 F3600 ; back away from the plate
G0 Z15 F300 ; move to Z origin+5
G0 X0 Y0 F3600 ; move to XY origin
p3dCnC-RCBugFix-zprobe-B-1.zip (740 KB)