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

add a preprocessing function to calculate flush vol based on color #446

Open
jacksky6 opened this issue Sep 27, 2024 · 4 comments
Open

add a preprocessing function to calculate flush vol based on color #446

jacksky6 opened this issue Sep 27, 2024 · 4 comments
Labels
enhancement New feature or request in next release Is implemented / fixed and will be pushed in next update

Comments

@jacksky6
Copy link
Contributor

When using purge bucket in multi-color printing, the value of flush vol is very important.

Orca/bambu slicer can calculate it automatically. But prusa/super slicer cannot, it is a fixed value by default. When using orca/bambu slicer, people rarely modify the specific value of flush vol (no clue), at most they modify the multiplier. (The extrusion multiplier can be set in the bucket macro, such as blobifier)

The difference in flush vol from dark color to light color and from light color to dark color is huge. It is unreasonable to use a fixed value.

However, the flush vol in orca/bambu is calculated by color and is not related to other parameters.

Is it possible to decide whether to use the flush vol extracted from gcode or calculate by color according to the user's settings (enable_flush_vol_calc: True) during preprocessing.

After this processing, the user only needs to care about whether the color is correct when slicing.

Original C code of orca:
https://github.com/SoftFever/OrcaSlicer/blob/main/src/libslic3r/FlushVolCalc.cpp

Translated python code:
https://github.com/jacksky6/FlushVolCalcScriptForERCF/blob/main/FlushVolCalcScriptForERCF.py

Snipaste_2024-09-28_01-40-41
Snipaste_2024-09-28_01-38-50

@moggieuk
Copy link
Owner

moggieuk commented Sep 28, 2024

Right, Happy Hare today will pull the purge volume matrix from the slicer and store in the "slicer tool map" for use during purging, etc.

Are you suggesting that a purge volume matrix could be created programmatically and override the slicer provided one based on the RGB color in the provided routine? I would probably use a configuration toggle variable, so you could get to either the slicer set or color computed set.

If so that was actually on my "wish list" but I didn't have reference logic to do the calculations (until now). Thanks!

@moggieuk moggieuk added the enhancement New feature or request label Sep 28, 2024
@jacksky6
Copy link
Contributor Author

@moggieuk

Yes!

When I used prusaslicer, I modified my PURGE macro to calculate PURGE_LENGTH every time based on the color instead of using the sliced ​​pruge vol.

The logic is referenced by orcaslicer, so the results are the same.

It is better to calculate the matrix data once and store it in a variable when printing, rather than calculating it every time.

In this way, all PURGE macros can be customized to choose pruge_vol_from_slicer or pruge_vol_calculated_by_color.

@moggieuk
Copy link
Owner

I've implement this in the v3.0.0 release which should be out in beta in 2-3 weeks to support type-B MMU designs. I didn't have time to retrofit to v2.7 ...

@moggieuk moggieuk added in next release Is implemented / fixed and will be pushed in next update and removed IN_PROGRESS labels Oct 17, 2024
@jacksky6
Copy link
Contributor Author

@moggieuk
Wow,it's cool...

Does the B-type mmu only support stepper motors or does it also support dc reduction motors like the one from Bambu AMS?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request in next release Is implemented / fixed and will be pushed in next update
Projects
None yet
Development

No branches or pull requests

2 participants