Duet 2 Maestro occasionally stops mid print
-
Hello,
I recently updated to RRF3 and occasionally it stops mid print and ends the job. When I run the same gcode again it just prints fine.
Today it happend twice on different gcode and with successful prints in between. The M122 shows nearly identical results (included below).
Since it happend after updating I suspect I maybe made an error in the config.g. What would be the best way to find these?M122 === Diagnostics === RepRapFirmware for Duet 2 Maestro version 3.2 running on Duet Maestro 1.0 Board ID: 08DJM-956DU-LLMS4-7JTD6-3SS6L-KVLUR Used output buffers: 3 of 24 (10 max) === RTOS === Static ram: 22292 Dynamic ram: 73128 of which 24 recycled Never used RAM 19388, free system stack 214 words Tasks: NETWORK(ready,204) HEAT(blocked,340) TMC(blocked,117) MAIN(running,477) IDLE(ready,20) Owned mutexes: === Platform === Last reset 00:05:38 ago, cause: software Last software reset at 2021-02-13 11:38, reason: StuckInSpinLoop, GCodes spinning, available RAM 19352, slot 2 Software reset code 0x4083 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0000080f BFAR 0xe000ed38 SP 0x2000437c Task MAIN Freestk 797 ok Stack: 0041e471 004555e2 610f0000 00000000 00000001 0041da55 00004009 00000001 e000ed04 20000c68 00000001 00004009 00000001 20000c68 0041e763 00000001 00000001 00000000 0041eedd 00000000 00000001 200045dc 00f07fff 00000000 20000c30 00004009 20000e48 Error status: 0x00 Aux0 errors 0,0,0 MCU temperature: min 19.7, current 20.1, max 21.2 Supply voltage: min 0.0, current 24.4, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes Driver 0: position 0, standstill, read errors 0, write errors 1, ifcnt 21, reads 56346, writes 8, timeouts 0, DMA errors 0 Driver 1: position 0, standstill, read errors 0, write errors 1, ifcnt 21, reads 56346, writes 8, timeouts 0, DMA errors 0 Driver 2: position 0, standstill, read errors 0, write errors 1, ifcnt 21, reads 56346, writes 8, timeouts 0, DMA errors 0 Driver 3: position 0, standstill, read errors 0, write errors 1, ifcnt 21, reads 56346, writes 8, timeouts 0, DMA errors 0 Driver 4: position 0, standstill, read errors 0, write errors 1, ifcnt 13, reads 56348, writes 6, timeouts 0, DMA errors 0 Driver 5: position 0, assumed not present Driver 6: position 0, assumed not present Date/time: 2021-02-13 11:44:13 Slowest loop: 74.25ms; fastest: 0.17ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 15.0MBytes/sec SD card longest read time 1.4ms, write time 0.0ms, max retries 0 === Move === DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters = 0 -1, chamberHeaters = -1 -1 === GCodes === Segments left: 0 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 USB is idle in state(s) 0 Aux is idle in Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 5.57ms; fastest: 0.02ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 Interface state active, link 100Mbps full duplex
M122 === Diagnostics === RepRapFirmware for Duet 2 Maestro version 3.2 running on Duet Maestro 1.0 Board ID: 08DJM-956DU-LLMS4-7JTD6-3SS6L-KVLUR Used output buffers: 3 of 24 (10 max) === RTOS === Static ram: 22292 Dynamic ram: 73128 of which 24 recycled Never used RAM 19388, free system stack 214 words Tasks: NETWORK(ready,206) HEAT(blocked,334) TMC(blocked,117) MAIN(running,468) IDLE(ready,20) Owned mutexes: === Platform === Last reset 00:02:09 ago, cause: software Last software reset at 2021-02-13 15:10, reason: StuckInSpinLoop, GCodes spinning, available RAM 19352, slot 0 Software reset code 0x4083 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0000080f BFAR 0xe000ed38 SP 0x2000437c Task MAIN Freestk 797 ok Stack: 0041e471 004555e0 610f0000 00000000 00000001 0041da55 00004181 00000001 e000ed04 20000c68 00000001 00004181 00000001 20000c68 0041e763 00000001 00000001 00000000 0041eedd 00000000 00000001 2000448c 00f07fff 0000000f 20000c30 00004181 20000e48 Error status: 0x00 Aux0 errors 0,0,0 MCU temperature: min 21.2, current 21.7, max 22.4 Supply voltage: min 0.0, current 24.4, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes Driver 0: position 0, standstill, read errors 0, write errors 1, ifcnt 26, reads 21594, writes 8, timeouts 0, DMA errors 0 Driver 1: position 0, standstill, read errors 0, write errors 1, ifcnt 26, reads 21594, writes 8, timeouts 0, DMA errors 0 Driver 2: position 0, standstill, read errors 0, write errors 1, ifcnt 28, reads 21594, writes 8, timeouts 0, DMA errors 0 Driver 3: position 0, standstill, read errors 0, write errors 1, ifcnt 26, reads 21594, writes 8, timeouts 0, DMA errors 0 Driver 4: position 0, standstill, read errors 0, write errors 1, ifcnt 13, reads 21596, writes 6, timeouts 0, DMA errors 0 Driver 5: position 0, assumed not present Driver 6: position 0, assumed not present Date/time: 2021-02-13 15:12:32 Slowest loop: 73.97ms; fastest: 0.17ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 15.0MBytes/sec SD card longest read time 1.4ms, write time 0.0ms, max retries 0 === Move === DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters = 0 -1, chamberHeaters = -1 -1 === GCodes === Segments left: 0 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 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 5.21ms; fastest: 0.02ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 Interface state active, link 100Mbps full duplex``` [0_1613229063924_config.g](Uploading 100%)[config.g](/assets/uploads/files/1613229649410-config.g)
-
can you post your config.
-
I tried to include it but it aperantly didn't show up.
Does it work now?
config.g -
dont see anything in there that could cause that.
however your second thermistor setting is incorrect
M308 S2 P"e1temp" Y"thermistor" T100000 B4092 C7.06e-8 ; define enclosure temperature sensor
either its an semitec then your b value is incorrect or its not and you put in C by mistake
-
I think I forgot to remove that after I copied the first thermistor.
If the config is fine do you know what steps I could take to figure out why it randomly stops? -
can you try 3.2.2? there were some sd card fixes that dc42 caused StuckInSpinLoop.
-
Just updated to 3.2.2. I'll probably find out tomorrow if it fixed the issue
-
Im on 3.2.2 now and it suddenly stopped again. This time not during a print but during the auto bed leveling. Does that rule out the sd card causing issues?
M122 === Diagnostics === RepRapFirmware for Duet 2 Maestro version 3.2.2 running on Duet Maestro 1.0 Board ID: 08DJM-956DU-LLMS4-7JTD6-3SS6L-KVLUR Used output buffers: 1 of 24 (10 max) === RTOS === Static ram: 22284 Dynamic ram: 73128 of which 24 recycled Never used RAM 19396, free system stack 206 words Tasks: NETWORK(ready,206) HEAT(blocked,341) TMC(blocked,117) MAIN(running,478) IDLE(ready,21) Owned mutexes: === Platform === Last reset 00:15:27 ago, cause: software Last software reset at 2021-02-15 17:22, reason: StuckInSpinLoop, GCodes spinning, available RAM 18992, slot 0 Software reset code 0x4083 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0000080f BFAR 0xe000ed38 SP 0x200042cc Task MAIN Freestk 754 ok Stack: 0041e60b 00455812 610b0000 00000000 00000000 20002858 00000001 00000001 00000014 7f61294e 20000c68 00000001 00000000 00000001 20000c68 00000028 7f62712c 200028cc 0041e9f1 00000001 00000000 00004184 0041f171 20000c68 00000001 7f5e9f7b 00f07fff Error status: 0x00 Aux0 errors 0,0,0 MCU temperature: min 19.4, current 20.0, max 21.0 Supply voltage: min 0.0, current 24.4, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes Driver 0: position 0, standstill, read errors 0, write errors 1, ifcnt 23, reads 23427, writes 8, timeouts 0, DMA errors 0 Driver 1: position 0, standstill, read errors 0, write errors 1, ifcnt 23, reads 23427, writes 8, timeouts 0, DMA errors 0 Driver 2: position 0, standstill, read errors 0, write errors 1, ifcnt 25, reads 23427, writes 8, timeouts 0, DMA errors 0 Driver 3: position 0, standstill, read errors 0, write errors 1, ifcnt 22, reads 23427, writes 8, timeouts 0, DMA errors 0 Driver 4: position 0, standstill, read errors 0, write errors 1, ifcnt 13, reads 23429, writes 6, timeouts 0, DMA errors 0 Driver 5: position 0, assumed not present Driver 6: position 0, assumed not present Date/time: 2021-02-15 17:38:44 Slowest loop: 72.61ms; fastest: 0.17ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 15.0MBytes/sec SD card longest read time 1.4ms, write time 0.0ms, max retries 0 === Move === DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters = 0 -1, chamberHeaters = -1 -1 === GCodes === Segments left: 0 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 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 6.40ms; fastest: 0.02ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 Interface state active, link 100Mbps full duplex
-
@dc42 can you have a look at the stacktrace?
-
Can you post your full config.g and the results of M98 P"config.g" ?
And maybe a sample gcode file that has caused the crash?
-
@Phaedrux
the config is above -
Would the gcode be helpful? It doesn't consistently happen even with running the same file again. The last one happend during a mesh level command
M98 P"config.g" HTTP is enabled on port 80 FTP is disabled TELNET is disabled Warning: Heater 1 appears to be over-powered. If left on at full power, its temperature is predicted to reach 463C
-
@Veti said in Duet 2 Maestro occasionally stops mid print:
@Phaedrux
the config is aboveAh yes, missed the link.
@Infinitysnek said in Duet 2 Maestro occasionally stops mid print:
Would the gcode be helpful? It doesn't consistently happen even with running the same file again. The last one happend during a mesh level command
In that case, probably not.
-
In all three M122 reports that you provided, the microcontroller was stuck waiting for an SD command to complete. So I have these suggestions:
- Replace the SD card
- Firmware 3.2.x reads the SD card more often than older firmware because it supports the daemon.g process. If you are not using daemon.g, create a daemon.g file in /sys containing this single command:
G4 S100000
That will put the daemon task to sleep for almost a month at a time.
-
@dc42 Thank you for looking in to this.
I made the daemon.g file, does that run automatically on startup or do I need to do something once a month?
I'll wait for a new SD card to arrive tomorrow. -
The daemon.g file runs automatically at startup, so just having the file present is sufficient to put it to sleep.
-
PS - are you running your prints from the internal SD card in the Duet, or are you using an external SD card socket?
-
@dc42 All from the internal SD card. I upload everything via the web interface. I don't have an external SD card socket.