supermerill / SuperSlicer

G-code generator for 3D printers (Prusa, Voron, Creality, etc.)
4.1k stars 517 forks source link

Top layer fan speed issue - Oscillating fan - Default fan speed during retraction moves #1993

Open GutSmudge opened 2 years ago

GutSmudge commented 2 years ago

2.3.57.6 Version Version of SuperSlicer used goes here (help->about)

Windows 10 Operating system type + version What OS are you using, and state any version #s

Behavior

View g-code or print part. Fan speed is default during retraction moves.

Is this a new feature request? Related guides for writing feature requests: http://meta.stackexchange.com/a/259196 http://nickohrn.com/2013/09/write-great-feature-request-bug-report/

Project File (.3MF) where problem occurs

Top_layer_fan_issue.zip Upload a Project File (.3MF) Plater -> Save Project as... You have to zip it (or rename it to .zip) to be able to drag& drop it here

supermerill commented 2 years ago

I tag that with "bug" to encourage me to fix it, but it's more an unwanted "feature" |-D you can add a little 'fan speedup time' and it should be as you want. nvm

supermerill commented 2 years ago

Currently, They're not a good way to resolve taht. have to wait for gcode writer rewirte.

ChaosBlades commented 1 year ago

I have encountered this. If you have a kick start time on your part cooling fan. For example mine is 0.5 seconds then if you try to disable the part cooling fan with this it ends up actually increasing it since it will oscillate between 0% and 100% every second. It will even pile up in the queue and I have had the part cooling fan do this up to a minute after the print had finished. If I set it to 10% then it will oscillate between 10% and 50% on every line of the top layer (Monotonic Filled Not Connected). So it is only really working if you are printing a very large top layer at best and doing the exact opposite of what you are asking it to at worst.

This issue will also effect https://github.com/supermerill/SuperSlicer/issues/3271 if it gets implemented.

Edit: I think this issue would effect all of the fan speed overrides that are not either a single extrusion or an entire layer. Such as Infill bridges and Support interface assuming you have those set to Not connected in Infill settings.

ChaosBlades commented 1 year ago

Actually this effects all of these fan modes including External Perimeter fan speed because if it prints small pieces that are only 1 small external perimeter the fan will oscillate. Also you want fan speed on an external perimeter under a certain size.

I think in the mean time all the tooltips should mention this is not compatible if your fan has a kick_start_time:. I don't see a way this could be coded around unless these settings can only apply to things that are over a certain length.