Automatic Extruder Fan Settings for Marlin

I was not able to get a clear description on how to set up the extruder fan to turn on and off automatically when the extruder is hot. In Configuration_adv.h :

  • Set FAN_KICKSTART_TIME to a large value like 2000. Two seconds to spin up a fan won’t be an issue at temperature-change timescales. Give it plenty of time at full power to spin up.

  • Set EXTRUDER_0_AUTOFAN_PIN to 9 to use the D9 high-power output port from the RAMPS 1.4 board.

  • Set EXTRUDER_AUTO_FAN_SPEED to an appropriate speed, usually around 128 to 255.

    Unfortunately, this is compiled in, so you will need to experiment to see how much fan speed is necessary
    to keep the extruder cool and/or provide sufficient cooling for the plastic being deposited.

In pins.h:

  • Set FAN_PIN to -1 to disable old FAN_PIN usage


I’m not sure what FAN_PIN was and what it did, but it seems to be incompatible with using the automatic temperature-based fan settings.
It appears that when FAN_PIN is used, this is the pin controlled by the M106 Sxxx setting.
I think that M106 no longer does anything when using EXTRUDER_0_AUTOFAN_PIN to control the extruder fan.
It just runs at the one preset speed set by EXTRUDER_AUTO_FAN_SPEED when the extruder is hot.

Leave a Reply