prusa3d / Prusa-Firmware

Firmware for Original Prusa i3 3D printer by PrusaResearch
GNU General Public License v3.0
2.02k stars 1.05k forks source link

[BUG] Issue with mid print color change #4726

Closed majedation closed 1 week ago

majedation commented 3 months ago

Printer type - MK3S Printer firmware version - 3.14.0

SD card or USB/Octoprint SD Card

Describe the bug I've inserted a color change in the slicer in the middle of the print directly using the "+" in the slider, not through custom g-code. When the printer reaches the color change step, the printer stops and parks the nozzle to the right and beeps to unload the filament; then I press the knob to unload the filament, then press the knob again "Yes" to confirm that the filament is removed. Everything runs till here successfully; there are no issues here.

Issue: When I insert the new filament, it doesn't load, and then when I remove it, the extruder starts loading the filament. The extruder starts loading the filament after the filament sensor senses the removal of the filament, not insertion; it should be the opposite.

I'm using PrusaSlicer 2.8.0.

To Reproduce Insert filament change in the slicer using the "+" on the right slider.

Expected behavior The filament should be loaded after inserting the filament.

gudnimg commented 3 months ago

Isn't this the same issue as in https://github.com/prusa3d/Prusa-Firmware/issues/4725? I don't think the problem is M600. If AutoLoading doesn't work from the menus, then it won't work with M600.

majedation commented 3 months ago

It's a different one. Issue #4725 occurs while the printer is idle, but this one occurs during mid-print. Auto loading is active. The extruder loads the filament automatically, but when the filament sensor triggers the filament is removed. What happens is that when the printer asks me to load the new filament mid-print after unloading the previous one, I insert the new filament; nothing happens. When I remove the filament, it starts loading, without pressing the knob. It happened to me multiple times.

gudnimg commented 3 months ago

The underlying code is the same though from Auto loading feature's perspective. The only difference with M600 is it is doing a lot more UI stuff.

When I remove the filament, it starts loading, without pressing the knob.

In M600, the image below shows the relevant code. The 'loading' you describe is simply automatic movement which is meant to 'finish' the loading. fsensor.getFilamentLoadEvent() is returning true and so thinks you've inserted filament. The fact the printer thinks it's seeing filament when you remove it sounds like the sensor reading is flickering 🤔

There's unfortunately not much I can do to help unless this can be reproduced reliably.

image

majedation commented 2 months ago

This happens to me every time. I've recorded a video, but the file size is large. How can I add the video here to this issue?

gudnimg commented 2 months ago

If the file is too large for Github then I would personally try either:

  1. Create an unlisted video on Youtube (only shareable via link)
  2. Share the video via Cloud storage like Google Drive such that anyone with the link can view it.
majedation commented 2 months ago

Here’s the video: https://youtube.com/shorts/4JIVnMktJnI?si=WG6hJnYD44ZRkArF

gudnimg commented 2 months ago

Have you tried:

  1. Disabling Autoload
  2. Go to Menu > Support > Sensor Info > Fil. sensor
  3. Stick a piece of filament into the extruder (does is read steady 1?)
  4. Repeat a few times. Try also moving the filament piece side-to-side or insert it at an angle.

@Prusa-Support could you take a look at the video? Any thoughts?

github-actions[bot] commented 2 weeks ago

Thank you for your contribution to our project. This issue has not received any updates for 60 days and may be considered "stale." If this issue is still important to you, please add an update within the next 7 days to keep it open. Administrators can manually reopen the issue if necessary.

github-actions[bot] commented 1 week ago

This issue has been closed due to lack of recent activity. Please consider opening a new one if needed.