update probe basic

This commit is contained in:
2026-06-23 09:12:27 +02:00
parent 3b8e11d127
commit 3a1aa86fb3
105 changed files with 8568 additions and 13453 deletions

View File

@@ -5,16 +5,34 @@ G90
G53 G0 Z0
G53 G0 X0 Y0
o100 if [EXISTS[#<_ini[traj]axes>]]
#<geometry> = #<_ini[traj]axes>
#<has_a> = 0
#<has_b> = 0
#<has_c> = 0
o100 if [EXISTS[#<_ini[axis_a]max_limit>]]
#<has_a> = 1
o100 endif
o110 if [#<geometry> EQ 4]
G53 G0 A0
o110 else if [#<geometry> EQ 5]
G53 G0 A0 C0
o110 if [EXISTS[#<_ini[axis_b]max_limit>]]
#<has_b> = 1
o110 endif
o120 if [EXISTS[#<_ini[axis_c]max_limit>]]
#<has_c> = 1
o120 endif
o130 if [[#<has_a> EQ 1] AND [#<has_c> EQ 1]]
G53 G0 A0 C0
o130 else if [[#<has_b> EQ 1] AND [#<has_c> EQ 1]]
G53 G0 B0 C0
o130 else if [#<has_a> EQ 1]
G53 G0 A0
o130 else if [#<has_b> EQ 1]
G53 G0 B0
o130 else if [#<has_c> EQ 1]
G53 G0 C0
o130 endif
o<go_to_home> endsub
M2

View File

@@ -5,16 +5,34 @@ G90
G53 G0 Z0
G0 X0 Y0
o100 if [EXISTS[#<_ini[traj]axes>]]
#<geometry> = #<_ini[traj]axes>
#<has_a> = 0
#<has_b> = 0
#<has_c> = 0
o100 if [EXISTS[#<_ini[axis_a]max_limit>]]
#<has_a> = 1
o100 endif
o110 if [#<geometry> EQ 4]
G0 A0
o110 else if [#<geometry> EQ 5]
G0 A0 C0
o110 if [EXISTS[#<_ini[axis_b]max_limit>]]
#<has_b> = 1
o110 endif
o120 if [EXISTS[#<_ini[axis_c]max_limit>]]
#<has_c> = 1
o120 endif
o130 if [[#<has_a> EQ 1] AND [#<has_c> EQ 1]]
G0 A0 C0
o130 else if [[#<has_b> EQ 1] AND [#<has_c> EQ 1]]
G0 B0 C0
o130 else if [#<has_a> EQ 1]
G0 A0
o130 else if [#<has_b> EQ 1]
G0 B0
o130 else if [#<has_c> EQ 1]
G0 C0
o130 endif
o<go_to_zero> endsub
M2

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.5)
(date: 06/27/24)
(version: 0.6)
(date: 01/28/26)
(load tool in spindle safety macro)
; This is called form the ATC page
@@ -15,8 +15,7 @@ o<load_spindle_safety> sub
#<load_spindle_tool_number> = #1 ; this is the value form the ATC tab
#<probe_tool_number> = #3014
; default to a 12 pocket ATC (matching DynATC Widget behaviour), then update based on INI settings
#<number_of_pockets> = 12
; Update atc pocket count based on INI settings
o101 if [EXISTS[#<_ini[atc]pockets>]]
#<number_of_pockets> = #<_ini[atc]pockets>
o101 endif
@@ -26,12 +25,15 @@ o101 endif
o110 while [#10 LT #<number_of_pockets>]
#10 = [#10+1]
o120 if [#<load_spindle_tool_number> EQ #[4000 + #10]]
(DEBUG, the tool you are trying to load is already stored in carousel pocket %d#10)
o111 if [#<load_spindle_tool_number> EQ #[4000 + #10]]
#11 = 1
o120 endif
o111 endif
o110 endwhile
o120 if [#11 EQ 1]
(abort, Tool %d#<load_spindle_tool_number> is already stored in carousel, not loading into spindle)
o120 endif
o130 if [#11 EQ 0]
M61 Q#<load_spindle_tool_number> G43 H#<load_spindle_tool_number>
#3991 = #<load_spindle_tool_number>

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(load tool in spindle safety macro)
; This is called form the Tool page
@@ -15,8 +15,7 @@ o<load_spindle_safety_2> sub
#<load_spindle_tool_number_2> = #1 ; this is the value form the TOOL tab
#<probe_tool_number> = #3014
; default to a 12 pocket ATC (matching DynATC Widget behaviour), then update based on INI settings
#<number_of_pockets> = 12
; Update atc pocket count based on INI settings
o101 if [EXISTS[#<_ini[atc]pockets>]]
#<number_of_pockets> = #<_ini[atc]pockets>
o101 endif
@@ -26,12 +25,15 @@ o101 endif
o110 while [#10 LT #<number_of_pockets>]
#10 = [#10+1]
o120 if [#<load_spindle_tool_number_2> EQ #[4000 + #10]]
(DEBUG, the tool you are trying to load is already stored in carousel pocket %d#10)
o111 if [#<load_spindle_tool_number_2> EQ #[4000 + #10]]
#11 = 1
o120 endif
o111 endif
o110 endwhile
o120 if [#11 EQ 1]
(abort, Tool %d#<load_spindle_tool_number> is already stored in carousel, not loading into spindle)
o120 endif
o130 if [#11 EQ 0]
M61 Q#<load_spindle_tool_number_2> G43 H#<load_spindle_tool_number_2>
#3991 = #<load_spindle_tool_number_2>

View File

@@ -1,9 +1,10 @@
%
o<on_abort> sub
G90
G40
G49
M5 (Spindle Stop)
M9 (Coolant Off)
M50 P1
G90 (Absolute Positioning)
G40 (Cancel Cutter Radius Compensation)
o<on_abort> endsub
%
M2 (end program)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe back left inside corner for x,y,z 0,0,0 position)
(Start probe position is over back left inside corner of stock)
@@ -35,9 +35,7 @@ o<probe_back_left_inside_corner> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_back_left_inside_corner> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -69,9 +67,7 @@ o<probe_back_left_inside_corner> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_back_left_inside_corner> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(move to X start Position)
@@ -89,9 +85,7 @@ o<probe_back_left_inside_corner> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_back_left_inside_corner> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(move to Y start Position)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe back left top corner for x,y,z 0,0,0 position)
(Start probe position is over back left corner of stock)
@@ -35,9 +35,7 @@ o<probe_back_left_top_corner> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_back_left_top_corner> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -65,9 +63,7 @@ o<probe_back_left_top_corner> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_back_left_top_corner> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(Probe Y Positioning Move, up to Z clearance plane)
@@ -90,9 +86,7 @@ o<probe_back_left_top_corner> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_back_left_top_corner> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(Probe Completion Move to Z Clearance Plane, and XY Zero)
@@ -110,8 +104,7 @@ o<probe_back_left_top_corner> sub
G10 L2 P#5220 Y[#<y_minus_zero_edge> + #<workspace_y>]
o130 endif
(Reinstate Feedrate Override)
M50 P1
M50 P1 (Reinstate Feedrate Override)
o<probe_back_left_top_corner> endsub

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe back right inside corner for x,y,z 0,0,0 position)
(Start probe position is over back right inside corner of stock)
@@ -35,9 +35,7 @@ o<probe_back_right_inside_corner> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_back_right_inside_corner> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -69,9 +67,7 @@ o<probe_back_right_inside_corner> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_back_right_inside_corner> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(move to X start Position)
@@ -89,9 +85,7 @@ o<probe_back_right_inside_corner> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_back_right_inside_corner> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(move to Y start Position)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe back right top corner for x,y,z 0,0,0 position)
(Start probe position is over back right corner of stock)
@@ -35,9 +35,7 @@ o<probe_back_right_top_corner> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_back_right_top_corner> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -65,9 +63,7 @@ o<probe_back_right_top_corner> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_back_right_top_corner> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(Probe Y Positioning Move, up to Z clearance plane)
@@ -89,9 +85,7 @@ o<probe_back_right_top_corner> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_back_right_top_corner> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(Probe Completion Move to Z Clearance Plane, and XY Zero)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.4)
(date: 06/27/24)
(version: 0.5)
(date: 01/28/26)
(Probe back top side for y,z 0,0 position)
(Start probe position is over back edge of stock)
@@ -34,9 +34,7 @@ o<Probe_back_top_side> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<Probe_back_top_side> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -64,9 +62,7 @@ o<Probe_back_top_side> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_back_top_side> return
(abort, Missing Y Sub returned edge parameter, aborting)
o110 endif
(Probe Completion Move to Z Clearance Plane, and Y Zero)

View File

@@ -1,7 +1,6 @@
o<probe_cal_reset> sub
#3032 = 0
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o<probe_cal_reset> endsub

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe calibration offset using defined diam round boss)
(Start probe position is over center of stock in X and Y axis)
@@ -23,7 +23,9 @@ o<probe_cal_round_boss> sub
#<step_off_width> = #3023 (=0.5000)
#<probe_mode> = #3030 (=0)
#<cal_diameter> = #3033 (=0)
#<sq_cal_axis> = #3036 (=0)
#<xy_cal_axis> = #3048 (=0)
#<x_cal_axis> = #3049 (=0)
#<y_cal_axis> = #3050 (=0)
(Cancel G92 offsets)
G92.1
@@ -37,13 +39,10 @@ o<probe_cal_round_boss> sub
(clear current probe calibration offset)
#3032 = 0
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_cal_round_boss> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -298,17 +297,14 @@ o<probe_cal_round_boss> sub
#<new_y_cal_offset> = [#<y_cal_error>]
o140 endif
#<new_avg_cal_offset> = [[#<new_x_cal_offset> + #<new_y_cal_offset>] / 2]
#<new_xy_cal_offset> = [[#<new_x_cal_offset> + #<new_y_cal_offset>] / 2]
o150 if [#<sq_cal_axis> EQ 0]
#3032 = [ABS[#<new_avg_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o150 else if [#<sq_cal_axis> EQ 1]
o150 if [#<xy_cal_axis> EQ 1]
#3032 = [ABS[#<new_xy_cal_offset>]]
o150 else if [#<x_cal_axis> EQ 1]
#3032 = [ABS[#<new_x_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o150 else
#3032 = [ABS[#<new_y_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o150 endif
#<x_zero> = [#<x_center_probed> + #<workspace_x>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe calibration offset using defined diam round pocket)
(Start probe position is over left side edge of pocket wall)
@@ -23,7 +23,9 @@ o<probe_cal_round_pocket> sub
#<step_off_width> = #3023 (=0.5000)
#<probe_mode> = #3030 (=0)
#<cal_diameter> = #3033 (=0)
#<sq_cal_axis> = #3036 (=0)
#<xy_cal_axis> = #3048 (=0)
#<x_cal_axis> = #3049 (=0)
#<y_cal_axis> = #3050 (=0)
(Cancel G92 offsets)
G92.1
@@ -36,13 +38,10 @@ o<probe_cal_round_pocket> sub
(clear current probe calibration offset)
#3032 = 0
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_cal_round_pocket> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -191,17 +190,14 @@ o<probe_cal_round_pocket> sub
#<new_y_cal_offset> = [#<y_cal_error>]
o120 endif
#<new_avg_cal_offset> = [[#<new_x_cal_offset> + #<new_y_cal_offset>] / 2]
#<new_xy_cal_offset> = [[#<new_x_cal_offset> + #<new_y_cal_offset>] / 2]
o130 if [#<sq_cal_axis> EQ 0]
#3032 = [ABS[#<new_avg_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 else if [#<sq_cal_axis> EQ 1]
o130 if [#<xy_cal_axis> EQ 1]
#3032 = [ABS[#<new_xy_cal_offset>]]
o130 else if [#<x_cal_axis> EQ 1]
#3032 = [ABS[#<new_x_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 else
#3032 = [ABS[#<new_y_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 endif
#<x_zero> = [#<x_center_probed> + #<workspace_x>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe calibration offset using defined width square boss)
(Start probe position is over center of stock in X and Y axis)
@@ -24,7 +24,9 @@ o<probe_cal_square_boss> sub
#<probe_mode> = #3030 (=0)
#<x_cal_width> = #3034 (=0)
#<y_cal_width> = #3035 (=0)
#<sq_cal_axis> = #3036 (=0)
#<xy_cal_axis> = #3048 (=0)
#<x_cal_axis> = #3049 (=0)
#<y_cal_axis> = #3050 (=0)
(Cancel G92 offsets)
G92.1
@@ -38,13 +40,10 @@ o<probe_cal_square_boss> sub
(clear current probe calibration offset)
#3032 = 0
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_cal_square_boss> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -192,17 +191,14 @@ o<probe_cal_square_boss> sub
#<new_y_cal_offset> = [#<y_cal_error>]
o120 endif
#<new_avg_cal_offset> = [[#<new_x_cal_offset> + #<new_y_cal_offset>] / 2]
#<new_xy_cal_offset> = [[#<new_x_cal_offset> + #<new_y_cal_offset>] / 2]
o130 if [#<sq_cal_axis> EQ 0]
#3032 = [ABS[#<new_avg_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 else if [#<sq_cal_axis> EQ 1]
o130 if [#<xy_cal_axis> EQ 1]
#3032 = [ABS[#<new_xy_cal_offset>]]
o130 else if [#<x_cal_axis> EQ 1]
#3032 = [ABS[#<new_x_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 else
#3032 = [ABS[#<new_y_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 endif
#<x_zero> = [#<x_center_probed> + #<workspace_x>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe calibration offset using defined width square pocket)
(Start probe position is over left side edge of pocket wall)
@@ -25,7 +25,9 @@ o<probe_cal_square_pocket> sub
#<probe_mode> = #3030 (=0)
#<x_cal_width> = #3034 (=0)
#<y_cal_width> = #3035 (=0)
#<sq_cal_axis> = #3036 (=0)
#<xy_cal_axis> = #3048 (=0)
#<x_cal_axis> = #3049 (=0)
#<y_cal_axis> = #3050 (=0)
(Cancel G92 offsets)
G92.1
@@ -38,13 +40,10 @@ o<probe_cal_square_pocket> sub
(clear current probe calibration offset)
#3032 = 0
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_cal_square_pocket> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -147,17 +146,14 @@ o<probe_cal_square_pocket> sub
#<new_y_cal_offset> = [#<y_cal_error>]
o120 endif
#<new_avg_cal_offset> = [[#<new_x_cal_offset> + #<new_y_cal_offset>] / 2]
#<new_xy_cal_offset> = [[#<new_x_cal_offset> + #<new_y_cal_offset>] / 2]
o130 if [#<sq_cal_axis> EQ 0]
#3032 = [ABS[#<new_avg_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 else if [#<sq_cal_axis> EQ 1]
o130 if [#<xy_cal_axis> EQ 1]
#3032 = [ABS[#<new_xy_cal_offset>]]
o130 else if [#<x_cal_axis> EQ 1]
#3032 = [ABS[#<new_x_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 else
#3032 = [ABS[#<new_y_cal_offset>]]
(DEBUG, EVAL[vcp.getWidget{"calibration_offset_3032"}.setValue{#3032}])
o130 endif
#<x_zero> = [#<x_center_probed> + #<workspace_x>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Corner X minus Edge Angle for x,y,z 0,0,0 position)
(Start probe position is over front right corner of stock)
@@ -40,9 +40,7 @@ o<probe_corner_x_minus_edge_angle> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_corner_x_minus_edge_angle> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -76,9 +74,7 @@ o<probe_corner_x_minus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_x_minus_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o110 endif
(Probe Y Positioning Move, up to Z clearance plane)
@@ -103,9 +99,7 @@ o<probe_corner_x_minus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_x_minus_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o120 endif
(edge width move to edge second probing point)
@@ -122,9 +116,7 @@ o<probe_corner_x_minus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o130 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_x_minus_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o130 endif
#<edge_delta> = [#<p2x> - #<p3x>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Corner X plus Edge Angle for x,y,z 0,0,0 position)
(Start probe position is over back left corner of stock)
@@ -40,9 +40,7 @@ o<probe_corner_x_plus_edge_angle> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_corner_x_plus_edge_angle> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -76,9 +74,7 @@ o<probe_corner_x_plus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_x_plus_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o110 endif
(Probe Y Positioning Move, up to Z clearance plane)
@@ -103,9 +99,7 @@ o<probe_corner_x_plus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_x_plus_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o120 endif
(edge width move to edge second probing point)
@@ -122,9 +116,7 @@ o<probe_corner_x_plus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o130 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_x_plus_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o130 endif
#<edge_delta> = [#<p3x> - #<p2x>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Corner Y minus Edge Angle for x,y,z 0,0,0 position)
(Start probe position is over back right corner of stock)
@@ -40,9 +40,7 @@ o<probe_corner_y_minus_edge_angle> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_corner_y_minus_edge_angle> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -76,9 +74,7 @@ o<probe_corner_y_minus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_y_minus_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(Probe Y Positioning Move, up to Z clearance plane)
@@ -103,9 +99,7 @@ o<probe_corner_y_minus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_y_minus_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(edge width move to edge second probing point)
@@ -122,9 +116,7 @@ o<probe_corner_y_minus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o130 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_y_minus_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o130 endif
#<edge_delta> = [#<p2y> - #<p3y>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Corner Y Plus Edge Angle for x,y,z 0,0,0 position)
(Start probe position is over front left corner of stock)
@@ -40,9 +40,7 @@ o<probe_corner_y_plus_edge_angle> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_corner_y_plus_edge_angle> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -76,9 +74,7 @@ o<probe_corner_y_plus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_y_plus_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(Probe Y Positioning Move, up to Z clearance plane)
@@ -103,9 +99,7 @@ o<probe_corner_y_plus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_y_plus_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(edge width move to edge second probing point)
@@ -122,9 +116,7 @@ o<probe_corner_y_plus_edge_angle> sub
(value returned safety check, aborts if no value returned)
o130 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_corner_y_plus_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o130 endif
#<edge_delta> = [#<p3y> - #<p2y>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe front left inside corner for x,y,z 0,0,0 position)
(Start probe position is over front left inside corner of stock)
@@ -36,9 +36,7 @@ o<probe_front_left_inside_corner> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_front_left_inside_corner> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -70,9 +68,7 @@ o<probe_front_left_inside_corner> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_front_left_inside_corner> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(move to X start Position)
@@ -90,9 +86,7 @@ o<probe_front_left_inside_corner> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_front_left_inside_corner> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(move to Y start Position)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.5)
(date: 06/27/24)
(version: 0.6)
(date: 01/28/26)
(Probe front left top corner for x,y,z 0,0,0 position)
(Start probe position is over front left corner of stock)
@@ -36,9 +36,7 @@ o<probe_front_left_top_corner> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_front_left_top_corner> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -66,9 +64,7 @@ o<probe_front_left_top_corner> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_front_left_top_corner> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(Probe Y Positioning Move, up to Z clearance plane)
@@ -91,9 +87,7 @@ o<probe_front_left_top_corner> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_front_left_top_corner> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(Probe Completion Move to Z Clearance Plane, and XY Zero)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe front right inside corner for x,y,z 0,0,0 position)
(Start probe position is over front right inside corner of stock)
@@ -36,9 +36,7 @@ o<probe_front_right_inside_corner> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_front_right_inside_corner> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -70,9 +68,7 @@ o<probe_front_right_inside_corner> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_front_right_inside_corner> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(move to X start Position)
@@ -90,9 +86,7 @@ o<probe_front_right_inside_corner> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_front_right_inside_corner> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(move to Y start Position)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe front right top corner for x,y,z 0,0,0 position)
(Start probe position is over front right corner of stock)
@@ -37,9 +37,7 @@ o<probe_front_right_top_corner> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_front_right_top_corner> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -67,9 +65,7 @@ o<probe_front_right_top_corner> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_front_right_top_corner> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(Probe Y Positioning Move, up to Z clearance plane)
@@ -92,9 +88,7 @@ o<probe_front_right_top_corner> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_front_right_top_corner> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
(Probe Completion Move to Z Clearance Plane, and XY Zero)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.5)
(date: 06/27/24)
(version: 0.6)
(date: 01/28/26)
(Probe front top side for y,z 0,0 position)
(Start probe position is over front edge of stock)
@@ -35,9 +35,7 @@ o<Probe_front_top_side> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<Probe_front_top_side> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -65,9 +63,7 @@ o<Probe_front_top_side> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_front_top_side> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o110 endif
(Probe Completion Move to Z Clearance Plane, and Y Zero)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.4)
(date: 06/27/24)
(version: 0.5)
(date: 01/28/26)
(Probe left top side for x,z 0,0 position)
(Start probe position is over left side edge of stock)
@@ -35,9 +35,7 @@ o<Probe_left_top_side> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<Probe_left_top_side> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -65,9 +63,7 @@ o<Probe_left_top_side> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_left_top_side> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(Probe Completion Move to Z Clearance Plane, and Y Zero)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Boss in X and Y Axes, find center and z 0 position)
(Start probe position is over center of stock in X and Y axis)
@@ -39,9 +39,7 @@ o<probe_rect_boss> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_rect_boss> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe rect pocket center measure x and widths, find xy center position)
(Start probe position is over left side edge of pocket wall)
@@ -38,9 +38,7 @@ o<probe_rect_pocket> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_rect_pocket> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe rect pocket center measure x and y widths, find xy center position)
(Start probe position is rough center of pocket probe tip below top edge)
@@ -37,9 +37,7 @@ o<probe_rect_pocket_center_start> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_rect_pocket_center_start> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Ridge in X Axis to find center and z 0 position)
(Start probe position is over center of stock in the X axis)
@@ -38,9 +38,7 @@ o<probe_ridge_x> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_ridge_x> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Ridge in Y Axis to find center and z 0 position)
(Start probe position is over center of stock in the Y axis)
@@ -37,9 +37,7 @@ o<probe_ridge_y> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_ridge_y> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.4)
(date: 06/27/24)
(version: 0.5)
(date: 01/28/26)
(Probe right top side for x,z 0,0 position)
(Start probe position is over right side edge of stock)
@@ -34,9 +34,7 @@ o<Probe_right_top_side> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<Probe_right_top_side> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -64,9 +62,7 @@ o<Probe_right_top_side> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_right_top_side> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(Probe Completion Move to Z Clearance Plane, and Y Zero)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Boss in X and Y Axes, find center, Diam and z 0 position)
(Start probe position is over center of stock in X and Y axis)
@@ -37,9 +37,7 @@ o<probe_round_boss> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_round_boss> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe round pocket center measure x and y Diam, find xy center position)
(Start probe position is over left side edge of pocket wall)
@@ -36,9 +36,7 @@ o<probe_round_pocket> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_round_pocket> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe round pocket center start measure x and y Diam, find xy center position)
(Start probe position is rough center of pocket a safe distance below top edge)
@@ -36,9 +36,7 @@ o<probe_round_pocket_center_start> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_round_pocket_center_start> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.0)
(date: 12/26/24)
(version: 0.1)
(date: 01/28/26)
(Probe Spindle Nose in Z Minus direction over tool setter and set Spindle Zero Distance)
(Start probe position is over toolsetter platter within max z distance)
@@ -19,6 +19,8 @@ o<probe_spindle_nose> sub
(Cancel G92 offsets)
G92.1
(Cancel Feedrate Override)
M50 P0
o100 if [2 EQ 2]
G49
@@ -38,8 +40,7 @@ o<probe_spindle_nose> sub
G90
G1 F[#<probe_traverse_fr>] Z#<z>
F[#<probe_fast_fr>]
(return from sub)
o<probe_spindle_nose> return
(abort, probe event failed to record point data, aborting)
o110 endif
(Move up retract_distance height for slow probe)
@@ -72,6 +73,8 @@ o<probe_spindle_nose> sub
G53 G0 Z0.0
M50 P1 (Reinstate Feedrate Override)
o<probe_spindle_nose> endsub
M2 (end program)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.4)
(date: 06/27/24)
(version: 0.5)
(date: 01/28/26)
(Probe back top edge angle for y,z 0,0 position and edge angle)
(Start probe position is over back edge of stock, set edge width,)
@@ -39,9 +39,7 @@ o<probe_top_back_edge_angle> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_top_back_edge_angle> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -71,9 +69,7 @@ o<probe_top_back_edge_angle> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_top_back_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o110 endif
(edge width move to edge second probing point)
@@ -88,9 +84,7 @@ o<probe_top_back_edge_angle> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_top_back_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
#<edge_delta> = [#<y_minus_zero_edge_start> - #<y_minus_zero_edge_end>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.5)
(date: 06/27/24)
(version: 0.6)
(date: 01/28/26)
(Probe top front edge angle for y,z 0,0 position and edge angle)
(Start probe position is over front edge of stock, set edge width,)
@@ -39,9 +39,7 @@ o<probe_top_front_edge_angle> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_top_front_edge_angle> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -71,9 +69,7 @@ o<probe_top_front_edge_angle> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_top_front_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o110 endif
(edge width move to edge second probing point)
@@ -88,9 +84,7 @@ o<probe_top_front_edge_angle> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing Y Sub returned edge parameter, aborting)
M50 P1
o<probe_top_front_edge_angle> return
(abort, Missing Y Sub returned edge parameter, aborting)
o120 endif
#<edge_delta> = [#<y_plus_zero_edge_end> - #<y_plus_zero_edge_start>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.4)
(date: 06/27/24)
(version: 0.5)
(date: 01/28/26)
(Probe top left edge angle for y,z 0,0 position and edge angle)
(Start probe position is over left edge of stock, set edge width,)
@@ -39,9 +39,7 @@ o<probe_top_left_edge_angle> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_top_left_edge_angle> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -71,9 +69,7 @@ o<probe_top_left_edge_angle> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_top_left_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(edge width move to edge second probing point)
@@ -88,9 +84,7 @@ o<probe_top_left_edge_angle> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_top_left_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o120 endif
#<edge_delta> = [#<x_plus_zero_edge_end> - #<x_plus_zero_edge_start>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.4)
(date: 06/27/24)
(version: 0.5)
(date: 01/28/26)
(Probe top right edge angle for y,z 0,0 position and edge angle)
(Start probe position is over right edge of stock, set edge width,)
@@ -39,9 +39,7 @@ o<probe_top_right_edge_angle> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_top_right_edge_angle> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -71,9 +69,7 @@ o<probe_top_right_edge_angle> sub
(value returned safety check, aborts if no value returned)
o110 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_top_right_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o110 endif
(edge width move to edge second probing point)
@@ -88,9 +84,7 @@ o<probe_top_right_edge_angle> sub
(value returned safety check, aborts if no value returned)
o120 if [#<probe_mode> EQ 1 AND #<_value_returned> NE 1]
(DEBUG, Missing X Sub returned edge parameter, aborting)
M50 P1
o<probe_top_right_edge_angle> return
(abort, Missing X Sub returned edge parameter, aborting)
o120 endif
#<edge_delta> = [#<x_minus_zero_edge_start> - #<x_minus_zero_edge_end>]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe valley in x, find Z0, X0 valley center position)
(Start probe position is over left side edge of valley wall)
@@ -37,9 +37,7 @@ o<probe_valley_x> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_valley_x> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe valley in x, find X zero valley center position)
(Start probe position is centered between valley walls)
@@ -36,9 +36,7 @@ o<probe_valley_x_center_start> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_valley_x_center_start> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe valley in Y, find Z0, Y0 valley center position)
(Start probe position is over back side edge of valley wall)
@@ -37,9 +37,7 @@ o<probe_valley_y> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_valley_y> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe valley in Y find Y0 valley center position)
(Start probe position is rough center between valley walls)
@@ -36,9 +36,7 @@ o<probe_valley_y_center_start> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_valley_y_center_start> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -24,8 +24,7 @@ o<probe_x_minus> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o<probe_x_minus> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -52,8 +51,7 @@ o<probe_x_minus> sub
G90
G1 F[#<probe_traverse_fr>] X#<x>
F[#<probe_fast_fr>]
(return from sub)
o<probe_x_minus> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to xy_clearance distance for slow probe)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe X Minus direction and set X 0 in current WCO)
(Start probe position to the right side edge of stock)
@@ -34,9 +34,7 @@ o<probe_x_minus_wco> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_x_minus_wco> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)

View File

@@ -24,8 +24,7 @@ o<probe_x_plus> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o<probe_x_plus> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -52,8 +51,7 @@ o<probe_x_plus> sub
G90
G1 F[#<probe_traverse_fr>] X#<x>
F[#<probe_fast_fr>]
(return from sub)
o<probe_x_plus> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to xy_clearance distance for slow probe)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe X plus direction and set X 0 in current WCO)
(Start probe position to the left side edge of stock)
@@ -34,9 +34,7 @@ o<probe_x_plus_wco> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_x_plus_wco> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -63,8 +61,7 @@ o<probe_x_plus_wco> sub
G90
G1 F[#<probe_traverse_fr>] X#<x>
F[#<probe_fast_fr>]
M50 P1
o<probe_x_plus_wco> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to xy_clearance distance for slow probe)

View File

@@ -24,8 +24,7 @@ o<probe_y_minus> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o<probe_y_minus> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -52,8 +51,7 @@ o<probe_y_minus> sub
G90
G1 F[#<probe_traverse_fr>] Y#<y>
F[#<probe_fast_fr>]
(return from sub)
o<probe_y_minus> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to xy_clearance distance for slow probe)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Y Minus direction and set Y 0 in current WCO)
(Start probe position to the back side edge of stock)
@@ -34,9 +34,7 @@ o<probe_y_minus_wco> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_y_minus_wco> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -63,8 +61,7 @@ o<probe_y_minus_wco> sub
G90
G1 F[#<probe_traverse_fr>] Y#<y>
F[#<probe_fast_fr>]
M50 P1
o<probe_y_minus_wco> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to xy_clearance distance for slow probe)

View File

@@ -24,8 +24,7 @@ o<probe_y_plus> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o<probe_y_plus> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -52,8 +51,7 @@ o<probe_y_plus> sub
G90
G1 F[#<probe_traverse_fr>] Y#<y>
F[#<probe_fast_fr>]
(return from sub)
o<probe_y_plus> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to xy_clearance distance for slow probe)

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
(Probe Y plus direction and set Y 0 in current WCO)
(Start probe position to the front side edge of stock)
@@ -34,9 +34,7 @@ o<probe_y_plus_wco> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_y_plus_wco> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Probe Diameter)
@@ -63,8 +61,7 @@ o<probe_y_plus_wco> sub
G90
G1 F[#<probe_traverse_fr>] Y#<y>
F[#<probe_fast_fr>]
M50 P1
o<probe_y_plus_wco> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to xy_clearance distance for slow probe)

View File

@@ -25,8 +25,7 @@ o<probe_z_minus_sub> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o<probe_z_minus_sub> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Current Z Position including offsets in current program units)
@@ -44,8 +43,7 @@ o<probe_z_minus_sub> sub
G90
G1 F[#<probe_traverse_fr>] Z#<z>
F[#<probe_fast_fr>]
(return from sub)
o<probe_z_minus_sub> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to z_clearance height for slow probe)
@@ -76,7 +74,6 @@ o<probe_z_minus_sub> sub
o130 if [#<probe_mode> EQ 0]
(Record Z zero in selected WCO)
G10 L2 P#5220 Z[#<z_minus_probed> + #<workspace_z>]
o<probe_z_minus_sub> return
o130 endif
o<probe_z_minus_sub> endsub [#<z_finish_height>]

View File

@@ -28,9 +28,7 @@ o<probe_z_minus_wco> sub
(Probe Tool Safety Check)
o100 if [#5400 NE #<probe_tool_number>]
(DEBUG, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
M50 P1
o<probe_z_minus_wco> return
(abort, Specified probe tool %d#<probe_tool_number> not in spindle, aborting)
o100 endif
(Current Z Position including offsets in current program units)
@@ -48,9 +46,7 @@ o<probe_z_minus_wco> sub
G90
G1 F[#<probe_traverse_fr>] Z#<z>
F[#<probe_fast_fr>]
(return from sub)
M50 P1
o<probe_z_minus_wco> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to z_clearance height for slow probe)

View File

@@ -130,7 +130,7 @@ o<rack_id_calc> sub
o130 endif
(MSG, "Error: No Conditions Met, Rack ID Not Set")
(DEBUG, "Error: No Conditions Met, Rack ID Not Set")
#3979 = 0
(DEBUG, EVAL[vcp.getWidget{"atc_rack_id"}.setValue{#3979}])

View File

@@ -3,7 +3,7 @@ o<retractatc> sub
M65 P0 ; Turn off carousel out solenoid
M64 P1 ; Move Carousel IN
M66 P0 L3 Q5 ; check carousel in position sensor
M66 P0 L3 Q4 ; check carousel in position sensor
o100 if [#5399 LT 0]
M65 P1 ; turn off the solenoid to send atc home
(abort, Failed to send carousel home) ; abort if the sensor does not activate in 5 seconds

View File

@@ -6,13 +6,10 @@ o100 if [1 EQ 1]
o100 endif
#1000 = #5181
(DEBUG, EVAL[vcp.getWidget{"x_tool_change_position"}.setValue{#1000}])
#1001 = #5182
(DEBUG, EVAL[vcp.getWidget{"y_tool_change_position"}.setValue{#1001}])
#1002 = #5183
(DEBUG, EVAL[vcp.getWidget{"z_tool_change_position"}.setValue{#1002}])
o<set_g30_position> endsub

View File

@@ -1,5 +1,5 @@
o<surface_test> sub
;(MSG, SURFACE_TEST.NGC)
;(DEBUG, SURFACE_TEST.NGC)
M64 P0 (turn off compensation)
;T1 M6 (Install probe)
#<x0> = #3050 ;(debug, x0: [#<x0>])

View File

@@ -72,12 +72,12 @@ o120 endif
o130 if [#5070 EQ 1] (verify probe event was succesful)
#<z_slow_probe> = #5063 (save slow probe result to parameters)
o130 else
(DEBUG,Tool Length Offset Probe Failed)
(abort,Tool Length Offset Probe Failed)
o130 endif
(Tool Diameter Probe Mode Section, User must define this section as needed)
o140 if [#<tool_diameter_probe_mode> EQ 1]
(DEBUG, Tool Diameter Probing is Not Defined in Subroutine)
(abort, Tool Diameter Probing requires end-user custom subroutine programming, see tool_touch_off.ngc file line 80 to add your customized macro code)
o140 endif
o150 if [3 EQ 3]

View File

@@ -1,6 +1,6 @@
(author: Chris P)
(version: 0.2)
(date: 06/27/24)
(version: 0.3)
(date: 01/28/26)
o<toolchange> sub
@@ -30,6 +30,7 @@ o110 endif
o120 if [EXISTS[#<_ini[atc]z_tool_change_height>]]
#<atc_z_tool_change_height> = #<_ini[atc]z_tool_change_height>
o120 endif
#<atc_z_tool_clearance_height> = [#<_ini[AXIS_Z]MAX_LIMIT>-0.01]
o130 if [EXISTS[#<_ini[atc]z_tool_clearance_height>]]
#<atc_z_tool_clearance_height> = #<_ini[atc]z_tool_clearance_height>
@@ -70,6 +71,7 @@ o160 do
o162 endif
#130 = [#130 - 1]
o160 while [#130 GT 0]
o170 if [#<next_pocket> EQ 0] ; if tool is not found, aborts and sends a message
(abort, Tool T%d#<selected_tool> not found in carousel)
o170 endif
@@ -105,7 +107,6 @@ o190 if [#<selected_tool> GT 0] ; selected tool is not tool0
(abort, Failed to send carousel home) ; abort if the sensor does not activate in 5 seconds
o191 endif
M65 P0
(DEBUG, EVAL[vcp.getWidget{"dynatc"}.store_tool{#<next_pocket>, 0}])
M22 ; Carousel out
#150 = #<next_pocket>

View File

@@ -54,9 +54,7 @@ o<toolsetter_wco> sub
G90
G1 F[#<traverse_fr>] Z#<z>
F[#<probe_fast_fr>]
(return from sub)
M50 P1
o<toolsetter_wco> return
(abort, Probe event did not record point data, aborting)
o110 endif
(Move to z_clearance height for slow probe)