Duet sometimes does not start to print after heatup
crynool last edited by crynool
I'm facing the problem, that sometimes after heating up, the printer just idles, doing nothing.
It is connected via Network and print is controlled via USB (Simplify3D).
The M117 command at the end of my starting script is seen in the Webinterface, but cannot recall to see it on the PanelDue.
Here is the starting code, the M122 and the config.g
Maybe another set of eyes can point me to a place...
I know in the heat up section, there is the M140 for the Bed followed by M116, then the G10 for the heater follower by another M116.
I want to have it in a sequence, not heating up in parallel.
I have the impression, with the old style code for setting the temperature (was it M190) it did not happen.
Enabling the 'Verbose Output' in Simplify3D after the printer idles does not show any output. M122 was run during the idle state, so at least there was a response from the Duet.
No Entry in the event log, debugging not enabled.
M80 ; Enable Power
M140 S-273.15 ; Switch Bed off
G10 P0 R-273.15 S-273.15 , Switch heater off
G28 ; home all axes
G29 S1 ; Load Mesh
G1 X0 Y0 Z5 F4000 ; Move closer to the Bed
G4 S1 ; Pause
G30 ; Single Probe
G0 X0 Y100 Z10 F4000 ; Get out of my way
M140 S60 ; get bed heating up
M116 ; and wait
G10 P0 S210 R60 ; set extruder temp
M116 ; and wait
M400 ; clear buffer
G4 S1 ; pause
M117 Gettin' it on... ; LCD status message
; process PLA - Silk Copper
; layer 1, Z = 0.100
G1 E-6.5000 F6600
; feature skirt
; tool H0.200 W0.400
G1 Z0.300 F1200
G1 X-14.382 Y22.043 F9000
G1 Z0.100 F1200
G1 E0.2000 F6600
G1 X-19.190 Y22.370 E0.1603 F900
G1 X-21.407 Y21.591 E0.2385
G1 X-22.204 Y21.398 E0.2657
G1 X-23.476 Y20.930 E0.3108
G1 X-24.292 Y20.520 E0.3412
G1 X-24.545 Y20.643 E0.3505
G1 X-24.864 Y20.786 E0.3622
G1 X-25.501 Y21.051 E0.3851
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 2.02(RTOS) running on Duet Ethernet 1.02 or later
Board ID: 08DGM-95BLL-N6PSS-6JKD0-3S46R-9JSML
Used output buffers: 1 of 20 (16 max)
=== RTOS ===
Static ram: 25524
Dynamic ram: 98332 of which 0 recycled
Exception stack ram used: 456
Never used ram: 6760
Tasks: NETWORK(ready,648) HEAT(blocked,1232) MAIN(running,3860) IDLE(ready,200)
=== Platform ===
Last reset 02:59:55 ago, cause: software
Last software reset at 2019-01-18 09:24, reason: User, spinning module GCodes, available RAM 6696 bytes (slot 1)
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
Error status: 0
Free file entries: 9
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest block write time: 3.9ms, max retries 0
MCU temperature: min 29.6, current 37.0, max 42.6
Supply voltage: min 0.4, current 24.3, max 24.5, under voltage events: 4, over voltage events: 0, power good: yes
Driver 0: standstill, SG min/max 0/186
Driver 1: standstill, SG min/max 1/238
Driver 2: standstill, SG min/max 0/158
Driver 3: standstill, SG min/max 0/1023
Driver 4: standstill, SG min/max not available
Date/time: 2019-01-18 12:24:26
Cache data hit count 4294967295
Slowest loop: 15.20ms; fastest: 0.06ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0
=== Move ===
Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm: 120, MaxWait: 9490025ms, Underruns: 0, 0
Scheduled moves: 7792, completed moves: 7792
Bed compensation in use: mesh
Bed probe heights: 0.000 0.000 0.000 0.000 0.000
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
Heater 0 is on, I-accum = 0.1
Heater 1 is on, I-accum = 0.3
=== GCodes ===
Segments left: 0
Stack records: 2 allocated, 0 in use
Movement lock held by null
http is idle in state(s) 0
telnet is idle in state(s) 0
file is idle in state(s) 0
serial is idle in state(s) 0
aux is idle in state(s) 0
daemon is idle in state(s) 0
queue is idle in state(s) 0
autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Slowest loop: 7.33ms; fastest: 0.02ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
HTTP sessions: 1 of 8
Interface state 5, link 100Mbps full duplex
; Configuration file for Duet Ethernet (firmware version 1.20 or newer)
; executed by the firmware on start-up
;M0 ;Power off & everything
; General preferences
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M555 P2 ; Set firmware compatibility to look like Marlin
M665 L288.160 R140 H285 B120.0 X0 Y0 Z0.000 ; Set delta radius, diagonal rod length, printable radius and homed height
M666 X0 Y0 Z0 A0 B0 ; Put your endstop adjustments here, or let auto calibration find them
M569 P0 S0 ; Drive 0 goes backwards
M569 P1 S0 ; Drive 1 goes backwards
M569 P2 S0 ; Drive 2 goes backwards
M569 P3 S0 ; Drive 3 goes backwards
M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
M92 X80 Y80 Z80 E476.55 ; Set steps per mm -> BONDTECH DEFAULT: 476.55
M566 X1200 Y1200 Z1200 E1200 ; Set maximum instantaneous speed changes (mm/min)
M203 X18000 Y18000 Z18000 E1200 ; Set maximum speeds (mm/min)
M201 X1000 Y1000 Z1000 E1000 ; Set accelerations (mm/s^2)
M906 X1200 Y1200 Z1200 E1300 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
; Axis Limits
M208 Z0 S1 ; Set minimum Z
M574 X2 Y2 Z2 S1 ; Set active high endstops
; Z probe and compensation definition
M558 P8 R0.4 T10000 F800 H3 A1 S0 B1
G31 P999 X0 Y0 Z-0.24
M557 R100 S25 ; Setup Mesh Bed Compensation grid. R: Mesh Radius, S: Cell Size
; >>>> Bed ----------------------------------------------------------------------------------------
M305 P0 T100000 B3950 R4700 H0 L0 ; Put your own H and/or L values here to set the bed thermistor ADC correction
; >>>> Hotends ------------------------------------------------------------------------------------
M305 P1 T100000 B4388 R4700 H0 L0 -
M143 H0 S120 ; Set temperature limit for heater 0 to 85C
M143 H1 S280 ; Set temperature limit for heater 1 to 280C
M106 P1 T60 S1 H1 C"Hotend" ; Set fan 1 value
M106 P2 I0 F100 H100:101:102 T50 C"Board" ; Set fan 2 value
M563 P0 D0 H1 ; 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 power saving
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss
M562 ;Reset Heater Faults
M912 P0 S-9 ;CPU Temp Calibration Offset
M501 ; Load saved parameters from non-volatile memory
M929 P"eventlog.txt" S1 ; start logging to file eventlog.txt
One problem that may cause prints not to work is not having a T0 command at the start of the GCode file you are trying to print. the T0 in your config.g file will mean that the first print will work, but subsequent prints might not if tool 0 is deselected when the print finishes or is cancelled.
We recommend that you upload the file produced by S3D to the SD card, and print from SD card. You can automate uploading from S3D, see https://forum.duet3d.com/topic/867/duet-wifi-s3d/14.
crynool last edited by crynool
Thanks for the reply.
I checked both of my config.g and the .gcode, as well as the additional starting script for the T0 and it was always there, not only in the config.g
I tried to put it into several places, had T-1 in the ending script, beginning of the start script a T-1 followed by a T0, just played around a bit.
When I use this sequence:
M140 S[bed0_temperature] ; get bed heating up
M116 H0 ;wait for bed heater
G10 P0 S[extruder0_temperature] R60 ; set extruder temp
M116 P0 ; and wait for extruder
T0 ; Activate Tool 0
It waits for the bed to heat up, then the tool becomes active, started heating and moving, not waiting until the hotend reached its temperature:
Warning: Tool 0 was not driven because its heater temperatures were not high enough or it has a heater fault
Even if I try the M116 without additional parameter, it does the same when I have the T0 after the heating section.
If I have the T0 before the section, every print which is not the first print after a reset waits forever.
I have multiple printers (not all Duet based), so I prefer to use my old way of working.
If this is a feature I have to deal with it, but maybe it is not ...
The T0 command needs to be before the M116 command, because tool heating does not start until the tool is selected.