Tool was not driven
-
Hello,
Recently my printer started having problems during the print - extrusion manually works well but during the print, it extrudes just a bit in the beginning and stops everything else.
G-code console shows that error during the calibration:
Tool 0 was not driven because its heater temperatures were not high enough or it has a heater fault
While temperature is actually okay, stable 60 hotend and 80 bed. I believe it could be linked with non-extrusion during the print as Duet thinks that hotend is too cold.
Process I use is following - I heat up bed to 80C, then home, then hotend to 60C, then calibration, then hotend to desired temp (currently 240C).PID calibration was done
Any ideas what could be wrong?PS: I have tried to add the 4th tower for flying extruder recently, so I believe that could provoke a problem but I have no idea where to start.
My config:
; Configuration file for Duet WiFi (firmware version 1.21) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2 on Sat Feb 02 2019 19:10:31 GMT+0200 (Eastern European Standard Time) ; General preferences G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; M665 L209:209:209:110 R91.5 H203 B100.0 X0 Y0 Z0.000 ; Set delta radius, diagonal rod length, printable radius and homed height M665 L209:209:209 R91.5 H203 B100.0 X0 Y0 Z0.000 M666 X0 Y0 Z0 ; Put your endstop adjustments here, or let auto calibration find them ; Network M586 P0 S1 ; Enable HTTP M586 P1 S0 ; Disable FTP M586 P2 S0 ; Disable Telnet ; M584 X0 Y1 Z2 U4 E3 ; Drives M569 P0 S1 ; Drive 0 goes forwards M569 P1 S1 ; Drive 1 goes forwards M569 P2 S1 ; Drive 2 goes forwards M569 P3 S1 ; Drive 3 goes backwards WAS S0 M569 P4 S0 M350 X16 Y16 Z16 E16 U16 I1 ; Configure microstepping with interpolation ; M92 X400.00 Y400.00 Z400.00 U400.0 E404.545; ; Set steps per mm E was 400 M92 X400.00 Y400.00 Z400.00 E404.545 ; M566 X1000.00 Y1000.00 Z1000.00 U1000 E3000.00 ; Set maximum instantaneous speed changes (mm/min) M566 X1000.00 Y1000.00 Z1000.00 E3000.00 ; M203 X5000.00 Y5000.00 Z5000.00 U5000 E6000.00 ; Set maximum speeds (mm/min) 3000 M203 X5000.00 Y5000.00 Z5000.00 E6000.00 ; M201 X1000.00 Y1000.00 Z1000.00 U1000 E2500.00 ; Set accelerations (mm/s^2) 250 M201 X1000.00 Y1000.00 Z1000.00 E2500.00 ; M906 X2000.00 Y2000.00 Z2000.00 U1000 E2000.00 I60 ; Set motor currents (mA) and motor idle factor in per cent M906 X2000.00 Y2000.00 Z2000.00 E2000.00 I60 M572 D0:1 S0.75 ; pressure advance M84 S30 ; Set idle timeout ; Axis Limits M208 Z0 S1 ; Set minimum Z ; M669 X0 Y0 ; FLYING ; Endstops M574 X2 Y2 Z2 U2 S1 ; Set active high endstops ; Z-Probe M558 P1 H5 I1 R0.4 F300 T6000 ; P1, Set Z probe type to unmodulated and the dive height + speeds G31 Z-0.3 P600 ; Set Z probe trigger value, offset and trigger height M557 R30 S9 ; Define mesh grid ; Heaters ; NEW? B3950 ; OLD B4138 ; E3D V6 thermo B4388 ; M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0 M305 P0 B4725 C7.060000e-8 M143 H0 S120 ; Set temperature limit for heater 0 to 120C M305 P1 T100000 B4725 C7.060000e-8 R4700 ; Set thermistor + ADC parameters for heater 1 M143 H1 S280 ; Set temperature limit for heater 1 to 280C ; Fans M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F2 ; Define tool 0 G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C ; Automatic saving after power loss is not enabled ; Custom settings are not configured M557 R70 S10 ; probe within a radius of 25mm from the centre with a mesh spacing of 20mm M579 X1.015892866 Y1.01156531665572173 ; 1.02 ;M915 X Y S40 F0 R2 M501
Config override:
; config-override.g file generated in response to M500 at 2020-02-26 11:58 ; This is a system-generated file - do not edit ; Delta parameters M665 L209.000:209.000:209.000:110.000 R90.873 H203.217 B100.0 X-0.717 Y-0.982 Z0.000 M666 X-0.306 Y-0.158 Z0.464 A0.92 B-0.03 ; Heater model parameters M307 H0 A55.4 C280.2 D4.7 S1.00 V12.4 B0 M307 H1 A352.2 C136.9 D2.7 S1.00 V12.4 B0 M307 H2 A340.0 C140.0 D5.5 S1.00 V0.0 B0 M307 H3 A340.0 C140.0 D5.5 S1.00 V0.0 B0 M307 H4 A340.0 C140.0 D5.5 S1.00 V0.0 B0 M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0 M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0 M307 H7 A340.0 C140.0 D5.5 S1.00 V0.0 B0 G10 L2 P1 X0.00 Y0.00 Z0.00 G10 L2 P2 X0.00 Y0.00 Z0.00 G10 L2 P3 X0.00 Y0.00 Z0.00 G10 L2 P4 X0.00 Y0.00 Z0.00 G10 L2 P5 X0.00 Y0.00 Z0.00 G10 L2 P6 X0.00 Y0.00 Z0.00 G10 L2 P7 X0.00 Y0.00 Z0.00 G10 L2 P8 X0.00 Y0.00 Z0.00 G10 L2 P9 X0.00 Y0.00 Z0.00
Firmware version
M115 FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 2.04 ELECTRONICS: Duet WiFi 1.02 or later FIRMWARE_DATE: 2019-11-01b1
-
@skayred What firmware version are you running? Send M115 and post response.
I can't see anything obviously wrong with your config.g, except that your heater tuning isn't in config.g. Can you post your config-override.g? You have M501 at the end of config.g to load it, and any heater tuning will be in that.
When you start a print, what temperatures do you see? Can you start a print, let it fail, then take a screenshot of the DWC?
Ian
-
@droftarts hello, please find screenshots attached:
So, it basically starts complaining about the temperature right at the beginning of calibration but plot shows stable picture
Also, config override and firmware version attached to the first message
-
@skayred I think it's happening because the hot end is quite slow to heat, so the calibration finishes and the print starts before the hot end has got to temperature. Did it used to heat up quicker? Check wiring and connections, or possibly check if the heater is failing.
There are some warnings before the calibration, which may mean that you have an extruder move in bed.g (or however else you're invoking the calibration), but maybe pressure advance is trying to make the extruder move for some reason.
Cold extrusion can be enabled, see M302, but is set to disallow any extrusion under 160C. Though I'm not sure you'd want to enable cold extrusion.
Another option would be to set hot end temperature and wait, using M109 rather than M104, rather than continuing with calibration. Perhaps also re-run the heater tuning with M303 and see if it has changed.
Can you post the file 'cube-20.gcode', so I can see what's happening at the beginning?
Probably not hugely important, but you have commented out your M584 command in config.g, however you're using the default mapping, so shouldn't matter. Also, your endstop configuration M574 still includes a U endstop.
Ian
-
@droftarts well, warnings appear only after 60C was reached and calibration was started, nothing before - on the second screenshot, you can see warnings for each bed touch (I have piezo sensors under).
About waiting - I also use it, so temperature is reached before any following actions will be done.
Tuning of the PID I have made right before making the experiment.
M584 is commented out to keep the 4th tower non-activated for some time, there is some mechanical problems.But most importantly, that problem started to appear only after I have made some settings for 4th tower, so I am thinking that it actually could be linked with tool numbering or some other settings that were default and now require additional parameters (maybe heater/thermistor)
Gcode:
cube-20.gcode -
@skayred said in Tool was not driven:
M665 L209.000:209.000:209.000:110.000 R90.873 H203.217 B100.0 X-0.717 Y-0.982 Z0.000
That line in your config-override.g says there are 4 towers; but you have commented out the M584 command that defined the driver for it. So I think it's trying to use the extruder at the 4th tower.
-
@skayred This is your gcode up to when it's printing the outline around the cube:
G90 M82 M106 S0 M140 S80 ; set bed temp M190 S80 ; wait for bed temp G28 ; home all M104 S60 ; set calibration extruder temp M109 S60 ; wait for extruder temp G32 ; auto-level G29 S0 ; G1 X60 F360 ; keep hotend away from the model M104 S240 ; set extruder temp M109 S240 ; wait for extruder temp ; process Process1-4 ; layer 1, Z = 0.200 T0 G1 E-2.0000 F1800 ; feature outer perimeter ; tool H0.200 W0.500 G1 Z0.200 F1002 G1 X9.750 Y9.750 F3000 G1 E0.0000 F1800 G1 X-9.750 Y9.750 E0.7560 F225 G1 X-9.750 Y-9.750 E1.5120 G1 X9.750 Y-9.750 E2.2680 G1 X9.750 Y9.750 E3.0241 G1 X9.500 Y9.750 E1.0241 F225 G1 X4.750 Y9.750 F225
Looking at your gcode, there's only G32 (which should call bed.g) and G29 (which starts bed mesh), none of which should cause extruder movement. So, going back to config.g, can you try changing the following:
AddM584 X0 Y1 Z2 E3
(to make sure you drives map correctly)
Remove 'U16' fromM350 X16 Y16 Z16 E16 U16 I1
(configuring microstepping for non-existent axis)
Remove ':1' fromM572 D0:1 S0.75
(pressure advance enabled for non-existent extruder drive)
Remove 'U2'M574 X2 Y2 Z2 U2 S1
(endstop for non-existent axis)I'd expect one of the above to be causing the hiccup, but not sure which!
Edit: and what @dc42 said above! Missed that one...
Ian
-
@dc42 hmm, thats quite curious as in both files I commented out 4th tower arm length, seems like calibration uses it, but where it gets that information?
-
@skayred said in Tool was not driven:
@dc42 hmm, thats quite curious as in both files I commented out 4th tower arm length, seems like calibration uses it, but where it gets that information?
Possibly defining the M350 microsteps would be enough.
Ian
-
@droftarts still no luck, same warnings still there, as well as 4th tower arms length
-
What's in your bed.g file?
Did you restart after deleting the M665 line in config-override.g?
-
@skayred Did you reset after changing config.g and override-config.g? Can you post your current versions of both?
Delta parameters in config-override.g should change from:
M665 L209.000:209.000:209.000:110.000 R90.873 H203.217 B100.0 X-0.717 Y-0.982 Z0.000
to
M665 L209.000:209.000:209.000 R90.873 H203.217 B100.0 X-0.717 Y-0.982 Z0.000
(or delete it, as @dc42 suggests)
Ian
-
@dc42 @droftarts I have commented out that line and restarted, but seems like file is regenerated after the calibration. Bed.g:
M561 ; clear any bed transform ; Probe the bed at 3 peripheral and 0 halfway points, and perform 3-factor auto compensation ; Before running this, you should have set up your Z-probe trigger height to suit your build, in the G31 command in config.g. G30 P0 X0.00 Y70.00 Z-99999 H0 G30 P1 X60.62 Y35.00 Z-99999 H0 G30 P2 X60.62 Y-35.00 Z-99999 H0 G30 P3 X0.00 Y-70.00 Z-99999 H0 G30 P4 X-60.62 Y-35.00 Z-99999 H0 G30 P5 X-60.62 Y35.00 Z-99999 H0 G30 P6 X0.00 Y35.00 Z-99999 H0 G30 P7 X30.31 Y-17.50 Z-99999 H0 G30 P8 X-30.31 Y-17.50 Z-99999 H0 G30 P9 X0 Y0 Z-99999 S8
-
@skayred So likely something in your config.g is still creating the 4th axis. Please post current config.g.
Ian
-
; Configuration file for Duet WiFi (firmware version 1.21) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2 on Sat Feb 02 2019 19:10:31 GMT+0200 (Eastern European Standard Time) ; General preferences G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; M665 L209:209:209:110 R91.5 H203 B100.0 X0 Y0 Z0.000 ; Set delta radius, diagonal rod length, printable radius and homed height M665 L209:209:209 R91.5 H203 B100.0 X0 Y0 Z0.000 M666 X0 Y0 Z0 ; Put your endstop adjustments here, or let auto calibration find them ; Network M586 P0 S1 ; Enable HTTP M586 P1 S0 ; Disable FTP M586 P2 S0 ; Disable Telnet ; M584 X0 Y1 Z2 U4 E3 M584 X0 Y1 Z2 E3 ; Drives M569 P0 S1 ; Drive 0 goes forwards M569 P1 S1 ; Drive 1 goes forwards M569 P2 S1 ; Drive 2 goes forwards M569 P3 S1 ; Drive 3 goes backwards WAS S0 M569 P4 S0 ; M350 X16 Y16 Z16 E16 U16 I1 ; Configure microstepping with interpolation M350 X16 Y16 Z16 E16 I1 ; M92 X400.00 Y400.00 Z400.00 U400.0 E404.545; ; Set steps per mm E was 400 M92 X400.00 Y400.00 Z400.00 E404.545 ; M566 X1000.00 Y1000.00 Z1000.00 U1000 E3000.00 ; Set maximum instantaneous speed changes (mm/min) M566 X1000.00 Y1000.00 Z1000.00 E3000.00 ; M203 X5000.00 Y5000.00 Z5000.00 U5000 E6000.00 ; Set maximum speeds (mm/min) 3000 M203 X5000.00 Y5000.00 Z5000.00 E6000.00 ; M201 X1000.00 Y1000.00 Z1000.00 U1000 E2500.00 ; Set accelerations (mm/s^2) 250 M201 X1000.00 Y1000.00 Z1000.00 E2500.00 ; M906 X2000.00 Y2000.00 Z2000.00 U1000 E2000.00 I60 ; Set motor currents (mA) and motor idle factor in per cent M906 X2000.00 Y2000.00 Z2000.00 E2000.00 I60 M572 D0 S0.75 ; pressure advance M84 S30 ; Set idle timeout ; Axis Limits M208 Z0 S1 ; Set minimum Z ; M669 X0 Y0 ; FLYING ; Endstops ; M574 X2 Y2 Z2 U2 S1 ; Set active high endstops M574 X2 Y2 Z2 S1 ; Z-Probe M558 P1 H5 I1 R0.4 F300 T6000 ; P1, Set Z probe type to unmodulated and the dive height + speeds G31 Z-0.3 P600 ; Set Z probe trigger value, offset and trigger height M557 R30 S9 ; Define mesh grid ; Heaters ; NEW? B3950 ; OLD B4138 ; E3D V6 thermo B4388 ; M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0 M305 P0 B4725 C7.060000e-8 M143 H0 S120 ; Set temperature limit for heater 0 to 120C M305 P1 T100000 B4725 C7.060000e-8 R4700 ; Set thermistor + ADC parameters for heater 1 M143 H1 S280 ; Set temperature limit for heater 1 to 280C ; Fans M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F2 ; Define tool 0 G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C ; Automatic saving after power loss is not enabled ; Custom settings are not configured M557 R70 S10 ; probe within a radius of 25mm from the centre with a mesh spacing of 20mm M579 X1.015892866 Y1.01156531665572173 ; 1.02 ;M915 X Y S40 F0 R2 M501
-
If you reboot (with the M665 line in config-override.g removed) and then send M665 without parameters, does it report 3 rod lengths or 4?
-
@dc42 3 length reported in that case.
-
If you now run auto calibration, does it report 3 or 4 after that?
-
@dc42 Surprisingly 3 lengths still o_O While config-override is not updated
15:57:53 M665 Diagonals 209.000:209.000:209.000, delta radius 91.146, homed height 203.228, bed radius 100.0, X -0.626°, Y -1.399°, Z 0.000° 15:57:44 G32 Calibrated 8 factors using 10 points, deviation before 0.324 after 0.009 15:57:12 G28 15:56:41 M665 Diagonals 209.000:209.000:209.000, delta radius 91.500, homed height 203.000, bed radius 100.0, X 0.000°, Y 0.000°, Z 0.000°
-
@skayred said in Tool was not driven:
@dc42 Surprisingly 3 lengths still o_O While config-override is not updated
15:57:53 M665 Diagonals 209.000:209.000:209.000, delta radius 91.146, homed height 203.228, bed radius 100.0, X -0.626°, Y -1.399°, Z 0.000° 15:57:44 G32 Calibrated 8 factors using 10 points, deviation before 0.324 after 0.009 15:57:12 G28 15:56:41 M665 Diagonals 209.000:209.000:209.000, delta radius 91.500, homed height 203.000, bed radius 100.0, X 0.000°, Y 0.000°, Z 0.000°
So does it auto calibrate now without those error messages?
config-override.g will only be updated if you send M500.