Solved Hotend fan not linked to tool, but follows part fan %
-
I have a dual nozzle setup with a part cooling fan (F0) and two hotend fans (F1 and F2), both F1 and F2 are configured to 100% speed when either hotend gets above 45C. Duet 3 MB6HC.
-If I set either tool temperature higher than 45C, F1 and F2 go to 100% as expected.
-If I print something using Tool 1, F1 follows the speed of F0 while F2 remains thermostatically controlled as desired
-If I print something using Tool 2, F2 follows the speed of F0 while F1 remains thermostatically controlled as desiredThis means if I print the first five layers with F0 set to 0%, one of the tool fans is also at 0% for the first five layers.
Cura has the cooling fan number set to 0 for both hotends.
I can't see anything wrong with my config. Any ideas?
; Configuration file for Duet 3 (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Feb 01 2022 16:47:18 GMT-0600 (Central Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"duet3" ; set printer name ; Drives M569 P0.0 S1 ; physical drive 0.0 goes backwards M569 P0.1 S1 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes backwards M569 P0.3 S0 ; physical drive 0.3 goes forwards M569 P0.4 S0 ; physical drive 0.4 goes forwards M569 P0.5 S1 ; physical drive 0.5 goes backwards M584 X0.0 Y0.1 Z0.2:0.3 E0.4:0.5 ; set drive mapping M350 X32 Y32 Z32 E64:64 I0 ; configure microstepping without interpolation M92 X160.00 Y160.00 Z1600.00 E1660:1660.00 ; set steps per mm M566 X1500 Y1500 Z180.00 E400.00:400.00 ; set maximum instantaneous speed changes (mm/min) M203 X12000.00 Y12000.00 Z800.00 E1200.00:1200.00 ; set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z100.00 E500.00:500.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z800E800:800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X350 Y300 Z400 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io0.in" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io0.in M574 Y2 S1 P"io1.in" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io1.in ; Z-Probe M950 S0 C"io7.out" ; create servo pin 0 for BLTouch M280 P0 S60 M558 P9 C"io7.in" H5 F600 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X-44 Y-9 Z1.03 ; set Z probe trigger value, offset and trigger height M557 X50:300 Y50:300 S20 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" A"Bed" T100000 B4092 ; configure sensor 0 as thermistor on pin temp3 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S100 ; set temperature limit for heater 0 to 80C M308 S1 P"temp1" Y"thermistor" A"T1 ExtLeft" T100000 B4685 C6.519681e-8 ; configure sensor 1 as thermistor on pin temp1 M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C M308 S2 P"temp2" Y"thermistor" A"T2 ExtRight" T100000 B4685 C6.519681e-8 ; configure sensor 2 as thermistor on pin temp2 M950 H2 C"out2" T2 ; create nozzle heater output on out2 and map it to sensor 2 M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H2 S280 ; set temperature limit for heater 2 to 280C ; Fans ;M950 F0 C"out7" Q500 ; create fan 0 on pin out7 and set its frequency ;M106 P0 C"part-cooling" S0.65 H-1 ; set fan 0 name and value. Thermostatic control is turned off M950 F0 C"!out4+out4.tach" Q25000 M106 P0 C"part-cooling" S0 H-1 M950 F1 C"out8" Q500 ; create fan 1 on pin out8 and set its frequency M106 P1 C"hotend1L" S1.0 H1:2 T45 ; set fan 1 name and value. Thermostatic control is turned on M950 F2 C"out9" Q500 ; create fan 2 on pin out9 and set its frequency M106 P2 C"hotend2R" S1.0 H1:2 T45 ; set fan 2 name and value. Thermostatic control is turned on ; Tools M563 P1 D0 H1 ; define tool 1 (assumes fan 0 as part fan, so not defined here) G10 P1 X-7 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C M563 P2 D1 H2 ; define tool 2 (assumes fan 0 as part fan, so not defined here) G10 P2 X7 Y0 Z0 ; set tool 2 axis offsets G10 P2 R0 S0 ; set initial tool 2 active and standby temperatures to 0C ; Custom settings M929 S3 ; enable logging ; Miscellaneous M501 ; load saved parameters from non-volatile memory M911 S12 R20 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
Cura Start G-Code:
G1 Z15.0 F6000 ;Move the platform down 15mm ;Prime the extruder G92 E0 G1 F200 E3 G92 E0
-
@seventhwhiskey said in Hotend fan not linked to tool, but follows part fan %:
; Tools
M563 P1 D0 H1 ; define tool 1 (assumes fan 0 as part fan, so not defined here)
G10 P1 X-7 Y0 Z0 ; set tool 1 axis offsets
G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C
M563 P2 D1 H2 ; define tool 2 (assumes fan 0 as part fan, so not defined here)
G10 P2 X7 Y0 Z0 ; set tool 2 axis offsets
G10 P2 R0 S0You need to define the part cooling fans in your tool definitions.
If F0 is the part cooling for both, you need to add
F0
to M563 for each tool.Just to be clear with terminology, part cooling fan is the fan that blows on the hot plastic. The hotend fans cool the heatsink on the print head.
-
@phaedrux
That was it. Apparently the RRF Config Tool doesn't attach F0 to the tool by default and is supposed to be assumed, but the explicit definition is required for it to work properly with two tools. -
-