I have been enjoying my new hobby with an Ender 5 3D printer I picked up from Facebook Marketplace. I have had some frustrating experiences, but all in all lots of learning.
I did a lot of modifications to my printer;
– Linear rails
– Bigtree SKR 1.4 Turbo with TMS 2209 steppers
– BMG Extruder
– Direct Drive
– Magnetic bed
– LED lights
– Micro-Swiss Hot End
– sensor less homing
One of my recent upgrades was a BL Touch for auto bed leveling. This was a challenge to get working correctly and also introduced other problems that I was not expecting. One of these things was with the latest Marlin Bug fix code. I used the example config files that were available and everything seemed to work out well, except that I was not able to print more than a calibration cube. I kept getting clogging and breaking filament when I tried to print a larger item. I finally figured out that my hot end fan was not working. I put a multimeter on the fan leads and found I was not getting any power and then started to investigate if there was a GCODE to turn on the fan. I found https://marlinfw.org/docs/gcode/M106.html and was able to turn on and off the fan with no issues with M106 P1 and M107 P1 respectively. This must be a software issue?
I started reviewing the latest Marlin code I downloaded (the bugfix branch from Sept 2020) https://github.com/MarlinFirmware/Marlin/tree/bugfix-2.0.x . I remember that I needed to change the PIN statement in my previous Marlin configuration when I installed the SKR 1.4 and started to look at that. The line I needed to change was the E0_AUTO_FAN_PIN definition to use P2_04, but in the newer sample code, the chamber variable is enabled by default. I do not have my printer in an enclosed chamber so I had to disable this definition #define chamber in the configuration.h file, recompile and all was good again.
/**
Extruder cooling fans
*
Extruder auto fans automatically turn on when their extruders'
temperatures go above EXTRUDER_AUTO_FAN_TEMPERATURE.
*
Your board's pins file specifies the recommended pins. Override those here
or set to -1 to disable completely.
*
Multiple extruders can be assigned to the same pin in which case
the fan will turn on when any selected extruder is above the threshold.
*/
if ENABLED(chamber)
#define E0_AUTO_FAN_PIN -1
else
#define E0_AUTO_FAN_PIN P2_04
endif
define E1_AUTO_FAN_PIN -1
define E2_AUTO_FAN_PIN -1
define E3_AUTO_FAN_PIN -1
define E4_AUTO_FAN_PIN -1
define E5_AUTO_FAN_PIN -1
define E6_AUTO_FAN_PIN -1
define E7_AUTO_FAN_PIN -1
define CHAMBER_AUTO_FAN_PIN -1