From b2c8695d911cd2d198897a1ad7a7e1ee93ee1271 Mon Sep 17 00:00:00 2001
From: Martyn <m@rtyn.berlin>
Date: Mon, 21 Apr 2025 15:32:05 +0100
Subject: [PATCH] Automatic commit of config from 2025-04-21

---
 eddy_macros.cfg => disabled_eddy.cfg |   0
 martyn_macros.cfg                    | 152 ++++++++++++------------
 mmu/mmu_vars.cfg                     |   4 +-
 printer.cfg                          | 171 +++++++++++----------------
 4 files changed, 144 insertions(+), 183 deletions(-)
 rename eddy_macros.cfg => disabled_eddy.cfg (100%)

diff --git a/eddy_macros.cfg b/disabled_eddy.cfg
similarity index 100%
rename from eddy_macros.cfg
rename to disabled_eddy.cfg
diff --git a/martyn_macros.cfg b/martyn_macros.cfg
index 328d43c..3b875c8 100644
--- a/martyn_macros.cfg
+++ b/martyn_macros.cfg
@@ -15,13 +15,13 @@ gcode:
     ;TEMPERATURE_WAIT SENSOR="temperature_sensor chamber_temp" MINIMUM={CHAMBER_TEMP} ; Wait for chamber temp
     M140 S0 ; turn off power to the bed, interference with probe?
     SET_GCODE_OFFSET Z=0.0 ; Reset the G-Code Z offset so we can set it manually later. we don't care if move=1|0 because we're about to home anyway.
-    G28 Z ; Heatsoaked, validate that z
+    G28 Z0 ; Heatsoaked, validate that z
     G90 ; ensure absolute positioning (how would it be something else?!
     G1 Z10 F3000
     QUAD_GANTRY_LEVEL
     STATUS_MESHING
-    BED_MESH_CALIBRATE
-    G28 Z ; Leveled, validate that z!
+    ;BED_MESH_CALIBRATE Well, this is fine and dandy...
+    G28 Z0 ; Leveled, validate that z!
     M190 S{BED_TEMP} ; Start heating the bed, wait until target temperature reached
     M109 S{EXTRUDER_TEMP} ; Finish heating the nozzle
     CLEAN_NOZZLE
@@ -332,79 +332,79 @@ gcode:
     G1 E-{unload_distance} F{max_velocity} # fast-unload
     RESTORE_GCODE_STATE NAME=unload_state
 
-[gcode_macro _SAFE_X_HOME]
-; This macro is to ensure that we're not at y=home when X is homed.
-gcode:
-  {% if 'Y' in printer.toolhead.homed_axes %}
-  G91
-  G0 Y-20 F50000
-  G90
-  {% else %}
-  G90
-  SET_KINEMATIC_POSITION Y=20
-  G0 Y0 F50000
-  G28 X
-  {% endif %}
-
-[gcode_macro _SAFE_Z_HOME_LIFT]
-; Lift the Z no matter what (replicate z-hop from [safe_z_home]
-gcode:
-  {% if 'Z' in printer.toolhead.homed_axes %}
-  G91
-  G0 Z10 F1000
-  G90
-  {% else %}
-  G90
-  SET_KINEMATIC_POSITION Z=0
-  G0 Z10 F1000
-  {% endif %}
-
-[gcode_macro _SAFE_Z_HOME]
-; this macro recreates the save_z_home setup center the toolhead before z home.
-gcode:
-  {% if not 'X' in printer.toolhead.homed_axes %}
-  _SAFE_X_HOME
-  {% endif %}
-  {% if not 'Y' in printer.toolhead.homed_axes %}
-  G28 Y
-  {% endif %}
-  G0 X175 Y175 F50000
-  G4 P200 ;Wait 200ms
-  SET_TMC_CURRENT STEPPER=stepper_z CURRENT=0.4
-  SET_TMC_CURRENT STEPPER=stepper_z1 CURRENT=0.4
-  SET_TMC_CURRENT STEPPER=stepper_z2 CURRENT=0.4
-  SET_TMC_CURRENT STEPPER=stepper_z3 CURRENT=0.4
-  G28 Z
-  {% set run_current = printer.configfile.config['tmc2209 stepper_z'].run_current | float %}
-  SET_TMC_CURRENT STEPPER=stepper_z CURRENT={run_current}
-  SET_TMC_CURRENT STEPPER=stepper_z1 CURRENT={run_current}
-  SET_TMC_CURRENT STEPPER=stepper_z2 CURRENT={run_current}
-  SET_TMC_CURRENT STEPPER=stepper_z3 CURRENT={run_current}
-  SET_KINEMATIC_POSITION Z=0
-  G0 Z10 F3000
-
-[homing_override]
-; The ebb36 mount often catches on the drag chain at the back of the printer.
-; This ensures that if X is asked to be homed, first Y is homed and then y is
-; moved away from the back of the printer and then homed.
-axes: xyz
-gcode:
-   #z hop no matter what
-   _SAFE_Z_HOME_LIFT
-   {% if not 'Z' in params and not 'Y' in params and 'X' in params %} # Home X
-   _SAFE_X_HOME
-   {% elif not 'Z' in params and not 'X' in params and 'Y' in params %} #Home Y
-   G28 Y
-   {% elif not 'Z' in params and 'X' in params and 'Y' in params %} #Home X+Y
-   _SAFE_X_HOME
-   G28 Y
-   {% elif 'Z' in params and not 'X' in params and not 'Y' in params %} # Home Z
-   _SAFE_Z_HOME
-   {% else %} #Home X+Y+Z
-   _SAFE_X_HOME
-   G28 Y
-   _SAFE_Z_HOME
-   {% endif %}
+#[gcode_macro _SAFE_X_HOME]
+#; This macro is to ensure that we're not at y=home when X is homed.
+#gcode:
+#  {% if 'Y' in printer.toolhead.homed_axes %}
+#  G91
+#  G0 Y-20 F50000
+#  G90
+#  {% else %}
+#  G90
+#  SET_KINEMATIC_POSITION Y=20
+#  G0 Y0 F50000
+#  G28 X
+#  {% endif %}
+#
+#[gcode_macro _SAFE_Z_HOME_LIFT]
+#; Lift the Z no matter what (replicate z-hop from [safe_z_home]
+#gcode:
+#  {% if 'Z' in printer.toolhead.homed_axes %}
+#  G91
+#  G0 Z10 F1000
+#  G90
+#  {% else %}
+#  G90
+#  SET_KINEMATIC_POSITION Z=0
+#  G0 Z10 F1000
+#  {% endif %}
+#
+#[gcode_macro _SAFE_Z_HOME]
+#; this macro recreates the save_z_home setup center the toolhead before z home.
+#gcode:
+#  {% if not 'X' in printer.toolhead.homed_axes %}
+#  _SAFE_X_HOME
+#  {% endif %}
+#  {% if not 'Y' in printer.toolhead.homed_axes %}
+#  G28 Y
+#  {% endif %}
+#  G0 X175 Y175 F50000
+#  G4 P200 ;Wait 200ms
+#  SET_TMC_CURRENT STEPPER=stepper_z CURRENT=0.4
+#  SET_TMC_CURRENT STEPPER=stepper_z1 CURRENT=0.4
+#  SET_TMC_CURRENT STEPPER=stepper_z2 CURRENT=0.4
+#  SET_TMC_CURRENT STEPPER=stepper_z3 CURRENT=0.4
+#  G28 Z0
+#  {% set run_current = printer.configfile.config['tmc2209 stepper_z'].run_current | float %}
+#  SET_TMC_CURRENT STEPPER=stepper_z CURRENT={run_current}
+#  SET_TMC_CURRENT STEPPER=stepper_z1 CURRENT={run_current}
+#  SET_TMC_CURRENT STEPPER=stepper_z2 CURRENT={run_current}
+#  SET_TMC_CURRENT STEPPER=stepper_z3 CURRENT={run_current}
+#  SET_KINEMATIC_POSITION Z=0
+#  G0 Z10 F3000
+#
+#[homing_override]
+# The ebb36 mount often catches on the drag chain at the back of the printer.
+# This ensures that if X is asked to be homed, first Y is homed and then y is
+# moved away from the back of the printer and then homed.
+#axes: xyz
+#gcode:
+#   #z hop no matter what
+#   _SAFE_Z_HOME_LIFT
+#   {% if not 'Z' in params and not 'Y' in params and 'X' in params %} # Home X
+#   _SAFE_X_HOME
+#   {% elif not 'Z' in params and not 'X' in params and 'Y' in params %} #Home Y
+#   G28 Y
+#   {% elif not 'Z' in params and 'X' in params and 'Y' in params %} #Home X+Y
+#   _SAFE_X_HOME
+#   G28 Y
+#   {% elif 'Z' in params and not 'X' in params and not 'Y' in params %} # Home Z
+#   _SAFE_Z_HOME
+#   {% else %} #Home X+Y+Z
+#   _SAFE_X_HOME
+#   G28 Y
+#   _SAFE_Z_HOME
+#   {% endif %}
 
 
 [mmu_led_effect mmu_purple_slow]
diff --git a/mmu/mmu_vars.cfg b/mmu/mmu_vars.cfg
index 5e1b03c..7e00755 100644
--- a/mmu/mmu_vars.cfg
+++ b/mmu/mmu_vars.cfg
@@ -1,5 +1,5 @@
 [Variables]
-mmu__revision = 2205
+mmu__revision = 2292
 mmu_calibration_bowden_home = 'encoder'
 mmu_calibration_bowden_lengths = [1425.1, 1425.1, 1425.1, 1425.1, 1425.1, 1425.1, 1425.1, 1425.1]
 mmu_calibration_clog_length = 17.4
@@ -24,7 +24,7 @@ mmu_state_gate_temperature = [200, 200, 200, 200, 200, 200, 200, 200]
 mmu_state_last_tool = 1
 mmu_state_tool_selected = -2
 mmu_state_tool_to_gate_map = [0, 1, 2, 3, 4, 5, 6, 7]
-mmu_statistics_counters = {'servo_down': {'count': 812, 'limit': 5000, 'warning': 'Inspect servo arm for wear/damage', 'pause': False}, 'mmu_restarts': {'count': 102, 'limit': -1, 'warning': ''}, 'cutter_blade': {'count': 45, 'limit': 3000, 'warning': 'Inspect/replace filament cutting blade', 'pause': False}}
+mmu_statistics_counters = {'servo_down': {'count': 812, 'limit': 5000, 'warning': 'Inspect servo arm for wear/damage', 'pause': False}, 'mmu_restarts': {'count': 119, 'limit': -1, 'warning': ''}, 'cutter_blade': {'count': 45, 'limit': 3000, 'warning': 'Inspect/replace filament cutting blade', 'pause': False}}
 mmu_statistics_gate_0 = {'pauses': 12, 'loads': 28, 'load_distance': 38354.336, 'load_delta': 6896.202, 'unloads': 43, 'unload_distance': 31567.3, 'unload_delta': 1877.741, 'load_failures': 7, 'unload_failures': 16, 'quality': 0.9546537865318246}
 mmu_statistics_gate_1 = {'pauses': 2, 'loads': 22, 'load_distance': 28896.615, 'load_delta': 90.861, 'unloads': 25, 'unload_distance': 27502.0, 'unload_delta': 1483.93, 'load_failures': 1, 'unload_failures': 5, 'quality': 0.8375118313601163}
 mmu_statistics_gate_2 = {'pauses': 0, 'loads': 0, 'load_distance': 0.0, 'load_delta': 0.0, 'unloads': 0, 'unload_distance': 0.0, 'unload_delta': 0.0, 'load_failures': 0, 'unload_failures': 0, 'quality': -1.0}
diff --git a/printer.cfg b/printer.cfg
index 9ecefad..e98e47c 100644
--- a/printer.cfg
+++ b/printer.cfg
@@ -1,6 +1,6 @@
-[include mmu/base/*.cfg]
-[include mmu/optional/client_macros.cfg]
-[include mmu/optional/mmu_menu.cfg]
+#[include mmu/base/*.cfg]
+#[include mmu/optional/client_macros.cfg]
+#[include mmu/optional/mmu_menu.cfg]
 # This file contains common pin mappings for the BigTreeTech Octopus V1.
 # To use this config, the firmware should be compiled for the STM32F446 with a "32KiB bootloader"
 # Enable "extra low-level configuration options" and select the "12MHz crystal" as clock reference
@@ -118,18 +118,18 @@ enable_pin: !PG5
 rotation_distance: 40
 gear_ratio: 80:16
 microsteps: 32
-#endstop_pin: probe:z_virtual_endstop
-endstop_pin: !ebb36:PB7
+endstop_pin: probe:z_virtual_endstop
+#endstop_pin: !ebb36:PB7
 ##  Z-position of nozzle (in mm) to z-endstop trigger point relative to print surface (Z0)
 ##  (+) value = endstop above Z0, (-) value = endstop below
 ##  Increasing position_endstop brings nozzle closer to the bed
 ##  After you run Z_ENDSTOP_CALIBRATE, position_endstop will be stored at the very end of your config
-position_endstop: 0
+#position_endstop: -0.2
 position_max: 310
-position_min: -10
-homing_speed: 5
-second_homing_speed: 3
-homing_retract_dist: 3
+position_min: -5
+homing_speed: 15
+#second_homing_speed: 3
+#homing_retract_dist: 3
 
 ##  Make sure to update below for your relevant driver (2208 or 2209)
 [tmc2209 stepper_z]
@@ -289,16 +289,26 @@ timeout: 1800
 
 # Need to work out how eddy interferes with magic home
 #[safe_z_home]
-##  XY Location of the Z Endstop Switch
-##  Update -10,-10 to the XY coordinates of your endstop pin 
-##  (such as 157,305) after going through Z Endstop Pin
-##  Location Definition step.
-#home_xy_position:232,350
 #home_xy_position: 175,175
 #speed:100
 #z_hop:10
 #z_hop_speed:10
 
+[homing_override]
+axes: z
+gcode:
+  SET_KINEMATIC_POSITION Z=0
+  G1 Z10 F3000
+  {% if not 'X' in printer.toolhead.homed_axes %}
+  G28 X0
+  {% endif %}
+  {% if not 'Y' in printer.toolhead.homed_axes %}
+  G28 Y0
+  {% endif %}
+  G1 X150 Y150 F3000
+  G28 Z0
+  G1 Z10 F3000
+
 
 ##  Use QUAD_GANTRY_LEVEL to level a gantry.
 ##  Min & Max gantry corners - measure from nozzle at MIN (0,0) and 
@@ -387,43 +397,45 @@ sensor_type: temperature_mcu
 [skew_correction]
 
 [exclude_object]
+
+
 #####################################################################
 #   Macros
 #####################################################################
 
-#[probe] ## Other parameters in config.cfg
-#pin: !ebb36:PB7
-#x_offset: 0.0
-#y_offset: 0.0
-#z_offset: 0.0
-#speed: 5.0 #   Speed (in mm/s) of the Z axis when probing. The default is 5mm/s.
-#samples: 2
-#sample_retract_dist: 3.0
-#samples_tolerance_retries: 1
-#lift_speed: 10
-#activate_gcode:
-#    G4 P200 ;Wait 200ms
-#    SET_TMC_CURRENT STEPPER=stepper_z CURRENT=0.4
-#    SET_TMC_CURRENT STEPPER=stepper_z1 CURRENT=0.4
-#    SET_TMC_CURRENT STEPPER=stepper_z2 CURRENT=0.4
-#    SET_TMC_CURRENT STEPPER=stepper_z3 CURRENT=0.4
-#deactivate_gcode:
-#    {% set run_current = printer.configfile.config['tmc2209 stepper_z'].run_current | float %}
-#    SET_TMC_CURRENT STEPPER=stepper_z CURRENT={run_current}
-#    SET_TMC_CURRENT STEPPER=stepper_z1 CURRENT={run_current}
-#    SET_TMC_CURRENT STEPPER=stepper_z2 CURRENT={run_current}
-#    SET_TMC_CURRENT STEPPER=stepper_z3 CURRENT={run_current}
+[probe] ## Other parameters in config.cfg
+pin: !ebb36:PB7
+x_offset: 0.0
+y_offset: 0.0
+z_offset: 0.0
+speed: 15.0 #   Speed (in mm/s) of the Z axis when probing. The default is 5mm/s.
+samples: 2
+sample_retract_dist: 3.0
+samples_tolerance_retries: 1
+lift_speed: 10
+activate_gcode:
+    G4 P200 ;Wait 200ms
+    SET_TMC_CURRENT STEPPER=stepper_z CURRENT=0.4
+    SET_TMC_CURRENT STEPPER=stepper_z1 CURRENT=0.4
+    SET_TMC_CURRENT STEPPER=stepper_z2 CURRENT=0.4
+    SET_TMC_CURRENT STEPPER=stepper_z3 CURRENT=0.4
+deactivate_gcode:
+    {% set run_current = printer.configfile.config['tmc2209 stepper_z'].run_current | float %}
+    SET_TMC_CURRENT STEPPER=stepper_z CURRENT={run_current}
+    SET_TMC_CURRENT STEPPER=stepper_z1 CURRENT={run_current}
+    SET_TMC_CURRENT STEPPER=stepper_z2 CURRENT={run_current}
+    SET_TMC_CURRENT STEPPER=stepper_z3 CURRENT={run_current}
 
 [bed_mesh]
-speed: 200
+speed: 800
 horizontal_move_z: 3
-mesh_min: 35, 35
+mesh_min: 0, 0
 mesh_max: 310, 310
 zero_reference_position: 175, 175
-mesh_pps: 9, 9
-algorithm: bicubic
-bicubic_tension: 0.2
-probe_count: 9, 9
+# #mesh_pps: 9, 9
+# algorithm: bicubic
+# bicubic_tension: 0.2
+probe_count: 6,6
 
 [input_shaper]
 shaper_freq_x: 91.4
@@ -433,18 +445,18 @@ shaper_type: 3hump_ei
 [mcu eddy]
 canbus_uuid: 01dd4779f312
 
-[probe_eddy_current btt_eddy]
-sensor_type: ldc1612
-z_offset: 2.01
-i2c_mcu: eddy
-i2c_bus: i2c0f
-x_offset: 0
-y_offset: 21.42
+#[probe_eddy_current btt_eddy]
+#sensor_type: ldc1612
+#z_offset: 2.01
+#i2c_mcu: eddy
+#i2c_bus: i2c0f
+#x_offset: 0
+#y_offset: 21.42
 
-[temperature_probe btt_eddy]
-sensor_type: Generic 3950
-sensor_pin: eddy:gpio26
-horizontal_move_z: 2
+#[temperature_probe btt_eddy]
+#sensor_type: Generic 3950
+#sensor_pin: eddy:gpio26
+#horizontal_move_z: 2
 
 [gcode_macro PROBE_EDDY_CURRENT_CALIBRATE_AUTO]
 gcode:
@@ -490,54 +502,3 @@ enable_force_move: True
 #*# xy_skew = 0.007318697823262824
 #*# xz_skew = 0.0004313347372552723
 #*# yz_skew = -0.0005939714989857676
-#*#
-#*# [probe_eddy_current btt_eddy]
-#*# reg_drive_current = 15
-#*# calibrate =
-#*# 	0.050000:3245638.704,0.090000:3245080.054,0.130000:3244565.336,
-#*# 	0.170000:3244049.306,0.210000:3243547.198,0.250000:3242983.782,
-#*# 	0.290000:3242485.192,0.330000:3242003.499,0.370000:3241513.810,
-#*# 	0.410000:3241005.009,0.450000:3240524.679,0.490000:3240007.220,
-#*# 	0.530000:3239582.630,0.570000:3239091.260,0.610000:3238656.819,
-#*# 	0.650000:3238201.389,0.690000:3237738.464,0.730000:3237327.553,
-#*# 	0.770000:3236871.922,0.810000:3236450.933,0.850000:3236013.435,
-#*# 	0.890000:3235604.570,0.930000:3235213.842,0.970000:3234806.320,
-#*# 	1.010000:3234402.262,1.050000:3234011.073,1.090000:3233605.455,
-#*# 	1.130000:3233234.712,1.170000:3232870.210,1.210000:3232508.894,
-#*# 	1.250000:3232151.577,1.290000:3231750.211,1.330000:3231417.439,
-#*# 	1.370000:3231076.224,1.410000:3230749.915,1.450000:3230408.322,
-#*# 	1.490000:3230089.275,1.530000:3229744.872,1.570000:3229405.069,
-#*# 	1.610000:3229098.050,1.650000:3228793.859,1.690000:3228494.736,
-#*# 	1.730000:3228192.648,1.770000:3227892.116,1.810000:3227632.023,
-#*# 	1.850000:3227317.057,1.890000:3227028.950,1.930000:3226751.663,
-#*# 	1.970000:3226491.384,2.010000:3226215.191,2.050000:3225969.888,
-#*# 	2.090000:3225686.092,2.130000:3225413.803,2.170000:3225169.825,
-#*# 	2.210000:3224906.131,2.250000:3224685.325,2.290000:3224436.049,
-#*# 	2.330000:3224180.495,2.370000:3223968.437,2.410000:3223730.180,
-#*# 	2.450000:3223513.775,2.490000:3223276.750,2.530000:3223059.567,
-#*# 	2.570000:3222849.555,2.610000:3222638.022,2.650000:3222423.121,
-#*# 	2.690000:3222245.379,2.730000:3222044.814,2.770000:3221807.780,
-#*# 	2.810000:3221609.367,2.850000:3221410.154,2.890000:3221233.477,
-#*# 	2.930000:3221053.693,2.970000:3220848.945,3.010000:3220647.095,
-#*# 	3.050000:3220506.474,3.090000:3220310.181,3.130000:3220109.755,
-#*# 	3.170000:3219971.126,3.210000:3219810.795,3.250000:3219615.773,
-#*# 	3.290000:3219469.812,3.330000:3219311.643,3.370000:3219128.365,
-#*# 	3.410000:3218969.474,3.450000:3218835.061,3.490000:3218678.080,
-#*# 	3.530000:3218523.050,3.570000:3218373.833,3.610000:3218217.807,
-#*# 	3.650000:3218077.498,3.690000:3217930.874,3.730000:3217797.046,
-#*# 	3.770000:3217658.917,3.810000:3217505.867,3.850000:3217410.132,
-#*# 	3.890000:3217255.991,3.930000:3217104.296,3.970000:3216992.397,
-#*# 	4.010000:3216852.585,4.050000:3216743.023
-#*#
-#*# [temperature_probe btt_eddy]
-#*# drift_calibration =
-#*# 	3295881.310465, -1597.470868, 13.826983
-#*# 	3280529.985085, -1287.274699, 11.063779
-#*# 	3266451.502831, -991.104037, 8.459800
-#*# 	3255074.317427, -766.953277, 6.550420
-#*# 	3245056.498078, -552.419340, 4.625431
-#*# 	3236797.908245, -374.099752, 2.993489
-#*# 	3229565.215149, -207.644688, 1.443555
-#*# 	3224109.964452, -92.088684, 0.383280
-#*# 	3219621.930355, 2.311153, -0.482160
-#*# drift_calibration_min_temp = 38.524523728844876