Skip to content

Commit

Permalink
Macros: add seperate t0 and t1 z probe test macros
Browse files Browse the repository at this point in the history
  • Loading branch information
miklschmidt committed Sep 23, 2024
1 parent 60b00d0 commit 02301c8
Showing 1 changed file with 183 additions and 23 deletions.
206 changes: 183 additions & 23 deletions macros/idex/vaoc_z_probe_testing.cfg
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[gcode_macro Z_PROBE_TEST]
[gcode_macro Z_PROBE_TEST_T0]
gcode:
# Setup debugging
{% set debug_previously_enabled = False %}
Expand All @@ -9,6 +9,110 @@ gcode:
{% endif %}
SET_GCODE_VARIABLE MACRO=_VAOC_Z_PROBE_TEST_EVALUATE VARIABLE=debug_previously_enabled VALUE="{debug_previously_enabled}"

_CLEAR_PRIMARY_TOOLHEAD_RESULT

{% if params.HOT|default(False)|lower == 'true' %}
{% set t0_temp = params.T0_TEMP|default(150)|int %}
{% set bed_temp = params.BED_TEMP|default(115)|int %}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Heating extruders"
SET_HEATER_TEMPERATURE HEATER="extruder" TARGET={t0_temp}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Heating bed"
M190 S{bed_temp}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Starting HOT z offset probe testing"
{% else %}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Starting COLD z offset probe testing"
{% endif %}

_VAOC_START

# Test Z offset 4 times
{% for i in range(4) %}
_VAOC_LOAD_TOOL T=0 AUTO_Z_OFFSET=True
_VAOC_TEST_Z_OFFSET
_ADD_PRIMARY_TOOLHEAD_RESULT

_VAOC_Z_PROBE_LOOP
{% endfor %}

# Test Z offset the last (5th) time
_VAOC_LOAD_TOOL T=0 AUTO_Z_OFFSET=True
_VAOC_TEST_Z_OFFSET
_ADD_PRIMARY_TOOLHEAD_RESULT

_VAOC_END
DUMP_TMC stepper="stepper_z1"
GET_POSITION
_VAOC_Z_PROBE_TEST_EVALUATE_T0

# Disable debugging if it was previously disabled
{% if debug_previously_enabled == False %}
DISABLE_DEBUG
{% endif %}

[gcode_macro Z_PROBE_TEST_T1]
gcode:
# Setup debugging
{% set debug_previously_enabled = False %}
{% if printer["gcode_macro DEBUG_ECHO"].enabled|lower == 'true' %}
{% set debug_previously_enabled = True %}
{% else %}
ENABLE_DEBUG
{% endif %}

_CLEAR_SECONDARY_TOOLHEAD_RESULT

{% if params.HOT|default(False)|lower == 'true' %}
{% set t1_temp = params.T1_TEMP|default(150)|int %}
{% set bed_temp = params.BED_TEMP|default(115)|int %}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Heating extruders"
SET_HEATER_TEMPERATURE HEATER="extruder1" TARGET={t1_temp}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Heating bed"
M190 S{bed_temp}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Starting HOT z offset probe testing"
{% else %}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Starting COLD z offset probe testing"
{% endif %}

_VAOC_START

# Test Z offset 4 times
{% for i in range(4) %}
_VAOC_LOAD_TOOL T=1 AUTO_Z_OFFSET=True
_VAOC_TEST_Z_OFFSET
_ADD_SECONDARY_TOOLHEAD_RESULT

_VAOC_Z_PROBE_LOOP
{% endfor %}

# Test Z offset the last (5th) time

_VAOC_Z_PROBE_LOOP

_VAOC_LOAD_TOOL T=1 AUTO_Z_OFFSET=True
_VAOC_TEST_Z_OFFSET
_ADD_SECONDARY_TOOLHEAD_RESULT

# Evaluate results
_VAOC_END
DUMP_TMC stepper="stepper_z1"
GET_POSITION
_VAOC_Z_PROBE_TEST_EVALUATE_T1

# Disable debugging if it was previously disabled
{% if debug_previously_enabled == False %}
DISABLE_DEBUG
{% endif %}

[gcode_macro Z_PROBE_TEST]
gcode:
# Setup debugging
{% set debug_previously_enabled = False %}
{% if printer["gcode_macro DEBUG_ECHO"].enabled|lower == 'true' %}
{% set debug_previously_enabled = True %}
{% else %}
ENABLE_DEBUG
{% endif %}

_CLEAR_PRIMARY_TOOLHEAD_RESULT
_CLEAR_SECONDARY_TOOLHEAD_RESULT

Expand All @@ -22,58 +126,59 @@ gcode:
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Heating bed"
M190 S{bed_temp}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Starting HOT z offset probe testing"
_VAOC_START
{% else %}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Starting COLD z offset probe testing"
_VAOC_START
{% endif %}

_VAOC_START

# Test Z offset 4 times
{% for i in range(4) %}
_VAOC_LOAD_TOOL T=0 AUTO_Z_OFFSET=True
_VAOC_TEST_Z_OFFSET
_ADD_PRIMARY_TOOLHEAD_RESULT

_VAOC_END
DUMP_TMC stepper="stepper_z1"
GET_POSITION
_SHAKE_IT
_VAOC_START
_VAOC_Z_PROBE_LOOP

_VAOC_LOAD_TOOL T=1 AUTO_Z_OFFSET=True
_VAOC_TEST_Z_OFFSET
_ADD_SECONDARY_TOOLHEAD_RESULT

_VAOC_END
DUMP_TMC stepper="stepper_z1"
GET_POSITION
_SHAKE_IT
_VAOC_START
_VAOC_Z_PROBE_LOOP
{% endfor %}

# Test Z offset the last (5th) time
_VAOC_LOAD_TOOL T=0 AUTO_Z_OFFSET=True
_VAOC_TEST_Z_OFFSET
_ADD_PRIMARY_TOOLHEAD_RESULT

_VAOC_END
DUMP_TMC stepper="stepper_z1"
GET_POSITION
_SHAKE_IT
_VAOC_START
_VAOC_Z_PROBE_LOOP

_VAOC_LOAD_TOOL T=1 AUTO_Z_OFFSET=True
_VAOC_TEST_Z_OFFSET
_ADD_SECONDARY_TOOLHEAD_RESULT

# Evaluate results
_VAOC_END
DUMP_TMC stepper="stepper_z1"
GET_POSITION

# Evaluate results
_VAOC_Z_PROBE_TEST_EVALUATE

# Disable debugging if it was previously disabled
{% if debug_previously_enabled == False %}
DISABLE_DEBUG
{% endif %}

[gcode_macro _VAOC_Z_PROBE_LOOP]
gcode:
_VAOC_END
DUMP_TMC stepper="stepper_z1"
GET_POSITION
_SHAKE_IT
_VAOC_START

[gcode_macro _VAOC_Z_PROBE_TEST_EVALUATE]
variable_debug_previously_enabled: False
gcode:
# Calculate results
{% set primary_results = printer["gcode_macro _ADD_PRIMARY_TOOLHEAD_RESULT"].results %}
Expand Down Expand Up @@ -132,11 +237,66 @@ gcode:
DEBUG_ECHO PREFIX="Z Offset Testing" MSG="T0 result set: {primary_results}, retries: {primary_retries}"
DEBUG_ECHO PREFIX="Z Offset Testing" MSG="T1 result set: {secondary_results}, retries: {secondary_retries}"

# Disable debugging if it was previously disabled
{% if debug_previously_enabled == False %}
DISABLE_DEBUG

[gcode_macro _VAOC_Z_PROBE_TEST_EVALUATE_T0]
variable_debug_previously_enabled: False
gcode:
# Calculate results
{% set primary_results = printer["gcode_macro _ADD_PRIMARY_TOOLHEAD_RESULT"].results %}
{% set primary_retries = printer["gcode_macro _ADD_PRIMARY_TOOLHEAD_RESULT"].retries %}

{% if primary_results|sum > 0 and primary_results|count > 0 %}
{% set primary_average = (primary_results|sum/(primary_results|count))|round(6) %}
{% else %}
{% set primary_average = 0 %}
{% endif %}

{% set primary_min = primary_results|min %}
{% set primary_max = primary_results|max %}
{% set primary_range = primary_max - primary_min %}

{% if primary_retries > 0 %}
{% set primary_average_retries = primary_retries/(primary_results|count) %}
{% else %}
{% set primary_average_retries = 0 %}
{% endif %}

RATOS_ECHO PREFIX="Z Offset Testing" MSG="Average T0 result: {primary_average}, Average Retries: {primary_average_retries}, Range: {primary_range|round(6)}, Min: {primary_min}, Max: {primary_max}"
DEBUG_ECHO PREFIX="Z Offset Testing" MSG="T0 result set: {primary_results}, retries: {primary_retries}"



[gcode_macro _VAOC_Z_PROBE_TEST_EVALUATE_T1]
variable_debug_previously_enabled: False
gcode:
# Calculate results
{% set secondary_results = printer["gcode_macro _ADD_SECONDARY_TOOLHEAD_RESULT"].results %}
{% set secondary_retries = printer["gcode_macro _ADD_SECONDARY_TOOLHEAD_RESULT"].retries %}

{% if secondary_results|sum > 0 and secondary_results|count > 0 %}
{% set secondary_average = (secondary_results|sum/(secondary_results|count))|round(6) %}
{% else %}
{% set secondary_average = 0 %}
{% endif %}

{% set secondary_min = secondary_results|min %}
{% set secondary_max = secondary_results|max %}
{% set secondary_range = secondary_max - secondary_min %}

{% if secondary_retries > 0 %}
{% set secondary_average_retries = secondary_retries/(secondary_results|count) %}
{% else %}
{% set secondary_average_retries = 0 %}
{% endif %}

RATOS_ECHO PREFIX="Z Offset Testing" MSG="Average T1 result: {secondary_average}, Average Retries: {secondary_average_retries}, Range: {secondary_range|round(6)}, Min: {secondary_min}, Max: {secondary_max}"

{% if secondary_retries > 0 %}
RATOS_ECHO PREFIX="Z Offset Testing" MSG="Z probe has poor repeatibility for T1. Retried {secondary_retries} time(s)."
{% endif %}
DEBUG_ECHO PREFIX="Z Offset Testing" MSG="T1 result set: {secondary_results}, retries: {secondary_retries}"



[gcode_macro _SHAKE_IT]
gcode:
Expand Down

0 comments on commit 02301c8

Please sign in to comment.