Issue
I have issue with my DUET SZP canboard. When I start up printer everything is ok. When using SZP(homing/bed leveling/meshing) I get random Can timeout on SZP board. Sometimes it works without errors and it starts printing. Sometimes it errors out and I have to reset printer and try again. Sometimes it logs error in DWC Console but still functions as expected(home/bed level/mesh)
Console it looks like this:
12/04/2025, 11:24:29 Error: CAN response timeout: board 120, req type 6061, RID 35
Error: Expansion board 120 reconnected
12/04/2025, 11:24:27 Error: CAN response timeout: board 120, req type 6061, RID 35
Error: Expansion board 120 reconnected
Setup:
MB6HC->3HC->Tooldistribution->SZP
MB6HC - can terminated
SZP - Can terminated.
Tooldsitribution - SZP connected to T3, bypass jumpers removed. Also removed tooldistribution termination jumper.
What I have done already.
Made new canbus wire
recrimped both cable ends
Eliminated Tooldistribution board
redid ja swapped RJ11 canbuswires between MB6HC->3HC->Tooldistribution board
SZP factory reset
swapped firmware 3.6.0-rc.2 -> 3.6.0-rc.1
My current config is in github:
https://github.com/jurikaur/trident_rrf/tree/SZP/sys
Logs after timeot error(taken from serial console)
M122
=== Diagnostics ===
RepRapFirmware for Duet 3 MB6HC version 3.6.0-rc.1 (2025-02-28 15:00:13) running on Duet 3 MB6HC v1.02 or 1.02a (standalone mode)
Board ID: 0JD2M-9P9DA-F0PSJ-6J1FA-3SD6R-T5RR3
Used output buffers: 2 of 40 (35 max)
=== RTOS ===
Static ram: 137420
Dynamic ram: 133488 of which 76 recycled
Never used RAM 72112, free system stack 150 words
Tasks: NETWORK(1,ready,34.8%,180) ETHERNET(5,nWait 7,0.2%,562) ACCEL(6,nWait 6,0 .0%,345) LASER(5,nWait 7,0.1%,235) HEAT(3,nWait 6,0.0%,341) Move(4,nWait 6,0.0%, 250) TMC(4,nWait 6,3.2%,343) CanReceiv(6,nWait 1,0.0%,794) CanSender(5,nWait 7,0 .0%,329) CanClock(7,delaying,0.0%,350) MAIN(1,running,61.1%,103) IDLE(0,ready,0. 4%,29) USBD(3,blocked,0.0%,137), total 100.0%
Owned mutex=== Platform ===
Last reset 00:03:17 ago, cause: power up
Last software reset at 2025-04-12 11:18, reason: User, Gcodes spinning, availabl e RAM 72112, slot 0
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a
=== Storage ===
Free file entries: 19
SD card 0 detected, interface speed: 25.0MBytes/sec
SD card longest read time 2.5ms, write time 0.0ms, max retries 0
=== Move ===
Segments created 40, maxWait 20080ms, bed comp in use: none, height map offset 0 .000, hiccups added 0/0 (0.00/0.00ms), max steps late 0, ebfmin 0.00, ebfmax 0.0 0
Pos req/act/dcf: 48000.00/48000/0.00 0.00/0/0.00 8000.00/8000/0.00
Next step interrupt due in 101 ticks, disabled
Driver 0: standstill, SG min 0, mspos 340, reads 509, writes 23 timeouts 0
Driver 1: standstill, SG min n/a, mspos 8, reads 521, writes 11 timeouts 0
Driver 2: standstill, SG min 0, mspos 420, reads 509, writes 23 timeouts 0
Driver 3: standstill, SG min n/a, mspos 8, reads 521, writes 11 timeouts 0
Driver 4: standstill, SG min n/a, mspos 8, reads 521, writes 11 timeouts 0
Driver 5: standstill, SG min n/a, mspos 8, reads 516, writes 17 timeouts 0
Phase step loop runtime (us): min=0, max=85, frequency (Hz): min=941, max=10135
=== Heat ===
Bed heaters 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters 2 -1 -1 -1 -1 -1 -1 -1, ordering errs 0
Heater 1 is on, I-accum = 0.0
=== GCodes ===
Movement locks held by null, null
HTTP is idle in state(s) 0
Telnet is idle in state(s) 0
File is idle in state(s) 0
USB is ready with "M122" 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
SBC is idle in state(s) 0
Daemon is doing "G4 S10" in state(s) 0 0, running macro
Aux2 is idle in state(s) 0
Autopause is idle in state(s) 0
File2 is idle in state(s) 0
Queue2 is idle in state(s) 0
=== CAN ===
Messages queued 1792, received 3353, lost 0, ignored 0, errs 0, boc 0
Longest wait 3ms for reply type 6061, peak Tx sync delay 165, free buffers 50 (m in 49), ts 935/934/0
Tx timeouts 0,0,0,0,0,0
=== Network ===
Slowest loop: 788.84ms; fastest: 0.03ms
Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
HTTP sessions: 2 of 8
=== Multicast handler ===
Responder is inactive, messages received 0, responses 0
= Ethernet =
Interface state: active
Error counts: 0 0 0 1 0 0
Socket states: 2 2 2 2 2 2 0 0 0
=== WiFi ===
Interface state: disabled
Module is disabled
Failed messages: pending 0, notrdy 0, noresp 0
Socket states: 0 0 0 0 0 0 0 0
ok
M122 b1
Diagnostics for board 1:
Duet EXP3HC rev 1.02 or later firmware version 3.6.0-rc.1 (2025-02-28 15:01:59)
Bootloader ID: SAME5x bootloader version 2.11 (2024-08-09)
All averaging filters OK
Never used RAM 169368, free system stack 172 words
Tasks: Move(3,nWait 7,0.0%,144) TMC(2,nWait 6,7.3%,61) HEAT(2,nWait 6,0.0%,130) CanAsync(5,nWait 4,0.0%,70) CanRecv(3,nWait 1,0.0%,74) CanClock(5,nWait 1,0.0%,64) MAIN(1,running,91.5%,413) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.2%,263), total 100.0%
Owned mutexes:
Last reset 00:03:50 ago, cause: power up
Last software reset data not available
Moves scheduled 6, hiccups 0 (0.00/0.00ms), segs 33, step errors 0 (types 0x0), maxLate 0 maxPrep 98, ebfmin 0.00 max 0.00
Peak sync jitter -7/5, peak Rx sync delay 186, resyncs 0/0, no timer interrupt scheduled, next step interrupt due in 4155325809 ticks, disabled
VIN voltage: min 24.3, current 24.5, max 24.5
V12 voltage: min 12.3, current 12.3, max 12.3
MCU temperature: min 26.3C, current 28.5C, max 28.5C
Driver 0: pos -31, 400.0 steps/mm, standstill, SG min 0, mspos 504, reads 41044, writes 29 timeouts 0
Driver 1: pos -31, 400.0 steps/mm, standstill, SG min 0, mspos 504, reads 41044, writes 29 timeouts 0
Driver 2: pos -31, 400.0 steps/mm, standstill, SG min 0, mspos 536, reads 41045, writes 29 timeouts 0
Last sensors broadcast 0x00000000 found 0 207 ticks ago, 0 ordering errs, loop time 0
CAN messages queued 2826, send timeouts 0, received 2205, lost 0, ignored 0, errs 0, boc 0, free buffers 38, min 38, error reg 0
dup 0, oos 0/0/0/0, rxMotionDelay 399, adv 37011/37070
ok
M122 b120
Diagnostics for board 120:
Duet SZP firmware version 3.6.0-rc.1 (2025-02-28 15:03:22)
Bootloader ID: SAMC21 bootloader version 2.10 (2023-11-16)
All averaging filters OK
Never used RAM 11852, free system stack 112 words
Tasks: ScanSens(6,nWait 6,13.6%,50) HEAT(2,nWait 6,0.1%,126) CanAsync(5,nWait 4,0.0%,54) CanRecv(3,nWait 1,0.0%,64) CanClock(5,nWait 1,0.0%,52) ACCEL(3,nWait 6,0.0%,72) MAIN(1,running,54.7%,420) IDLE(0,ready,0.0%,26) AIN(2,nWait 2,31.6%,112), total 100.0%
Owned mutexes:
Last reset 00:03:36 ago, cause: software
Last software reset at 2025-04-12 11:24, reason: HardFault, available RAM 11776, slot 0
Software reset code 0x0060 ICSR 0x00000003 SP 0x200047b0 Task Scan Freestk 110 ok
Stack: 00000000 00000001 00000000 00000000 20002fe4 0000e1c5 000065cc 81000000 20002cb0 0000e1c5 00000000 a5a5a5a5 a5a5a5a5 20002cb8 20002c8c 20002cb4 20002c84 20002c9c 20002c88 20002c94 20002c98 20002c90 a5a5a5a5 a5a5a5a5 a5a5a5a5 a5a5a5a5 a5a5a5a5
Peak sync jitter 1/5, peak Rx sync delay 277, resyncs 0/0, no timer interrupt scheduled
VIN voltage: min 4.8, current 4.8, max 4.9
MCU temperature: min 25.8C, current 26.1C, max 26.1C
Last sensors broadcast 0x00000000 found 0 71 ticks ago, 0 ordering errs, loop time 0
CAN messages queued 908, send timeouts 0, received 1914, lost 0, ignored 0, errs 0, boc 0, free buffers 18, min 18, error reg 0
Accelerometer: LIS2DW, status: 00
Inductive sensor: raw value 36560899, frequency 3.40MHz, current setting 16, ok
I2C bus errors 0, naks 3, contentions 0, other errors 0