MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.31k stars 19.25k forks source link

[BUG] Toolhead crashes to build plate when switching extruders if axes not homed. Kossel Delta Linear Plus with a second extruder. #27509

Open ArtieH opened 2 weeks ago

ArtieH commented 2 weeks ago

Did you test the latest bugfix-2.1.x code?

Yes, and the problem still exists.

Bug Description

Upgraded from Marlin 2.0.9.7 to bugfix-2.1.x. Reconfigured the examples delta Anycubic Kossel Linear Plus config files. Tested printer operation and found that toolhead crashes when switching between extruders if axes not homed.

Bug Timeline

Possibly new bug. Can't find equivalent issue.

Expected behavior

I expected no toolhead movement when issuing T0 and T1 commands.

Actual behavior

Toolhead crashes to build plate if axes not homed. Happens when steppers time out, or if M84 issued. If no G28 is issued after printer power on then toolhead crash does not occur. Only after a G28 and subsequent stepper shutdown does the issue occur.

Steps to Reproduce

  1. Home axes G28.
  2. Issue T1 and T0 commands.
  3. No toolhead movement is observed.
  4. Issue M84 to disable the steppers, or wait until Marlin times out and disables the steppers.
  5. Issue T0 and T1 commands.
  6. When extruder is switched the toolhead drives toward the build plate and crashes.

Version of Marlin Firmware

Bugfix-2.1.x 10/30/2024

Printer model

Anycubic Kossel Delta Linear Plus

Electronics

BTT SKR V1.4 Turbo with TMC2209 step sticks

LCD/Controller

REPRAP_DISCOUNT_SMART_CONTROLLER

Other add-ons

Second extruder. Controller Fan (P1_00). Bed cooling fan (P0_02).

Bed Leveling

UBL Bilinear mesh

Your Slicer

Cura

Host Software

Pronterface

Don't forget to include

Additional information & file uploads

Configurations.zip

In pins_BTT_SKR_common.h line 51 modified #define E1_ENABLE_PIN -1 // P0_10 to allow assignment to Z_MIN_PIN.

I normally print using Octoprint but perform testing with Pronterface. No logging output from error was produced.

ArtieH commented 2 weeks ago

I backed out to Marlin-2.1.2.4 and found that it does not exhibit the toolhead crash issue. Issue seems to have been introduced in the bugfix version. I compared my configuration files between the two versions and cannot find any configuration differences. I've included the configs from the 2.1.2.4 install.

Configuration 2.1.2.4.zip