Skip to content

[BUG] nozzle touches bed: ARC_SUPPORT + bed leveling #25095

@rubienr

Description

@rubienr

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

Yes, and the problem still exists.

Bug Description

When printing an initial layer or the mesh validation pattern with G26, the nozzle unexpectedly lowers down towards the bed and touches the build plate. This seem to happen only with ARC_SUPPORT enabled (on arc or circle move) and only on some areas on the bed.

Video: https://user-images.githubusercontent.com/7566204/207461198-bec9cb37-b2f4-4f7b-bc10-29418ba84d75.mp4

Example with G26:
br
br

Bug Timeline

No response

Expected behavior

With ARC_SUPPORT enabled: when printing the initial layer (I use arc-welder) or the mesh validation pattern with G26, the nozzle shall not rub the build plate.

Actual behavior

When circles/arcs of the mesh validation pattern are printed, on the two right-most columns the following happens:

  1. assume previous circle/line was printed
  2. nozzle lifts up
  3. nozzle travels to next circle's position (in my case any circle of the two right-most columns)
  4. nozzle lowereds to about 0.2mm
  5. while circle starts printing, the nozzle lowers again to 0 (or slightly below, cannot say) and rubs the build plate

I observed similar behaviour while printing the initial layer of arbitrary 3D models (sliced with Cura + arc-welder). At the moment I cannot tell if this happens at subsequent layers too (at least I didn't observe it so far).

Steps to Reproduce

; enable ARC_SUPPORT, compile and upload to µC

M502    ; factory reset
M500    ; save settings
M501    ; restore settings

G29 P1  ; UBL, in my case all points are on bed, no interpolation needed
; alternatively fill unpopulated regions, still same behaviour: G29 P3
G29 S0  ; store mesh to slot 1
M420 S1 ; enable bed leveling

G26     ; mesh validation pattern
; when circles of the two right-most columns are printed, the unexpected z behaviour can be observed: nozzle touches bed

Version of Marlin Firmware

bugfix-2.1.x as of 314e52b

Printer model

Creality Ender 5 Plus

Electronics

BTT SKR Pro v1.2

Add-ons

No response

Bed Leveling

UBL Bilinear mesh AUTO_BED_LEVELING_UBL

Your Slicer

Cura

Host Software

OctoPrint

Don't forget to include

  • A ZIP file containing your Configuration.h and Configuration_adv.h.

Additional information & file uploads

Configuration

configuration.zip

Detailed steps with ARC_SUPPORT enabled

M502 ; factory reset
M500 ; save settings
M501 ; restore settings

Recv: echo:V87 stored settings retrieved (706 bytes; crc 58571)
Recv: //action:notification Stored settings retrieved
Recv: Unified Bed Leveling System v1.01 inactive
Recv: Unified Bed Leveling initialized.
Recv:
Recv: UBL reset
Recv: echo:; Linear Units:
Recv: echo:  G21 ; (mm)
Recv: echo:; Temperature Units:
Recv: echo:  M149 C ; Units in Celsius
Recv: echo:; Filament settings (Disabled):
Recv: echo:  M200 S0
Recv: echo:  M200 T0 D1.7500
Recv: echo:  M200 T1 D1.7500
Recv: echo:; Steps per unit:
Recv: echo:  M92 X80.0000 Y80.0000 Z1600.0000 E282.1584
Recv: echo:; Max feedrates (units/s):
Recv: echo:  M203 X1000.0000 Y1000.0000 Z8.0000 E150.0000
Recv: echo:; Max Acceleration (units/s2):
Recv: echo:  M201 X1000.0000 Y1000.0000 Z15.0000 E35000.0000
Recv: echo:; Acceleration (units/s2) (P<print-accel> R<retract-accel> T<travel-accel>):
Recv: echo:  M204 P600.0000 R2000.0000 T1000.0000
Recv: echo:; Advanced (B<min_segment_time_us> S<min_feedrate> T<min_travel_feedrate> J<junc_dev>):
Recv: echo:  M205 B20000.0000 S0.0000 T0.0000 J0.2000
Recv: echo:; Home offset:
Recv: echo:  M206 X0.0000 Y0.0000 Z0.0000
Recv: echo:; Hotend offsets:
Recv: echo:echo:  M218 T1 X-41.0000 Y0.0000 Z0.000
Recv: echo:; Unified Bed Leveling:
Recv: echo:  M420 S0 Z20.0000 ; Leveling OFF
Recv:
Recv: Unified Bed Leveling System v1.01 inactive
Recv: echo:Active Mesh Slot -1
Recv: echo:EEPROM can hold 15 meshes.
Recv:
Recv: echo:; Servo Angles:
Recv: echo:echo:  M281 P1 L140 U55
Recv: echo:; Z Auto-Align:
Recv: echo:  M422 S1 X8.0000 Y185.0000
Recv: echo:  M422 S2 X369.0000 Y185.0000
Recv: echo:; Material heatup parameters:
Recv: echo:  M145 S0 H180.0000 B70.0000 F0
Recv: echo:  M145 S1 H240.0000 B110.0000 F0
Recv: echo:; Hotend PID:
Recv: echo:  M301 E0 P23.9500 I1.8500 D77.5900
Recv: echo:  M301 E1 P23.9500 I1.8500 D77.5900
Recv: echo:; Bed PID:
Recv: echo:  M304 P200.6200 I34.8300 D770.3700
Recv: echo:; Controller Fan:
Recv: echo:  M710 S255 I0 A1 D30 ; (100% 0%)
Recv: echo:; Retract (S<length> F<feedrate> Z<lift>):
Recv: echo:  M207 S2.0000 W20.0000 F3000.0000 Z0.0000
Recv: echo:; Recover (S<length> F<feedrate>):
Recv: echo:  M208 S0.0000 W0.1250 F9000.0000
Recv: echo:; Auto-Retract (S<enable>):
Recv: echo:  M209 S0
Recv: echo:; Z-Probe Offset:
Recv: echo:  M851 X-20.5000 Y55.5000 Z-2.5500 ; (mm)
Recv: echo:; Stepper driver current:
Recv: echo:  M906 X1350 Y1400 Z800
Recv: echo:  M906 I1 Z800
Recv: echo:  M906 T0 E1400
Recv: echo:  M906 T1 E1400
Recv:
Recv: echo:; Hybrid Threshold:
Recv: echo:  M913 X1098 Y1098 Z494
Recv: echo:  M913 I2 Z494
Recv: echo:  M913 T0 E30
Recv: echo:  M913 T1 E30
Recv:
Recv: echo:; Driver stepping mode:
Recv: echo:  M569 S1 X Y Z
Recv: echo:  M569 S1 I1 Z
Recv: echo:  M569 S1 T0 E
Recv: echo:  M569 S1 T1 E
Recv: echo:; Linear Advance:
Recv: echo:  M900 K0.1000
Recv: echo:; Filament load/unload:
Recv: echo:  M603 T0 L2.0000 U0.0000 ; (mm)
Recv: echo:  M603 T1 L2.0000 U0.0000 ; (mm)
Recv: echo:; Tool-changing:
Recv: echo:  M217 Z2.0000
Recv: echo:; Filament runout sensor:
Recv: echo:  M412 S1 ; Sensor ON


G29 P1  ; UBL, all points are on bed, no interpolation needed
G29 S0  ; store to slot 1
M420 S1 ; enable bed leveling
M420 V  ; show mesh

Recv: Bed Topography Report:
Recv:
Recv:     (  8,362)                                      (369,362)
Recv:         0       1       2       3       4       5       6
Recv:  6 | +0.0808  +0.0463  -0.0115  -0.1175  -0.1725  -0.2662  -0.4258
Recv:    |
Recv:  5 | +0.0108  +0.0167  -0.0231  -0.1150  -0.1419  -0.1837  -0.3112
Recv:    |
Recv:  4 | -0.0065  +0.0115  -0.0002  -0.0494  -0.0615  -0.0752  -0.1660
Recv:    |
Recv:  3 | -0.0517  +0.0038  +0.0188  -0.0094  +0.0056  +0.0100  -0.0860
Recv:    |
Recv:  2 | -0.0875  -0.0075  +0.0325 [+0.0119] +0.0542  +0.0512  -0.0383
Recv:    |
Recv:  1 | -0.1035  -0.0125  +0.0310  +0.0325  +0.0792  +0.0888  -0.0037
Recv:    |
Recv:  0 | -0.0994  +0.0090  +0.0613  +0.0694  +0.1081  +0.1025  -0.0040
Recv:         0       1       2       3       4       5       6
Recv:     (  8, 32)                                      (369, 32)
Recv:
Recv: Mesh is valid
Recv: Storage slot: 0
Recv: echo:Bed Leveling ON
Recv: echo:Fade Height 20.00

G26 ; mesh validation pattern

Detailed steps with ARC_SUPPORT disabled

M502 ; factory reset
M500 ; save settings
M501 ; restore settings

Recv: echo:V87 stored settings retrieved (706 bytes; crc 58571)
Recv: //action:notification Stored settings retrieved
Recv: Unified Bed Leveling System v1.01 inactive
Recv: Unified Bed Leveling initialized.
Recv:
Recv: UBL reset
Recv: echo:; Linear Units:
Recv: echo:  G21 ; (mm)
Recv: echo:; Temperature Units:
Recv: echo:  M149 C ; Units in Celsius
Recv: echo:; Filament settings (Disabled):
Recv: echo:  M200 S0
Recv: echo:  M200 T0 D1.7500
Recv: echo:  M200 T1 D1.7500
Recv: echo:; Steps per unit:
Recv: echo:  M92 X80.0000 Y80.0000 Z1600.0000 E282.1584
Recv: echo:; Max feedrates (units/s):
Recv: echo:  M203 X1000.0000 Y1000.0000 Z8.0000 E150.0000
Recv: echo:; Max Acceleration (units/s2):
Recv: echo:  M201 X1000.0000 Y1000.0000 Z15.0000 E35000.0000
Recv: echo:; Acceleration (units/s2) (P<print-accel> R<retract-accel> T<travel-accel>):
Recv: echo:  M204 P600.0000 R2000.0000 T1000.0000
Recv: echo:; Advanced (B<min_segment_time_us> S<min_feedrate> T<min_travel_feedrate> J<junc_dev>):
Recv: echo:  M205 B20000.0000 S0.0000 T0.0000 J0.2000
Recv: echo:; Home offset:
Recv: echo:  M206 X0.0000 Y0.0000 Z0.0000
Recv: echo:; Hotend offsets:
Recv: echo:echo:  M218 T1 X-41.0000 Y0.0000 Z0.000
Recv: echo:; Unified Bed Leveling:
Recv: echo:  M420 S0 Z20.0000 ; Leveling OFF
Recv:
Recv: Unified Bed Leveling System v1.01 inactive
Recv: echo:Active Mesh Slot -1
Recv: echo:EEPROM can hold 15 meshes.
Recv:
Recv: echo:; Servo Angles:
Recv: echo:echo:  M281 P1 L140 U55
Recv: echo:; Z Auto-Align:
Recv: echo:  M422 S1 X8.0000 Y185.0000
Recv: echo:  M422 S2 X369.0000 Y185.0000
Recv: echo:; Material heatup parameters:
Recv: echo:  M145 S0 H180.0000 B70.0000 F0
Recv: echo:  M145 S1 H240.0000 B110.0000 F0
Recv: echo:; Hotend PID:
Recv: echo:  M301 E0 P23.9500 I1.8500 D77.5900
Recv: echo:  M301 E1 P23.9500 I1.8500 D77.5900
Recv: echo:; Bed PID:
Recv: echo:  M304 P200.6200 I34.8300 D770.3700
Recv: echo:; Controller Fan:
Recv: echo:  M710 S255 I0 A1 D30 ; (100% 0%)
Recv: echo:; Retract (S<length> F<feedrate> Z<lift>):
Recv: echo:  M207 S2.0000 W20.0000 F3000.0000 Z0.0000
Recv: echo:; Recover (S<length> F<feedrate>):
Recv: echo:  M208 S0.0000 W0.1250 F9000.0000
Recv: echo:; Auto-Retract (S<enable>):
Recv: echo:  M209 S0
Recv: echo:; Z-Probe Offset:
Recv: echo:  M851 X-20.5000 Y55.5000 Z-2.5500 ; (mm)
Recv: echo:; Stepper driver current:
Recv: echo:  M906 X1350 Y1400 Z800
Recv: echo:  M906 I1 Z800
Recv: echo:  M906 T0 E1400
Recv: echo:  M906 T1 E1400
Recv:
Recv: echo:; Hybrid Threshold:
Recv: echo:  M913 X1098 Y1098 Z494
Recv: echo:  M913 I2 Z494
Recv: echo:  M913 T0 E30
Recv: echo:  M913 T1 E30
Recv:
Recv: echo:; Driver stepping mode:
Recv: echo:  M569 S1 X Y Z
Recv: echo:  M569 S1 I1 Z
Recv: echo:  M569 S1 T0 E
Recv: echo:  M569 S1 T1 E
Recv: echo:; Linear Advance:
Recv: echo:  M900 K0.1000
Recv: echo:; Filament load/unload:
Recv: echo:  M603 T0 L2.0000 U0.0000 ; (mm)
Recv: echo:  M603 T1 L2.0000 U0.0000 ; (mm)
Recv: echo:; Tool-changing:
Recv: echo:  M217 Z2.0000
Recv: echo:; Filament runout sensor:
Recv: echo:  M412 S1 ; Sensor ON

G29 P1  ; UBL, all points are on bed, no interpolation needed
G29 S0  ; store to slot 1
M420 S1 ; enable bed leveling
M420 V  ; show mesh

Send: M420 V
Recv:
Recv: Bed Topography Report:
Recv:
Recv:     (  8,362)                                      (369,362)
Recv:         0       1       2       3       4       5       6
Recv:  6 | +0.1219  +0.0856  +0.0075  -0.0902  -0.1633  -0.2577  -0.4100
Recv:    |
Recv:  5 | +0.0367  +0.0138  -0.0200  -0.0887  -0.1169  -0.1606  -0.3006
Recv:    |
Recv:  4 | -0.0037  +0.0125  +0.0100  -0.0387  -0.0425  -0.0623  -0.1567
Recv:    |
Recv:  3 | -0.0371  +0.0194  +0.0298  +0.0038  +0.0125  +0.0075  -0.0831
Recv:    |
Recv:  2 | -0.0783  +0.0029  +0.0392 [+0.0281] +0.0490  +0.0506  -0.0315
Recv:    |
Recv:  1 | -0.1006  -0.0140  +0.0363  +0.0460  +0.0742  +0.0871  -0.0015
Recv:    |
Recv:  0 | -0.0925  +0.0071  +0.0588  +0.0583  +0.0913  +0.0975  -0.0050
Recv:         0       1       2       3       4       5       6
Recv:     (  8, 32)                                      (369, 32)
Recv:
Recv: Mesh is valid
Recv: Storage slot: 0
Recv: echo:Bed Leveling ON
Recv: echo:Fade Height 20.00

G26 ; mesh validation pattern

Reported printer capabilities

Changing monitoring state from "Connecting" to "Operational"
Send: N0 M110 N0*125
Recv: ok N0 P31 B7
Send: N1 M115*39
Recv: ok N0 P31 B7
Recv: FIRMWARE_NAME:Marlin bugfix-2.1.x (Dec 13 2022 21:04:57) SOURCE_CODE_URL:github.com/MarlinFirmware/Marlin PROTOCOL_VERSION:1.0 MACHINE_TYPE:Ender-5 Plus - on steroids EXTRUDER_COUNT:2 UUID:3f94418c-877f-4f36-819f-7d419923ccb6
Recv: Cap:SERIAL_XON_XOFF:0
Recv: Cap:BINARY_FILE_TRANSFER:0
Recv: Cap:EEPROM:1
Recv: Cap:VOLUMETRIC:1
Recv: Cap:AUTOREPORT_POS:1
Send: M154 S5
Recv: Cap:AUTOREPORT_TEMP:1
Send: M155 S2
Recv: Cap:PROGRESS:0
Recv: Cap:PRINT_JOB:1
Recv: Cap:AUTOLEVEL:1
Recv: Cap:RUNOUT:1
Recv: Cap:Z_PROBE:1
Recv: Cap:LEVELING_DATA:1
Recv: Cap:BUILD_PERCENT:1
Recv: Cap:SOFTWARE_POWER:1
Recv: Cap:TOGGLE_LIGHTS:1
Recv: Cap:CASE_LIGHT_BRIGHTNESS:1
Recv: Cap:EMERGENCY_PARSER:1
Recv: Cap:HOST_ACTION_COMMANDS:1
Recv: Cap:PROMPT_SUPPORT:1
Recv: Cap:SDCARD:0
Recv: Cap:REPEAT:0
Recv: Cap:SD_WRITE:0
Recv: Cap:AUTOREPORT_SD_STATUS:0
Recv: Cap:LONG_FILENAME:0
Recv: Cap:LFN_WRITE:0
Recv: Cap:CUSTOM_FIRMWARE_UPLOAD:0
Recv: Cap:EXTENDED_M20:0
Recv: Cap:THERMAL_PROTECTION:1
Recv: Cap:MOTION_MODES:1
Recv: Cap:ARCS:1
Recv: Cap:BABYSTEPPING:1
Recv: Cap:CHAMBER_TEMPERATURE:0
Recv: Cap:COOLER_TEMPERATURE:0
Recv: Cap:MEATPACK:1
Recv: Cap:CONFIG_EXPORT:0
Recv: area:{full:{min:{x:-1.0000,y:-24.0000,z:0.0000},max:{x:419.0000,y:399.0000,z:431.0000}},work:{min:{x:0.0000,y:0.0000,z:0.0000},max:{x:377.0000,y:370.0000,z:431.0000}}}

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions