Conversation
Enhances filament load and unload sequences across multiple configs by introducing a tip forming procedure for cleaner filament removal and a progressive loading sequence for more reliable feeding. Adds user feedback messages and pauses to improve reliability and inform users of macro progress. Aims to reduce clogging, improve print quality, and streamline filament changes.
Replaces the complex filament tip forming routine with a shorter, more reliable sequence designed to minimize the risk of jams during filament removal. The new approach focuses on fewer steps and adjusted extrusion/retraction speeds, improving consistency and reducing clogging issues across all supported printer configurations.
Need Testers for a new filament tip-formingThis is not a finished concept, I put this here for testers and this PR will be updated as necessary. |
|
You seem to have done an extensive job, interesting. Such a complex procedure (look at how many steps!) is inevitably extremely dependent on the temperature for each filament and on many more parameters. It might be that even 5 degrees would impact it. For the unload macro no problem, the preferred way should always be the direct cutting before the toolhead and it can be avoided, but the LOAD macro has to be BOTH foolproof and resilient. For example your LOAD macro would not work properly if I cut the filament as QIDI recommends: I have about 10 cm of filament in the toolhead. It has to be purged at reasonable, not crazy speed. Your procedure expects the channel to be completely empty! Also, I don't think there is anything in the extruder/heater/nozzle with a time constant so short that 100 ms can make any difference... it looks more voodoo than actual impact. The elephant in the room: how many different nozzles (diameter, material, style) with different (VERY different) behaviour have you tested? A distro (FreeDi is a distro for printers) should provide something that just works. |
You're right outside of PLA this might not be so ideal it should really become a unique macro to use should someone want to use. I would be better off focus effort on automated cutter or print the many cutters available |
|
As you may recall, when loading/unloading filament through the printer screen, the original macros offered a choice of three hotend temperatures, allowing for a wide range of materials. Your algorithm, as you mention, works well for PLA, but does not yet produce the same results for other material and temperature combinations. I'm not saying that your experiments are unnecessary. Sometimes, in any field, the path to a simple solution to a problem may require several iterations of overengineering. And that's okay. |
|
I have some reservations regarding the security of this formula when compared to the one previously integrated into my stock firmware. My evaluation of this Pull Request (PR) involved PC-ABS and ASA, while other teams conducted trials with PLA. My decision to submit this feedback is due to the inconsistent results I encountered, which stand in contrast to the consistently stable outcomes achieved with my previous formula in my alternative configuration: https://github.com/Misunderstood-Wookiee/QIDI-Tech-X-Plus-3-Professional-Config. It is important to note that direct compatibility with that configuration may be limited, as it primarily addresses the remapping of QIDI's non-standard naming conventions. However, the documentation suggests that I could attempt to port this formula, as the naming conventions for this specific purpose are less critical than the underlying G-code actions. Ideally, I envision a solution that combines tip forming with cutting to achieve the most robust outcome. The tip forming aspect is particularly beneficial, as I have observed that simple cutting alone does not consistently prevent jamming. My own testing indicates that cutting with angled pliers is not entirely foolproof, and most printable adaptive cutting methods I have encountered utilize a flat blade, which primarily provides a clean cut without an optimal angle of attack. The loading formula works quite well. This seems too aggressive on the unload at the moment. Somebody shared settings they use which left s nicer looking tip that somebody else made I might try those speeds in my formula. This pull request requires comprehensive feedback; I would advise against deploying this formula for daily use until all outstanding issues are addressed which is why this is a draft While I acknowledge that I may not be able to account for every variable, and that this formula currently lacks advanced material awareness, my standard configuration does incorporate fundamental material temperature considerations you raise a well thought point about other nozzle diameters and CHT which I did not test and you're right the formula expects the chamber empty maybe that's a root cause for mixed jamming results I shall investigate allowing more time for actions to have meaningful impact and assume the hotend has about 10cm material which needs to be purged. Here is that gcode for the alternative formula somebody shared. |

✅ Filament Tip Forming Implementation
I've successfully redesigned the UNLOAD_FILAMENT and LOAD_FILAMENT macros across all 6 macros.cfg files with advanced tip forming functionality:
Files Updated:
✅ X-Plus3/macros.cfg
✅ X-Max3/macros.cfg
✅ X-Smart3/macros.cfg
✅ Q1_Pro/macros.cfg
✅ Plus4/macros.cfg
✅ template/macros.cfg
UNLOAD_FILAMENT - New Tip Forming Sequence:
LOAD_FILAMENT - Progressive Loading:
Key Benefits:
✨ No more manual cutting - tip forming creates clean, pointed tips automatically
✨ Better reloading - shaped tips feed smoothly without jamming
✨ Reduced stringing - controlled retraction prevents oozing
✨ Consistent results - repeatable process every time
✨ Preserved functionality - All printer-specific features (poop bucket/shoot) maintained
All changes preserve the original printer-specific functionality like GO_TO_POOP_BUCKET, GO_TO_POOP_SHOOT, and pause/resume logic where applicable.
Pictures

How it unloads, the stem can sometimes be long like this or shorter it depends on material/temps, it should feed back into the extruder without jamming.
I manually cut the stem if removal by hand for inspection after the unload-sequence.
