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

Integrate external purge estimates (eg Blobifier) to the filament consumption UI #7508

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

igiannakas
Copy link
Contributor

@igiannakas igiannakas commented Nov 17, 2024

Description

With external purging solutions becoming more common, I’ve come across a limitation when assembling mine - it is impossible to estimate the amount of filament purged during slicing!

For example, when using Happy Hare together with the blobifier, it is not possible currently to estimate the volume of filament purged, because there are no G1 Ex commands issued by the slicer, but rather the purge volumes are calculated and executed by the printer/ happy hare and blobifier software and macros themselves.

This PR aims to address this limitation by tagging the purge commands as specially formatted comments and use that to calculate the projected flushed filament volume. This is particularly useful in combination with Spoolman as you can actually compare now the projected filament use vs your available filament in the spool man UI.

This should be fairly accurate as the flush/purge volume matrix is read by Happy Hare and is used by the blobifier to execute the purge. Also this approach allows the user to apply the same correction variable to the volumes (variable_purge_length_modifier), if other than 0.

image

image

This also allows the user to include the combined filament consumption between external purge (in the blobifier) and any prime tower that the user may have enabled (eg. to ensure the nozzle is primed before printing).

image

To set it up, set the below in your Change Filament g-code:

T[next_extruder]
; FLUSH_START
; EXTERNAL_PURGE {flush_length_1+flush_length_2+flush_length_3+flush_length_4}
; FLUSH_END 

If your variable_purge_length_modifier is not 1.0, then you can adjust the calculated purge volume like so (eg. if the value is 0.6).

T[next_extruder]
; FLUSH_START
; EXTERNAL_PURGE {0.6*(flush_length_1+flush_length_2+flush_length_3+flush_length_4)}
; FLUSH_END 

Make sure purge in the prime tower is disabled:
image

Tests

Tested with Bambu and Voron printers. As this is a comment in the Gcode and the code is only invoked when the external purge tag is present, there are no side effects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant