User Tools

Site Tools


(Up to user-created-add-ons)

A fan can be useful for cooling PLA prints to improve bridging and overhang performance. It also means that you don't need to insert a minimum layer time in your slicing profile.

You can find one design here for the original Bukoschnozzle hot-end and x-carriage design of the Bukobot:


Note: this is not the same as the extruder fan which is intended to cool the extruder motor and cold-end (i.e., the finned metal area above the PEEK insulator). The extruder fan should always be on when the extruder is on and should be run at a constant speed.

There are a number of points to remember when using a PLA cooling fan:

  1. The fan must not blow onto the hot end.
  2. Do not use the fan for ABS prints (they will crack).
  3. The fan shouldn't be used for the first few layers as it reduces adhesion to the bed surface.
  4. Don't overdo the fan when not printing small models, overhangs or bridges (increases stringing)

If you connect the fan to the correct pins on the Azteeg controller then it can be automatically controlled by Slic3r and Repetier-Host through the M106/M107 commands. For instance, Slic3r can be configured to automatically turn the fan on after the first layer.

For the Azteeg X3 controller you simply connect the fan to the D4 low power switched output pin (this is the left-hand-most set of pins on the block of pins to the left of the thermistor connectors). The red fan lead connects to the 12V or 5V pin (depending of you fan's voltage) and the black lead connects to the middle D4 pin. The X3 Marlin firmware requires no modification as it already assumed that D4 is assigned to the M106/M107 cooling fan command.

For the Azteeq X1 controller, there is a single 12V switched fan output on the board. Connect the fan to this. Unfortunately the Marlin firmware doesn't automatically use this pin (D4 again) for the FAN_PIN and so you need to modify the X1 Marlin firmware to do so. In the Marlin/pins.h file, search for a line which says ”#if MOTHERBOARD == 62 || MOTHERBOARD == 63”, then search for the next occurrence of ”#define FAN_PIN -1” and change it to ”#define FAN_PIN 4”. Recompile and upload firmware as described in software-to-install

For both the Azteeg X1 and X3 you can actually minimize the extra cables you need by connecting all +ve wires on your 12VDC fans to the extruder +ve terminal cable (the extruder positive cable is directly connected to the supply 12V line). This means with the original 6 x-carriage wires (for a single extruder model) you can be either one permanently on fan and one software controlled fan or two software controlled fans (e.g., one temperature activated extruder fan and one Slic3r controlled PLA cooling fan).

You can test that the fan is working properly using the Repetier-Host Manual Control tab (which has a fan control button and slider). [This uses the M106/M107 commands.] Note however that your fan is a simple 2 wire DC controlled fan then it will likely only work when the slider is at 100% unless you implement the speed control circuit described below.

Then in Slic3r change your PLA filament profiles to “Enable cooling”.

The most common type of 12V fan is a cheap 2-pin voltage controlled variety. Some of these fans cannot be speed controlled directly from the Azteeg PWM (Pulse Width Modulation) FAN pin outputs. The problematic fans only work (when directly connected) if the fan speed is set to 100%.

If you want to use the speed control features of Slic3r for your cooling then you need two more common components: a 10uF Electrolytic Cap and a diode (pretty much any diode which can handle the fans forward current will do but the 1N4148 / 1N914 diode is a pretty common one). These need to be wired as follows:

Other fans allow some degree of speed control when directly connected to a 12V PWM signal, however, even in this case the above circuit should reduce the high pitched whine emitted by the fan when run at low speed and increase the usable range of your speed control.

You should just be able to solder the two components together and mount them on your x-carriage. Both the cap and diode normally have a line on their package to mark the negative side (for the diode this is called the cathode and is connected to the FAN pin). [If you adapting the circuit to drive something which requires a lot more current then you may need to increase the size of the cap but this should be fine for the small fans we are using here.]

The speed control means that the fan can run slowly for most of the printing and then speed up for overhangs and bridges when its needed.

This is desirable because running the cooling fan at 100% all the time can introduce/exacerbate other print defects like stringing. It also makes your print quality far more variable on the ambient air temperature. That is why the modern slicer cooling profiles turn off or run the fan at lower speed for the majority of printing and then turn up the fan for small layers times, bridges & overhangs.

The following picture is a rather small overhand test with overhangs angle from 30 to 5 degrees ( The left hand object was printed without the cooling fan on, the right one was printed with the cooling fan on.

I also printed the following bridging test: Unfortunately the pics aren't very clear to see. There is a definite bridging improvement but if the fan was just left on constantly then stringing was more of an issue (the test object specifically has a thin wall which the hot-end must cross to test stringing/blobbing performance [I cut that part of the model off in the picture so that you can see the bridges more clearly]). KISSlicer does a much better job of avoiding the stringing but the current version (1.1.0) does a lousy job with fine bridging with or without the fan.


pla-print-cooling-fan.txt · Last modified: 2013/04/04 07:46 by buildrob