Skip to content

Ported Wipe Tower Features Fix#12742

Open
Argolein wants to merge 5 commits into
OrcaSlicer:mainfrom
Argolein:wipe-tower-BBL-fixes
Open

Ported Wipe Tower Features Fix#12742
Argolein wants to merge 5 commits into
OrcaSlicer:mainfrom
Argolein:wipe-tower-BBL-fixes

Conversation

@Argolein

Copy link
Copy Markdown
Contributor

This fixes 3 & 4 from this issue thread:
#12684

  • skip points
  • pre extrusion distance/length
  • spiral tower ironing
  • internal ribs

Fixes:
- skip points
- pre extrusion distance/length
- spiral tower ironing
- internal ribs
... for non BBL printers
@Felix14-v2

Felix14-v2 commented Mar 11, 2026

Copy link
Copy Markdown
Contributor

Wow, it actually works now! But there are still multiple problems. If I understand correctly, now all printer profiles should use auto-generated prime tower models, not just the colored preview:

old preview Rectangle Rib
{0BDD9921-308E-4770-BA7C-3F45F60A8078} image {6E9366C7-C51B-4AE8-B551-3460C561B153}
  1. The new problem here is that you can't control the tower width directly with the Rib tower wall type:
Demo
2026.March.12.01.26.mp4
  1. Another problem – "Cone" wall type doesn't work now:
Demo
2.3.2-dev 2.3.2-PR
{E23E8477-8D1D-4CD8-A93F-CE4871BD5C68} {F42B08DC-C9B1-479C-B09D-16EDEC1C04FB}

But honestly I don't understand the point of the Cone option – which advantages it gives over the Rib generation variant?

  1. And yet another critical problem is that materials are applied in a broken way now:
Demo
2026.March.12.01.33.mp4
  1. And the last problem I found during the quick testing is the missing "Tower" column in the legend:
Demo image

@Argolein

Copy link
Copy Markdown
Contributor Author

@Felix14-v2

Thanks for the feedback. I'll look into it.

@Felix14-v2

Felix14-v2 commented Mar 11, 2026

Copy link
Copy Markdown
Contributor
  1. can't control the tower width directly

If I understand correctly, Bambu Studio automatically calculates the width/length parameters based on flushing volumes to maintain the square tower (the width field is locked), and it is actually a user-friendly solution. The end user has less control, but I'm not sure how necessary the ability to squeeze the tower manually is. But the advantage is a more sustainable prime tower. Maybe you could implement something similar?
{44FBBB54-A54B-40D9-9134-1310C7AEF900}

And another question – how ward it would be to implement automatic tower model recalculation? Currently the model is only generated when slicing (see the demo №3), so you can't estimate its size and arrange it on the plate before the 1st slicing (and you have to double-slice each time you change the tower settings).

@Felix14-v2

Felix14-v2 commented Mar 11, 2026

Copy link
Copy Markdown
Contributor

Found a regression, the prime tower layer order isn't right:

Demo
2026.March.12.02.11.mp4
2026.March.12.02.18.mp4

May be a consequence of other bugs.

UPD: disabling tower interface features fixes this (and incorrect colors), but breaks the tower in another way:

interface features enabled interface features disabled
image image

@Argolein

Copy link
Copy Markdown
Contributor Author

@Felix14-v2

Could you please test again with the new build?

As for your question regarding auto width calculation: This would be a separate feature request and is not a bug of this PR. But I'll look into it after this works.

@Felix14-v2

Felix14-v2 commented Mar 12, 2026

Copy link
Copy Markdown
Contributor

Could you please test again with the new build?

All the mentioned problems are still present, except for the missing column in the legend:

  • Width calculation for "Rib" tower is broken
  • "Cone" tower doesn't work
  • Materials are broken
  • tower layers are mixed

And disabling tower interface features no longer fixes the layers.

@Argolein

Copy link
Copy Markdown
Contributor Author

@Felix14-v2

I tested Internal Ribs & "Skip Points which do work now.
Also "improved ironing strategy" is looking good now.

"Width calculation for "Rib" tower is broken" -> Did this work in the past with Orca?
What means "Materials are broken and tower layers are mixed?

I'll look into "Cone" now and also the "Width calculation".

@Argolein

Argolein commented Mar 12, 2026

Copy link
Copy Markdown
Contributor Author

@Felix14-v2

I think I found the issue. Because of the history of Orca (Bambu Studio) there is a BBL and non BBL tower generation logic and I mixed those quite a bit...
I'll do some testing first and ping you later :)

@Felix14-v2

Felix14-v2 commented Mar 12, 2026

Copy link
Copy Markdown
Contributor

I tested Internal Ribs & "Skip Points which do work now

Yes, Internal ribs has been fixed by the initial commit, I'm just bad at expressing myself, sorry.

What means "Materials are broken and tower layers are mixed?

I mean the problem I found earlier: materials are applied in a broken way now

- cleaned up mixed wp generation
- bbl 3mf crash fix
- ui hides cone for bbl now
@Argolein

Argolein commented Mar 13, 2026

Copy link
Copy Markdown
Contributor Author

I didn't expect to open Pandoras Box with that port lol but I slowly get the whole picture. In the future I might think about refactoring the whole wipe tower generation and ditch the seperate handling of BBL (+Qidi) and non BBL printers.

@Felix14-v2
Unfortunately the videos files do not work for me. A new build is just in the process of getting ready here on GitHub. At my end it does look good now. But there are a sheer number of setting combinations.
BBL wipe tower generation does not know cone that is why it does look like rectangle.
Besides that I hope I have fixed all the bugs.

If there are still more I think about going the refactor route and focus on just one path for all printers.

New build is soon ready. If you want you can test it. Thanks.

@Felix14-v2

Felix14-v2 commented Mar 13, 2026

Copy link
Copy Markdown
Contributor

Unfortunately the videos files do not work for me

I use HEVC in OBS to get acceptable quality with minimal size, your browser may have issues with it. What browser do you use? I'll test it and find compatible encoding settings.

If there are still more

I found more problems than reported, these were just the most important ones. I'll test it and give feedback, but that may take some hours.

@Felix14-v2

Felix14-v2 commented Mar 13, 2026

Copy link
Copy Markdown
Contributor

Ok, that takes a lot more time than I thought. If you want, I can just send my notes without proper comparison (maybe that would be enough), but I'd like to verify each of them and make a detailed report.

@Argolein

Copy link
Copy Markdown
Contributor Author

@Felix14-v2
I think it's not worth the effort anymore tbh.

It's very inconvenient to have two separate WipeTower pipelines. One for BBL and non BBL.
I started the project to refactor it into one Pipeline and add a Adapter/Interpreter Layer above it so both printer types use the same pipeline.
The BBL is much superior imo thus it will be the feature leading pipeline. When I succeed I will post the PR link in this PR and close this PR.

@SoftFever SoftFever added this to the 2.4 milestone Mar 15, 2026
@SoftFever

Copy link
Copy Markdown
Collaborator

Hi @Argolein and @Felix14-v2
Thank you for the amazing work.
For maintainability, could you include only the specific fixes related to the new feature that addressing the discrepancy between wipe tower 1 and wipe tower 2?
e.g.
skip points
pre extrusion distance/length
spiral tower ironing
internal ribs

@SoftFever

Copy link
Copy Markdown
Collaborator

@Felix14-v2 I think it's not worth the effort anymore tbh.

It's very inconvenient to have two separate WipeTower pipelines. One for BBL and non BBL. I started the project to refactor it into one Pipeline and add a Adapter/Interpreter Layer above it so both printer types use the same pipeline. The BBL is much superior imo thus it will be the feature leading pipeline. When I succeed I will post the PR link in this PR and close this PR.

That’s not necessarily true, though — Wipe Tower 2 has much better support for a wider variety of printers (e.g., tool changers).

The reason OrcaSlicer has two wipe tower types is the amount of testing effort required. Wipe Tower 1 mostly stays in sync with Bambu Studio’s implementation, since it’s highly customized for Bambu printers and tested by Bambu. Wipe Tower 2 stays closer to PrusaSlicer, with a lot of OrcaSlicer optimizations aimed at supporting a broad range of printers.
We didn't merge into one is because of the testing effort is simply unmanagable, imaging to support all kinds of MMU systems and the testing effort for that.

@Argolein Argolein closed this by deleting the head repository Mar 17, 2026
@Argolein Argolein reopened this Mar 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants