You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Bob-the-Kuhn 685ed5393a Bug Fix: Switching extruder tool change leaves Z in wrong position
The tool_change function saves the current_position to the destination
array soon after starting.  Later in the switching extruder section, the
destination array is modified when moving the Z axis up & down.  A later
section of tool_change moves the head back to the “original location”
using the destination array.  This later section assumes that the
destination array hasn’t been modified.

The fix is to save the destination Z position and then restore it after
the Z movements have completed.

Going back to using the current_position array for the switching
extruder Z axis moves (and  leaving the destination array untouched)
doesn’t fix the problem.

This bug was introduced by the “Make tool_change kinematic compatible”
commit # 847429eff4 which was merged on 10
Oct 2016 as part of PR 4982.

This bug was discovered in Issue 5966.
8 years ago
..
example_configurations Apply TMC2130 to example configurations 8 years ago
Conditionals.h Make Conditionals.h a catch-all for old configs 9 years ago
Conditionals_LCD.h Give encoder pulse/steps conditionals their own block 8 years ago
Conditionals_post.h Added support for delta tower angle corrections. 8 years ago
Configuration.h Added circle pattern for nozzle cleaning feature 8 years ago
Configuration_adv.h TMC2130 Library: @teemuatlut replaces @makertum 8 years ago
M100_Free_Mem_Chk.cpp Remove unnecessary tabs and spaces 8 years ago
Makefile reduce binary size of .hex 8 years ago
Marlin.h Use arrays for delta tower parameters 8 years ago
Marlin.ino TMC2130 Library: @teemuatlut replaces @makertum 8 years ago
MarlinConfig.h Merge pull request #4419 from AnHardt/sd2pinmap 9 years ago
MarlinSerial.cpp Centralize click-handling in the LCD loop 8 years ago
MarlinSerial.h Optimize, reduce size of MarlinSerial 8 years ago
Marlin_main.cpp Bug Fix: Switching extruder tool change leaves Z in wrong position 8 years ago
SanityCheck.h Dynamic allocation for SDCARD_SORT_ALPHA 8 years ago
Sd2Card.cpp Fix SD_CHECK_AND_RETRY condition 8 years ago
Sd2Card.h repair-software-spi 9 years ago
SdBaseFile.cpp Clear dir_t size, not pointer size 8 years ago
SdBaseFile.h
SdFatConfig.h repair-software-spi 9 years ago
SdFatStructs.h
SdFatUtil.cpp
SdFatUtil.h Cleanup SdFatUtil.h 8 years ago
SdFile.cpp
SdFile.h
SdInfo.h
SdVolume.cpp
SdVolume.h
Version.h Document PROTOCOL_VERSION 8 years ago
blinkm.cpp
blinkm.h
boards.h Remove mystery-board 99 8 years ago
buzzer.h fixed warning: ISO C++ forbids compound-literals 8 years ago
cardreader.cpp Dynamic allocation for SDCARD_SORT_ALPHA 8 years ago
cardreader.h Dynamic allocation for SDCARD_SORT_ALPHA 8 years ago
circularqueue.h Patch up CircularQueue 9 years ago
configuration_store.cpp Use arrays for delta tower parameters 8 years ago
configuration_store.h Print error for M500 with disabled EEPROM 8 years ago
dac_mcp4728.cpp Fix DAC current code 8 years ago
dac_mcp4728.h Fix DAC current code 8 years ago
digipot_mcp4451.cpp Unify config in a single include without nested includes 9 years ago
dogm_bitmaps.h Updates u8glib's bmp2hex converter 9 years ago
dogm_font_data_6x9_marlin.h
dogm_font_data_HD44780_C.h
dogm_font_data_HD44780_J.h
dogm_font_data_HD44780_W.h
dogm_font_data_ISO10646_1.h
dogm_font_data_ISO10646_1_tr.h Improve M600 with timeout, wait for heatup. 8 years ago
dogm_font_data_ISO10646_5_Cyrillic.h
dogm_font_data_ISO10646_CN.h
dogm_font_data_ISO10646_Greek.h Change font decent to -1 for tt and gr 8 years ago
dogm_font_data_ISO10646_Kana.h
dogm_font_data_Marlin_symbols.h
duration_t.h Fix formatting of print time hours above one day 8 years ago
endstop_interrupts.h More detailed static_assert messages 8 years ago
endstops.cpp Use SET_INPUT_PULLUP where appropriate 8 years ago
endstops.h guaranteed BLTouch detection 8 years ago
enum.h Improve M600 with timeout, wait for heatup. 8 years ago
fastio.h Merge pull request #4894 from thinkyhead/rc_mightyboard_rev_e 8 years ago
language.h Use a short name for the filament "endstop" 8 years ago
language_an.h Change "+mm" to "mm" in most languages 8 years ago
language_bg.h Change "+mm" to "mm" in most languages 8 years ago
language_ca.h Update Catalan language 8 years ago
language_cn.h Followup to #5550 - spacing before "mm" 8 years ago
language_cz.h Followup to #5550 - spacing before "mm" 8 years ago
language_da.h Followup to #5550 - spacing before "mm" 8 years ago
language_de.h Update language_de.h 8 years ago
language_el-gr.h Followup to #5550 - spacing before "mm" 8 years ago
language_el.h Followup to #5550 - spacing before "mm" 8 years ago
language_en.h Fix preheat menu formatting 8 years ago
language_es.h Fix for some wrong strings 8 years ago
language_eu.h Change "+mm" to "mm" in most languages 8 years ago
language_fi.h Change "+mm" to "mm" in most languages 8 years ago
language_fr.h Add MAPPER_C2C3 to French language 8 years ago
language_gl.h tag the utf-8 strings 8 years ago
language_hr.h Followup to #5550 - spacing before "mm" 8 years ago
language_it.h Followup to #5550 - spacing before "mm" 8 years ago
language_kana.h Update Japanese translation 8 years ago
language_kana_utf8.h Update Japanese translation 8 years ago
language_nl.h Change "+mm" to "mm" in most languages 8 years ago
language_pl.h Change "+mm" to "mm" in most languages 8 years ago
language_pt-br.h Change "+mm" to "mm" in most languages 8 years ago
language_pt-br_utf8.h Change "+mm" to "mm" in most languages 8 years ago
language_pt.h Change "+mm" to "mm" in most languages 8 years ago
language_pt_utf8.h Change "+mm" to "mm" in most languages 8 years ago
language_ru.h Change "+mm" to "mm" in most languages 8 years ago
language_test.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_tr.h Followup to #5550 - spacing before "mm" 8 years ago
language_uk.h Fix typo in language_uk 8 years ago
language_zh_CN.h tag the utf-8 strings 8 years ago
language_zh_TW.h tag the utf-8 strings 8 years ago
macros.h Use a macro for array copies 8 years ago
mesh_bed_leveling.cpp Add a ZERO macro to clear arrays 8 years ago
mesh_bed_leveling.h Pass the fade factor to mbl.get_z 8 years ago
nozzle.cpp Apply prior nozzle clean update 8 years ago
nozzle.h Added circle pattern for nozzle cleaning feature 8 years ago
pins.h Remove unnecessary tabs and spaces 8 years ago
pinsDebug.h pinsDebug for 644/1284 & USB646/1286 families 8 years ago
pinsDebug_Teensyduino.h pinsDebug for 644/1284 & USB646/1286 families 8 years ago
pins_3DRAG.h Follow-up the PR #4955, etc 8 years ago
pins_5DPRINT.h Follow-up the PR #4955, etc 8 years ago
pins_A4JP.h No FAN0_PIN 8 years ago
pins_AZTEEG_X1.h Add "About Printer" information menu. 9 years ago
pins_AZTEEG_X3.h Follow-up the PR #5087 (Fixed SERVO pins on Azteeg X3), etc 8 years ago
pins_AZTEEG_X3_PRO.h Predefine auto fan pins in some pins files 8 years ago
pins_BAM_DICE_DUE.h Follow-up the PR #4955, etc 8 years ago
pins_BQ_ZUM_MEGA_3D.h Updated bq Hephestos 2 example configuration 8 years ago
pins_BRAINWAVE.h Follow-up the PR #4955, etc 8 years ago
pins_BRAINWAVE_PRO.h Follow-up the PR #4955, etc 8 years ago
pins_CHEAPTRONIC.h Follow-up the PR #4955, etc 8 years ago
pins_CNCONTROLS_11.h Predefine auto fan pins in some pins files 8 years ago
pins_CNCONTROLS_12.h Predefine auto fan pins in some pins files 8 years ago
pins_ELEFU_3.h Follow-up the PR #4955, etc 8 years ago
pins_FELIX2.h Follow-up the PR #4955, etc 8 years ago
pins_GEN3_MONOLITHIC.h Follow-up the PR #4955, etc 8 years ago
pins_GEN3_PLUS.h Follow-up the PR #4955, etc 8 years ago
pins_GEN6.h Follow-up the PR #4955, etc 8 years ago
pins_GEN6_DELUXE.h Add "About Printer" information menu. 9 years ago
pins_GEN7_12.h Label analog pins in a similar way 8 years ago
pins_GEN7_13.h Add "About Printer" information menu. 9 years ago
pins_GEN7_14.h Follow-up the PR #4955, etc 8 years ago
pins_GEN7_CUSTOM.h Follow-up the PR #4955, etc 8 years ago
pins_K8200.h Add "About Printer" information menu. 9 years ago
pins_K8400.h Disable SD Detect for K8400 8 years ago
pins_LEAPFROG.h Follow-up the PR #4955, etc 8 years ago
pins_MEGACONTROLLER.h Follow-up the PR #4955, etc 8 years ago
pins_MEGATRONICS.h Follow-up the PR #4955, etc 8 years ago
pins_MEGATRONICS_2.h Follow-up the PR #4955, etc 8 years ago
pins_MEGATRONICS_3.h Remove unnecessary tabs and spaces 8 years ago
pins_MELZI.h Add "About Printer" information menu. 9 years ago
pins_MELZI_MAKR3D.h Add "About Printer" information menu. 9 years ago
pins_MIGHTYBOARD_REVE.h Developer note in pins_MIGHTYBOARD_REVE.h 8 years ago
pins_MINIRAMBO.h Follow-up the PR #4955, etc 8 years ago
pins_MINITRONICS.h Follow-up the PR #4955, etc 8 years ago
pins_MKS_13.h Follow-up the PR #4955, etc 8 years ago
pins_MKS_BASE.h Follow-up the PR #4955, etc 8 years ago
pins_OMCA.h Follow-up the PR #4955, etc 8 years ago
pins_OMCA_A.h Follow-up the PR #4955, etc 8 years ago
pins_PRINTRBOARD.h Follow-up the PR #4955, etc 8 years ago
pins_PRINTRBOARD_REVF.h Follow-up the PR #4955, etc 8 years ago
pins_RAMBO.h Follow-up the PR #4955, etc 8 years ago
pins_RAMPS.h Add TMC2130 support 8 years ago
pins_RAMPS_13.h pins_RAMPS_14.h => pins_RAMPS.h 9 years ago
pins_RAMPS_OLD.h Follow-up the PR #4955, etc 8 years ago
pins_RIGIDBOARD.h Remove BEEPER_PIN override in pins_RIGIDBOARD.h 8 years ago
pins_RIGIDBOARD_V2.h Default DAC values for RigidBoard V2 8 years ago
pins_RUMBA.h Follow-up the PR #4955, etc 8 years ago
pins_SAINSMART_2IN1.h Follow-up the PR #4955, etc 8 years ago
pins_SANGUINOLOLU_11.h Fix MAKRPANEL assignments 8 years ago
pins_SANGUINOLOLU_12.h Add "About Printer" information menu. 9 years ago
pins_SAV_MKI.h Follow-up the PR #4955, etc 8 years ago
pins_SETHI.h Follow-up the PR #4955, etc 8 years ago
pins_STB_11.h Add "About Printer" information menu. 9 years ago
pins_TEENSY2.h Follow-up the PR #4955, etc 8 years ago
pins_TEENSYLU.h Follow-up the PR #4955, etc 8 years ago
pins_ULTIMAIN_2.h Follow-up the PR #4955, etc 8 years ago
pins_ULTIMAKER.h Follow-up the PR #4955, etc 8 years ago
pins_ULTIMAKER_OLD.h Follow-up the PR #4955, etc 8 years ago
planner.cpp Merge pull request #5971 from thinkyhead/rc_fix_e_factors 8 years ago
planner.h Fix BUG set_position_mm 8 years ago
planner_bezier.cpp Improve planner kinematics, fix delta ABL 8 years ago
planner_bezier.h Append units to feedrate variables 9 years ago
platformio.ini Move platformio directories out of source tree 8 years ago
point_t.h Adds missing documentation to the point_t structure 9 years ago
printcounter.cpp Renamed timestamp_t to duration_t 9 years ago
printcounter.h Adds filamentUsed and longestPrint stats to PrintCounter 9 years ago
qr_solve.cpp Enable ABL by type, support bilinear on cartesian 8 years ago
qr_solve.h Enable ABL by type, support bilinear on cartesian 8 years ago
servo.cpp Replace all remaining 'boolean' with 'bool' 8 years ago
servo.h SERVO_DEACTIVATION_DELAY => SERVO_DELAY 9 years ago
speed_lookuptable.h Spacing, cleanup in speed_lookuptable.h 8 years ago
stepper.cpp TMC2130 Library: @teemuatlut replaces @makertum 8 years ago
stepper.h First draft of Unified Stepper / E Advance ISR 8 years ago
stepper_dac.cpp Default DAC values for RigidBoard V2 8 years ago
stepper_dac.h Cleanup of code style 8 years ago
stepper_indirection.cpp TMC2130 Library: @teemuatlut replaces @makertum 8 years ago
stepper_indirection.h TMC2130 Library: @teemuatlut replaces @makertum 8 years ago
stopwatch.cpp Updates Stopwatch class to use internal state enum 9 years ago
stopwatch.h Updates Stopwatch class to use internal state enum 9 years ago
temperature.cpp Use SET_INPUT_PULLUP where appropriate 8 years ago
temperature.h Prevent re-entering of temperature ISR 8 years ago
thermistornames.h Dyze High Temp Thermistor Support 9 years ago
thermistortable_1.h Split up thermistor tables 8 years ago
thermistortable_2.h Split up thermistor tables 8 years ago
thermistortable_3.h Split up thermistor tables 8 years ago
thermistortable_4.h Split up thermistor tables 8 years ago
thermistortable_5.h Split up thermistor tables 8 years ago
thermistortable_6.h Split up thermistor tables 8 years ago
thermistortable_7.h Split up thermistor tables 8 years ago
thermistortable_8.h Split up thermistor tables 8 years ago
thermistortable_9.h Split up thermistor tables 8 years ago
thermistortable_10.h Split up thermistor tables 8 years ago
thermistortable_11.h Split up thermistor tables 8 years ago
thermistortable_12.h Split up thermistor tables 8 years ago
thermistortable_13.h Split up thermistor tables 8 years ago
thermistortable_20.h Split up thermistor tables 8 years ago
thermistortable_51.h Split up thermistor tables 8 years ago
thermistortable_52.h Split up thermistor tables 8 years ago
thermistortable_55.h Split up thermistor tables 8 years ago
thermistortable_60.h Split up thermistor tables 8 years ago
thermistortable_66.h Split up thermistor tables 8 years ago
thermistortable_70.h Split up thermistor tables 8 years ago
thermistortable_71.h Split up thermistor tables 8 years ago
thermistortable_110.h Split up thermistor tables 8 years ago
thermistortable_147.h Split up thermistor tables 8 years ago
thermistortable_998.h Split up thermistor tables 8 years ago
thermistortable_999.h Split up thermistor tables 8 years ago
thermistortable_1010.h Split up thermistor tables 8 years ago
thermistortable_1047.h Split up thermistor tables 8 years ago
thermistortables.h Split up thermistor tables 8 years ago
twibus.cpp Allow send to i2c address 0 (broadcast) 8 years ago
twibus.h M155=>M260, M156=>M261 8 years ago
types.h Adds types.h 9 years ago
ultralcd.cpp Use SET_INPUT_PULLUP where appropriate 8 years ago
ultralcd.h Make LCD_TIMEOUT_TO_STATUS configurable 8 years ago
ultralcd_impl_DOGM.h Fix submenu hotend status display 8 years ago
ultralcd_impl_HD44780.h Fix submenu hotend status display 8 years ago
ultralcd_st7920_u8glib_rrd.h Distribute GLCD screen updates in time 8 years ago
utf_mapper.h utf8-mapper for Turkish 8 years ago
utility.cpp Replace ftostr62sign with ftostr62rj 8 years ago
utility.h Replace ftostr62sign with ftostr62rj 8 years ago
vector_3.cpp Enable ABL by type, support bilinear on cartesian 8 years ago
vector_3.h Enable ABL by type, support bilinear on cartesian 8 years ago
watchdog.cpp Correct comment on watchdog timer 8 years ago
watchdog.h