Well said. As an experienced software engineer that has worked with UX designers over the years, but new to 3d printing and BambuStudio, the way they have constructed filament hierarchies is, quite frankly appalling. I haven’t used Bambu enough to have built my ideal workflow yet, but I should NOT have to deal with thinking about more than 1 existence of a preset for the level I want to make the distinction. An example I experienced:
When I got my printer I already had some Elegoo Rapid PETG. This was before Bambu’s PETG HF came out. I wanted to just make an Elegoo Filament that was identical to Bambu’s PETG Basic but all I wanted to change was the max volumetric flow. I can do that, but I should NOT have to then worry about nozzle size and finding that sometimes I can’t even see this new filament I made depending on where I am in the UI or being presented sometimes with the base name and sometimes with the full printer-relative name. What should happen is that if I change from 0.4 to 0.6 I should still be able to see my Elegoo Rapid PETG and just use it.
If I was asked what I wanted at this point in time, it might be something like this.
Build custom “Printer configurations” - this contains the actual hardware I have in my printer. Typically this would be the printer itself (P1S etc) along with whatever nozzle I have. This is similar to how it is now but it should not be fixed to a nozzle size only. I might have a different nozzle, a custom fan or other things I might change. This would present almost identically to how it is now for users who want an easy experience but allow those who want to customise things more access to that features.
Then in the filament settings I want them to be hierarchcal, branching how I want them.
All filaments by default will be available for ALL printers/printer configs no matter what options you have on your hardware. If you want to make custom filament changes for some specific setup of hardware you can edit a filament, select the hardware there (Defaults to all) and create an override. e.g. When editing the Bambu PLA filament, I can select from a drop down “0.6 nozzle” because I added that as a configuration option when making the printer and then alter whatever settings I want. It might even be good to present it in a way where you add the settings you want to modify for that variant because to be honest, most of the settings will remain the same.
Then when I am out in the preset window, I have selected my printer/printer config, lets’s say I select the 0.6 nozzle config, and I can just select Bambu PLA (No 0.4 or any rubbish like that) and the settings for 0.6 are used if there are variants for those.
There are likely even better ways, but holy hell is the default preset management a complete mess.