I have an IDEX machine with a 6HC and 3HC expansion, running latest 3.4.1 RRF and DSF. Unfortunately I'm running into an issue where it just randomly stops printing. Typically on long prints, many hours in. Previously it would fail with an SPI error and I was told that 3.4.1 fixed some SPI comms issues, so I upgraded. But now I've had it still fail with slightly different errors. See below from the duetcontrolserver
logs.
I'm at my wit's end here... previously it failed because I was using WiFi on a Pi4 and that brought down the SPI. That seems fixed by using ethernet instead, but now I keep getting these other comms errors. I basically cannot trust that it will ever finish a print. Especially if they are very long.
The Pi is powered from a 100W 5V MeanWell power supply that does power a couple other things but those maybe require 15-20W together. And I've been monitoring for voltage drops and the Pi has not reported any.
I'm very tempted to swap out the 4 for a 3B+ because I have another 6HC printer with that and it's always worked fine. But I'm about to pack it up for MRRF and don't really have the time at the moment.
Jun 17 08:58:57 Rancor DuetControlServer[436]: [info] Finished macro file M4201.g
Jun 17 08:58:57 Rancor DuetControlServer[436]: [info] Starting macro file M800.g on channel File
Jun 17 08:58:57 Rancor DuetControlServer[436]: [info] Finished macro file M800.g
Jun 17 08:59:04 Rancor DuetControlServer[436]: [info] Starting macro file tfree0.g on channel File
Jun 17 08:59:05 Rancor DuetControlServer[436]: [info] Starting macro file M800.g on channel File
Jun 17 08:59:05 Rancor DuetControlServer[436]: [warn] Lost connection to Duet (Board is not available (no header))
Jun 17 08:59:05 Rancor DuetControlServer[436]: [info] Connection to Duet established
Jun 17 08:59:05 Rancor DuetControlServer[436]: [info] Starting macro file config.g on channel Trigger
Jun 17 08:59:05 Rancor DuetControlServer[436]: [info] Starting macro file globals.g on channel Trigger
Jun 17 08:59:06 Rancor DuetControlServer[436]: [info] Finished macro file globals.g
Jun 17 08:59:08 Rancor DuetControlServer[436]: [error] M584: Driver 1.0 does not exist
Jun 17 08:59:08 Rancor DuetControlServer[436]: Driver 1.1 does not exist
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Starting macro file tools/t0.g on channel Trigger
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Finished macro file tools/t0.g
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Starting macro file tools/t1.g on channel Trigger
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Finished macro file tools/t1.g
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Starting macro file tools/bed.g on channel Trigger
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Finished macro file tools/bed.g
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Starting macro file tools/setup.g on channel Trigger
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Starting macro file tools/revo_a_0.4/config.g on channel Trigger
Jun 17 08:59:09 Rancor DuetControlServer[436]: [warn] M307: Heater 1 predicted maximum temperature at full power is 497°C
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Finished macro file tools/revo_a_0.4/config.g
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Starting macro file tools/revo_b_0.4/config.g on channel Trigger
Jun 17 08:59:09 Rancor DuetControlServer[436]: [warn] M307: Heater 2 predicted maximum temperature at full power is 497°C
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Finished macro file tools/revo_b_0.4/config.g
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Starting macro file tools/bed_offsets.g on channel Trigger
Jun 17 08:59:09 Rancor DuetControlServer[436]: [info] Finished macro file tools/bed_offsets.g
Jun 17 08:59:10 Rancor DuetControlServer[436]: [info] Finished macro file tools/setup.g
Jun 17 08:59:10 Rancor DuetControlServer[436]: [info] Starting macro file soft_load_tool.g on channel Trigger
Jun 17 08:59:11 Rancor DuetControlServer[436]: [info] Starting macro file 0:/filaments/PLA/config.g on channel Trigger
Jun 17 08:59:11 Rancor DuetControlServer[436]: [info] Starting macro file tools/revo_a_0.4/filament.g on channel Trigger
Jun 17 08:59:11 Rancor DuetControlServer[436]: [info] Finished macro file tools/revo_a_0.4/filament.g
Jun 17 08:59:11 Rancor DuetControlServer[436]: [info] Finished macro file 0:/filaments/PLA/config.g
Jun 17 08:59:11 Rancor DuetControlServer[436]: [info] Finished macro file soft_load_tool.g
Jun 17 08:59:11 Rancor DuetControlServer[436]: [info] Finished macro file config.g
Jun 17 09:08:46 Rancor DuetControlServer[436]: [warn] File: Aborting orphaned macro file M800.g
Jun 17 09:08:46 Rancor DuetControlServer[436]: [info] Aborted macro file M800.g
Jun 17 09:08:46 Rancor DuetControlServer[436]: [warn] File: ==> Cancelling unfinished starting code: M800 F"toolchange"
Jun 17 09:08:46 Rancor DuetControlServer[436]: [warn] File: Aborting orphaned macro file tfree0.g
Jun 17 09:08:46 Rancor DuetControlServer[436]: [info] Aborted macro file tfree0.g
Jun 17 09:08:46 Rancor DuetControlServer[436]: [warn] File: ==> Cancelling unfinished starting code: T1
Diagnostics run right after the fail:
6/17/2022, 9:10:41 AM M122 B1
Diagnostics for board 1:
Duet EXP3HC rev 1.01 or earlier firmware version 3.4.1 (2022-06-01 21:15:27)
Bootloader ID: SAME5x bootloader version 2.3 (2021-01-26b1)
All averaging filters OK
Never used RAM 158400, free system stack 200 words
Tasks: Move(notifyWait,0.0%,160) HEAT(notifyWait,0.0%,84) CanAsync(notifyWait,0.0%,69) CanRecv(notifyWait,0.0%,82) CanClock(notifyWait,0.0%,71) TMC(notifyWait,7.4%,99) MAIN(running,91.3%,344) IDLE(ready,0.0%,40) AIN(delaying,1.3%,263), total 100.0%
Last reset 00:01:54 ago, cause: software
Last software reset data not available
Driver 0: pos 0, 160.0 steps/mm,standstill, SG min 0, mspos 472, reads 46910, writes 16 timeouts 0, steps req 0 done 0
Driver 1: pos 0, 160.0 steps/mm,standstill, SG min 0, mspos 296, reads 46911, writes 16 timeouts 0, steps req 0 done 0
Driver 2: pos 0, 397.0 steps/mm,standstill, SG min 0, mspos 408, reads 46911, writes 16 timeouts 0, steps req 0 done 0
Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
Peak sync jitter -2/2, peak Rx sync delay 174, resyncs 0/0, no step interrupt scheduled
VIN voltage: min 24.2, current 24.2, max 24.2
V12 voltage: min 12.1, current 12.1, max 12.2
MCU temperature: min 41.2C, current 41.4C, max 42.0C
Last sensors broadcast 0x00000004 found 1 148 ticks ago, 0 ordering errs, loop time 0
CAN messages queued 1023, send timeouts 101, received 116, lost 0, free buffers 37, min 37, error reg 110000
Last cancelled message type 4519 dest 0
dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
=== Filament sensors ===
Interrupt 5726621 to 0us, poll 1 to 114us
Driver 2: ok
6/17/2022, 9:10:39 AM M122 B0
=== Diagnostics ===
RepRapFirmware for Duet 3 MB6HC version 3.4.1 (2022-06-01 21:09:01) running on Duet 3 MB6HC v1.01 or later (SBC mode)
Board ID: 08DJM-9P63L-DJ3S0-7JTD0-3SN6R-TUMBA
Used output buffers: 1 of 40 (14 max)
=== RTOS ===
Static ram: 151000
Dynamic ram: 68896 of which 0 recycled
Never used RAM 127920, free system stack 202 words
Tasks: SBC(resourceWait:,2.9%,466) HEAT(notifyWait,0.0%,359) Move(notifyWait,0.0%,352) CanReceiv(notifyWait,0.1%,797) CanSender(notifyWait,0.0%,374) CanClock(delaying,0.0%,348) TMC(notifyWait,7.5%,92) MAIN(running,76.1%,1231) IDLE(ready,13.4%,30), total 100.0%
Owned mutexes: HTTP(MAIN)
=== Platform ===
Last reset 00:00:09 ago, cause: software
Last software reset at 2022-06-17 09:10, reason: User, GCodes spinning, available RAM 127744, slot 2
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a
Error status: 0x00
Aux0 errors 0,0,0
Aux1 errors 0,0,0
Step timer max interval 1628
MCU temperature: min 41.3, current 41.6, max 41.9
Supply voltage: min 23.9, current 23.9, max 23.9, under voltage events: 0, over voltage events: 0, power good: yes
12V rail voltage: min 12.0, current 12.1, max 12.1, under voltage events: 0
Heap OK, handles allocated/used 99/57, heap memory allocated/used/recyclable 2048/928/218, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min 0, mspos 984, reads 53081, writes 14 timeouts 0
Driver 1: standstill, SG min 0, mspos 584, reads 53082, writes 14 timeouts 0
Driver 2: standstill, SG min 0, mspos 920, reads 53082, writes 14 timeouts 0
Driver 3: standstill, SG min 0, mspos 632, reads 53082, writes 14 timeouts 0
Driver 4: standstill, SG min 0, mspos 216, reads 53082, writes 14 timeouts 0
Driver 5: standstill, SG min 0, mspos 936, reads 53082, writes 14 timeouts 0
Date/time: 2022-06-17 09:10:37
Slowest loop: 211.92ms; fastest: 0.00ms
=== Storage ===
Free file entries: 10
SD card 0 not detected, interface speed: 37.5MBytes/sec
SD card longest read time 0.0ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
=== GCodes ===
Segments left: 0
Movement lock held by null
HTTP* is doing "M122 B0" 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 0 0, running macro
Queue is idle in state(s) 0
LCD is idle in state(s) 0
SBC is idle in state(s) 0
Daemon is idle in state(s) 0
Aux2 is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty
=== Filament sensors ===
Extruder 0 sensor: ok
Extruder 1 sensor: no filament
=== CAN ===
Messages queued 88, received 851, lost 0, boc 0
Longest wait 1ms for reply type 6018, peak Tx sync delay 324, free buffers 50 (min 49), ts 48/47/0
Tx timeouts 0,0,0,0,0,0
=== SBC interface ===
Transfer state: 5, failed transfers: 0, checksum errors: 0
RX/TX seq numbers: 4821/4821
SPI underruns 0, overruns 0
State: 5, disconnects: 0, timeouts: 0 total, 0 by SBC, IAP RAM available 0x2b858
Buffer RX/TX: 0/0-0, open files: 0
=== Duet Control Server ===
Duet Control Server v3.4.1
Trigger:
Finishing macro tools/setup.g, started by M98 P"tools/setup.g"
> Next stack level
Executing macro config.g, started by system
Suspended code: M98 P"soft_load_tool.g" S0
> Next stack level
Code buffer space: 4096
Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 0
Full transfers per second: 596.70, max time between full transfers: 97.7ms, max pin wait times: 46.8ms/34.0ms
Codes per second: 11.99
Maximum length of RX/TX data transfers: 3616/540