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.28k stars 19.23k forks source link

[BUG] Printer wont resume after pause by M125 with Anycubic Chiron LCD panel #26193

Closed SwiftNick closed 1 year ago

SwiftNick commented 1 year ago

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

Yes, and the problem still exists.

Bug Description

Using Anycubic Chiron Example configs. Printing from SD card. M125 pause or Pause from panel, cannot be resumed.

The printer pauses by M125 or by pressing pause on the panel which calls the ExtUI pausePrint() function.

If I press resume on the TFT panel (which calls ExtUI resumePrint() ) or send M108 from the host, then print is not resumed.

The debug log from the panel shows:

 echo:busy: processing
X:367.87 Y:135.97 Z:0.55 E:0.00 Count X:26303 Y:12919 Z:220
M125
//action:paused
Writing to file: /PLR
echo:busy: processing
echo:busy: processing
echo:busy: processing
X:-10.00 Y:410.00 Z:5.00 E:2.44 Count X:-800 Y:41000 Z:2000
echo:Send M108 to resume
//action:prompt_end
//action:prompt_begin Nozzle Parked
//action:prompt_button Continue
//action:prompt_show
echo:busy: paused for user
echo:busy: paused for user
M108
echo:busy: processing

Bug Timeline

Introduced in 2.1.2.x

Expected behavior

Print should resume as it does in 2.1.2 release.

Actual behavior

No response

Steps to Reproduce

No response

Version of Marlin Firmware

Bugfix 2.1.2.x as of 20/08/23

Printer model

Anycubic Chiron

Electronics

Trigorilla

Add-ons

No response

Bed Leveling

None

Your Slicer

None

Host Software

None

Don't forget to include

Additional information & file uploads

Marlin Configs.zip

SwiftNick commented 1 year ago

I've enabled pause debugging and have some logs.

2.1.2 log that works ok

Marlin 2.1.2
echo: Last Updated: 2022-08-06 | Author: (Nick Wells, Chiron TMC Build)
echo: Compiled: Aug 26 2023
echo: Free Memory: 1551  PlannerBufferBytes: 1856
Auto detect panel type (assuming new panel)
echo:V87 stored settings retrieved (749 bytes; crc 56174)
//action:notification Stored settings retrieved
//action:prompt_end
Testing X connection... OK
Testing Y connection... OK
Testing Z connection... OK
Testing Z2 connection... OK
Testing E connection... OK
echo:SD card ok
Standard TFT panel detected!
M111 S14
echo:DEBUG:INFO,ERRORS,DRYRUN
ok
echo:Now fresh file: /2cages~1.gco
File opened: 2cages~1.gco Size: 2692824
File selected
ok
//action:resume
//action:prompt_end
//action:prompt_begin Resuming SD
//action:prompt_button Dismiss
//action:prompt_show
ok
echo:busy: processing
X:344.31 Y:141.31 Z:0.30 E:0.00 Count X:27501 Y:14885 Z:120
M125
>>> pause_print  X373.22 Y167.65 Z0.30
... park.x:-10.00 y:410.00 z:5.00 unloadlen:0.00 showlcd:0
//action:paused
Writing to file: /PLR
echo:busy: processing
X:-10.00 Y:410.00 Z:5.00 E:2.14 Count X:-800 Y:41000 Z:2000
<<< pause_print  X-10.00 Y410.00 Z5.00
>>> wait_for_confirmation  X-10.00 Y410.00 Z5.00
... is_reload:0 maxbeep:0
>>> pause_print  X-10.00 Y410.00 Z5.00
... is_reload:0
echo:Send M108 to resume
<<< pause_print  X-10.00 Y410.00 Z5.00
//action:prompt_end
//action:prompt_begin Nozzle Parked
//action:prompt_button Continue
//action:prompt_show
echo:busy: paused for user
M108
<<< wait_for_confirmation  X-10.00 Y410.00 Z5.00
>>> resume_print  X-10.00 Y410.00 Z5.00
... slowlen:0.00 fastlen:0.00 purgelen:2.00 maxbeep:0 targetTemp:0
>>> load_filament  X-10.00 Y410.00 Z5.00
... slowlen:0.00 fastlen:0.00 purgelen:2.00 maxbeep:0 showlcd:1 pauseforuser:0 pausemode:0
>>> ensure_safe_temperature  X-10.00 Y410.00 Z5.00
... wait:0 mode:0
echo:busy: processing
//action:resume
<<< ensure_safe_temperature  X-10.00 Y410.00 Z5.00
//action:prompt_end
//action:prompt_begin Purging...
//action:prompt_button Continue
//action:prompt_show
//action:prompt_end
<<< load_filament  X-10.00 Y410.00 Z5.00
>>> ensure_safe_temperature  X-10.00 Y410.00 Z5.00
... wait:1 mode:0
<<< ensure_safe_temperature  X-10.00 Y410.00 Z5.00
echo:busy: processing
//action:resumed
Writing to file: /PLR
<<< resume_print  X373.22 Y167.65 Z0.30
ok
//action:resume
ok
X:357.69 Y:160.09 Z:0.30 E:0.00 Count X:27380 Y:15959 Z:120

and a bugfix 2.1.2.x (25-08-2023) that wont resume.

Marlin bugfix-2.1.x
echo: Last Updated: 2023-08-26 | Author: (Nick Wells, Chiron TMC Build)
echo: Compiled: Aug 26 2023
echo: Free Memory: 1829  PlannerBufferBytes: 1600
Auto detect panel type (assuming new panel)
echo:V88 stored settings retrieved (759 bytes; crc 48508)
//action:notification Stored settings retrieved
//action:prompt_end
Testing X connection... OK
Testing Y connection... OK
Testing Z connection... OK
Testing Z2 connection... OK
Testing E connection... OK
echo:SD card ok
Standard TFT panel detected!
M111 S14
echo:DEBUG:INFO,ERRORS,DRYRUN
ok
echo:Now fresh file: /2wardr~1.gco
File opened: 2wardr~1.gco Size: 2885533
File selected
ok
//action:resume
//action:prompt_end
//action:prompt_begin Resuming SD
//action:prompt_button Dismiss
//action:prompt_show
ok
echo:busy: processing
X:326.86 Y:136.19 Z:0.30 E:0.00 Count X:28488 Y:13116 Z:120
M125
>>> pause_print  X373.13 Y152.31 Z0.30
... park.x:-10.00 y:410.00 z:5.00 unloadlen:0.00 showlcd:0
//action:paused
Writing to file: /PLR
echo:busy: processing
X:-10.00 Y:410.00 Z:5.00 E:1.14 Count X:-800 Y:41000 Z:2000
<<< pause_print  X-10.00 Y410.00 Z5.00
>>> wait_for_confirmation  X-10.00 Y410.00 Z5.00
... is_reload:0 maxbeep:0
>>> pause_print  X-10.00 Y410.00 Z5.00
... is_reload:0
echo:Send M108 to resume
<<< pause_print  X-10.00 Y410.00 Z5.00
//action:prompt_end
//action:prompt_begin Nozzle Parked
//action:prompt_button Continue
//action:prompt_show
echo:busy: paused for user
M108
<<< wait_for_confirmation  X-10.00 Y410.00 Z5.00
>>> resume_print  X-10.00 Y410.00 Z5.00
... slowlen:0.00 fastlen:0.00 purgelen:2.00 maxbeep:0 targetTemp:0
>>> load_filament  X-10.00 Y410.00 Z5.00
... slowlen:0.00 fastlen:0.00 purgelen:2.00 maxbeep:0 showlcd:1 pauseforuser:0 pausemode:0
>>> ensure_safe_temperature  X-10.00 Y410.00 Z5.00
... wait:0 mode:0
echo:busy: processing
//action:resume
<<< ensure_safe_temperature  X-10.00 Y410.00 Z5.00
//action:prompt_end
//action:prompt_begin Paused
//action:prompt_button PurgeMore
//action:prompt_button Continue
//action:prompt_show
echo:busy: paused for user
SwiftNick commented 1 year ago

D'oh! Closing this as it was a result of DRYRUN changing the machine behaviour...

github-actions[bot] commented 1 year ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.