Page 1 of 3

4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Thu Nov 08, 2018 3:40 pm
by GhostlyCrowd
As the title states. I have cooling disabled for the firts layer however every Gcode 4.1 generates turns on my fan as soon as i click print.

4.1 does this

Code: Select all

G90
M82
M106 S29
M140 S60
M190 S60
M104 S205 T0
M109 S205 T0
4.0.1 does what it should

Code: Select all

G90
M82
M106 S0
M140 S60
M190 S60
M104 S205 T0
M109 S205 T0

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Fri Nov 09, 2018 10:22 am
by S3D-Alex
Can you please post a Factory File that generates this gcode?

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Fri Nov 09, 2018 10:49 am
by GhostlyCrowd
See attached.
The M106 Value is typically random but none the less it always turns the fan on even before heating. This is incorrect clearly.

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Fri Nov 09, 2018 11:01 am
by S3D-Alex
The reason you are seeing a fan speed for your first layer is because you have the option to "Increase fan speed for layers below 'n' seconds". This will force the first layer to have the fan on if the layer will take more than the time you have set.

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Fri Nov 09, 2018 12:27 pm
by GhostlyCrowd
Why is 4.1 doing this before the hot ends even heat and the print even starts even IF it was an expected feature (4.0.1 same profile does not do this it respects the first layer having fan off as it should)

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Tue Jan 22, 2019 6:53 am
by SIE-Maker
The same for me. I hope there will soon be a fix for this and some other heavy bugs in this version. Slic3r-Pe sends his regards.

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Wed Jan 23, 2019 11:03 am
by S3D-Alex
This was an intended behavior change in 4.1. This will ensure the fan logic applies to the whole print which will reduce temperature fluctuations.

If you want the fan to be off during the heating cycle you will want to use an "M106 S0" in the beginning of your starting script, with an "M106 S[fan_speed_pwm]" at the end.

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Wed Jan 23, 2019 11:21 am
by wirlybird
This is another "change" that makes absolutely no sense.
Why would you want to force the fan to come on for the first layer even if the fan speed is set to "0" for the first layer?

There is almost no reason or circumstance where you would want the fan to come on during the first layer.

4.1 & 4.1.1 really are a big disappointment. Too many "changes" that make no sense or make known issue worse rather than better.

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Tue Jan 29, 2019 12:00 pm
by S3D-Alex
Hey guys I just wanted to follow up with some information about this change and how to make sure everything works how you want going forward.

Simplify3D has changed the way Fan overrides work in Version 4.1. The overrides will now be honored throughout an entire print. This has been done to keep the logic consistent throughout all setups. We have outlined three common scenarios below and how they should ideally be accomplished going forward.

#1 - I want the fan overrides to be honored throughout my print consistently.

This will require no changes for the user. The fan speeds will override any setpoints input by the user and apply the fan overrides for any layers that meet the criteria.

#2 - I want the fan to turn off during heating but allow the fan to turn back on as soon as the print begins.

To accomplish this we will want to edit our Starting Script. We will go to Edit Process Settings > Scripts > Starting Script. You will see something that will look similar to the code below:

Starting Script Before:

G28 ; home all axes
G1 Z0.2 F1200 ; raise nozzle
G92 E0 ; reset extrusion distance
G1 X100 Y0 E12 F600 ; purge nozzle

Enter the line “M106 S0 ; turn off cooling fan” at the beginning of your start script
Enter the line “M106 S[fan_speed_pwm] ; set fan to variable PWM value” at the very end of your start script

Starting Script After:

M106 S0 ; turn off cooling fan
G28 ; home all axes
G1 Z0.2 F1200 ; raise nozzle
G92 E0 ; reset extrusion distance
G1 X100 Y0 E12 F600 ; purge nozzle
M106 S[fan_speed_pwm] ; set fan to variable PWM value

#3 - I want to turn off the cooling fan during heating and the first layer but honor fan overrides and setpoints from layer 2 on.

To accomplish this we will also want to edit our Starting Script. We will go to Edit Process Settings > Scripts > Starting Script. You will see something that will look similar to the code below:

Starting Script Before:

G28 ; home all axes
G1 Z0.2 F1200 ; raise nozzle
G92 E0 ; reset extrusion distance
G1 X100 Y0 E12 F600 ; purge nozzle

Starting Script After:

M106 S0 ; turn off cooling fan
G28 ; home all axes
G1 Z0.2 F1200 ; raise nozzle
G92 E0 ; reset extrusion distance
G1 X100 Y0 E12 F600 ; purge nozzle
M106 S;[fan_speed_pwm] ; set fan to variable PWM value

Please feel free to let us know if you have any questions or need any clarification.

Re: 4.1 generates Gcode that starts my cooling fan before it should be on

Posted: Tue Jan 29, 2019 12:15 pm
by wirlybird
Great info, thanks.

It would seem however that if a layer fan speed is set to zero "0" for any particular layer or segment of layers that that would be the ultimate override.

Or does setting a "0" fan speed for any particular layer all ready override all other fan controls?