Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filament change post-processing not retracting #20058

Open
JucaNavazReque opened this issue Dec 21, 2024 · 3 comments
Open

Filament change post-processing not retracting #20058

JucaNavazReque opened this issue Dec 21, 2024 · 3 comments
Labels
Status: Under Investigation The issue has been confirmed or is assumed to be likely to be a real issue. It's pending discussion. Type: Discussion Open-ended discussion (compared to specific question). Type: Improvement Improvement to existing functionality.

Comments

@JucaNavazReque
Copy link

Cura Version

5.8

Operating System

Windows 11

Printer

Creality Ender 3 Pro

Reproduction steps

  1. Load a file.
  2. Add a post-processing script for filament change at certain layer (higher than 1).
  3. Slice and print.

Actual results

When the printer reaches the selected layer(s), it moves to (0, 0, Z) without moving upwards, moving through any plastic that is in between. Also, the plastic is not retracted, which most of the times leads to leaving a blob behind. When resuming the print, once again, the nozzle crosses through any plastic, leaving a subtle scar behind, and dragging the plastic blob.

Expected results

The nozzle should retract the plastic and move a little upwards before moving to (0, 0, Z) to avoid this behavior.

Add your .zip and screenshots here ⬇️

Not relevant.

@JucaNavazReque JucaNavazReque added Status: Triage This ticket requires input from someone of the Cura team Type: Bug The code does not produce the intended behavior. labels Dec 21, 2024
@GregValiant GregValiant added Status: Needs Info Needs more information before action can be taken. Status: Under Investigation The issue has been confirmed or is assumed to be likely to be a real issue. It's pending discussion. and removed Status: Triage This ticket requires input from someone of the Cura team labels Dec 21, 2024
@GregValiant
Copy link
Collaborator

GregValiant commented Dec 21, 2024

Thanks for the report.
"Filament Change" uses the M600 command which is firmware dependent. So long as Cura added the line it is assumed that the printer will understand it. (My own Ender 3 Pro does not have M600 enabled in the firmware. I have to use PauseAtHeight instead.)

Does the M600 work on your printer? If so - does the M600 command in the gcode have the "E" and "Z" parameters?

@JucaNavazReque
Copy link
Author

I haven't changed the firmware in my printer, so I assume it uses Marlin, which supports the M600 command.

Checking the G-code of a recent print that used the Filament Change plugin, I see it inserts the following:

;BEGIN FilamentChange plugin
M600 E30.00 U300.00 X0.00 Y0.00
;END FilamentChange plugin

The E parameter is properly set, as well as the U (Amount of retraction for unload), X and Y (position for filament change). However, the Z parameter is not specified, thus moving across the printed material. I have checked and the plugin allows me to change this setting, so it was my fault after all, sorry for that. However, I would recommend setting a default value greater than 0, since it will not harm the prints, unlike the default value of 0.

Another suggestion is that, since the Layer field can contain multiple comma-separated values, the X, Y, Z Position values should also include this capability. If I understand their description correctly, it is currently not allowed. This could be specially useful for Print Sequence of One at a time, to avoid colliding with already existing prints.

As for the mentioned blob, doesn't seem like the parameters of the M600 command will help with that, so that's probably something Marlin firmware should tweak. I may investigate further and open an issue there.

Thank you very much for your support and time. Happy Holidays.

@github-actions github-actions bot removed the Status: Needs Info Needs more information before action can be taken. label Dec 24, 2024
@GregValiant
Copy link
Collaborator

GregValiant commented Dec 24, 2024

"I would recommend setting a default value greater than 0"
Nothing moves fast around here but you can make that change yourself locally.
Go to your Cura installation folder (mine is "C:\Program Files\UltiMaker Cura 5.9.0\share\cura\plugins\PostProcessingPlugin\scripts" and open "FilamentChange.py" in a text editor.
Change line 93 from ""default_value": 0," to ""default_value": 1," and save the file.
That change will stay in place until you upgrade Cura. You could also copy that file to your Configuration Folder and the "scripts" sub-folder. That is where customized post-processors reside (but Cura may only list the one in the installation folder. You'll have to check that.)

I think having to input multiple comma delimited settings in multiple text boxes is just confusing to a user. If you have more than one filament change, and you need different settings for it, then enable another instance of "Filament Change".

I'll change this from a Bug report to an Improvement Request in regards to altering the default "Z" height.

@GregValiant GregValiant added Type: Improvement Improvement to existing functionality. Type: Discussion Open-ended discussion (compared to specific question). and removed Type: Bug The code does not produce the intended behavior. labels Dec 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Under Investigation The issue has been confirmed or is assumed to be likely to be a real issue. It's pending discussion. Type: Discussion Open-ended discussion (compared to specific question). Type: Improvement Improvement to existing functionality.
Projects
None yet
Development

No branches or pull requests

2 participants