@neilferreri Thank you so much. This is certainly a lot of information I want to sink my teeth into. I am on my way to San Antonio, TX on a hob and should be back Monday afternoon. I will start playing with your GCode to see if I can figure it out. Thank you so much for all your help. I will certainly be asking more questions.
I’m interested in setting up probing the way it works now with my Nomad if possible. I use Fusion 360 to CAD and CAM and I also send each tool path separate for the most part but on some repeat jobs, that I have everything figured out, I like to use one file for multiple paths with a tool change command in between tools. I set my X and Y zero and then set the height of stock touching the tip of the tool to the surface of the stock. Carbide Motion runs job and stops in between paths, asks for a new tool and then probes to figure out the new tool length then continues the job until a new tool is needed. I have copied the console output out of Carbide Motion when it probes and this is what I get:
(541): → M56P0
(540): → gc_probe
(521): STATE: SET MACHINE STATE: JOGGING
(519): → gc_apply_reference_tool
(517): → N0G0X-220.000Z-5.000
(516): → gc_goto_probe_home
(514): → gc_sync
(512): → N0 G4P0.005
(511): → gc_wait_for_idle
(402): → N0G38.2Z-105.000F200.0
(401): → gc_do_tool_probe
(399): → N0G0Z-35.000
(398): → gc_motion
(396): → N0G0X-220.000Z-5.000
(395): → gc_goto_probe_home
(391): → $h
(390): → gc_homing
(375): → N0 G4P0.005
(374): → gc_wait_for_idle
(372): → N0G0X-20.000
(371): → gc_motion
(369): → M05
(368): → gc_spindle
(366): STATE: SET MACHINE STATE: MEASURE_TOOL_LENGTH
(187): → M05
(186): → gc_spindle
(185): → gc_cancel_tool_length
(183): → M56P0
(182): → gc_probe
(165): → N0G0X-120.000
(164): → gc_motion
(163): STATE: SET MACHINE STATE: NEEDS_TOOL_LENGTH
(162): STATE: SET MACHINE STATE: JOGGING
(159): → $h
(158): → gc_homing
(156): STATE: SET MACHINE STATE: HOMING
(140): → M56P0
(139): → gc_probe
(137): STATE: SET MACHINE STATE: NEEDS_HOMING
(136): STATE: SET MACHINE STATE: JOGGING
(61): → M56P1
(60): → gc_probe
(58): → gc_sync
(56): → N0 G4P0.005
(55): → gc_wait_for_idle
(42): → $#
(41): → gc_get_offsets
(38): → $G
(37): → gc_parser_state
(35): → G90
(34): → gc_not_motion
(32): → G49
(31): → gc_not_motion
(29): → G21
(28): → gc_not_motion
(26): → G10L2P1X0Y0Z0
(25): → gc_not_motion
(23): → G54
(22): → gc_not_motion
(20): → G92.1
(19): → gc_not_motion
(17): → M05
(16): → gc_spindle
(14): → N0 G4P0.005
(13): → gc_wait_for_idle
(10): → gc_wait_for_status_updates
(6): → $X
(3): STATE: SET MACHINE STATE: INIT
(2): → GRBL_RESET
(1): STATE: SET MACHINE STATE: NOTCONNECTED
I have taken out a lot of data that I think is only position data the console is reading. I’ve left info that I think will let me figure out what to do.
I also do have the code generated by the maker of the Triquetra to probe Z. The 20.65 value is the thickness of the Triquetra:
G92 Z0
G21
G38.2 Z-25 F50.0
G92 Z20.6500
G91 G0 Z0.3.175
G91 G0 Y25 X25
Please forgive the length of the post. Wanted to get it out there before jumping on a plane.