Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    3.5.0-B4+ 1LC Stack Overflow causing reset

    Scheduled Pinned Locked Moved
    Beta Firmware
    3
    14
    610
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • engikeneerundefined
      engikeneer @gloomyandy
      last edited by

      @gloomyandy Thanks for the quick reply!

      I tried running the same gcode file but with the T0 and T1 commands swapped (I used find & replace so no re-slicing). This gave the same issue with T1 losing connection part way through the skirt, but I let the print continue and T0 printed the second object fine.

      Full set of M122's before and after below which I just recreated.
      I should clarify that I don't get an error message in console that B21 is disconnected, just one saying that it has reconnected. I don't have any events set up, so I think this is expected.

      M122 Before:

      M122
      === Diagnostics ===
      RepRapFirmware for Duet 3 Mini 5+ version 3.5.0-beta.4 (2023-06-08 23:40:14) running on Duet 3 Mini5plus WiFi (standalone mode)
      Board ID: QUS4M-U096U-D65J0-40KMD-3W03Z-ZK6H6
      Used output buffers: 29 of 40 (36 max)
      === RTOS ===
      Static ram: 102996
      Dynamic ram: 123548 of which 12 recycled
      Never used RAM 15500, free system stack 192 words
      Tasks: NETWORK(2,nWait,12.5%,215) HEAT(3,nWait,0.0%,358) Move(4,nWait,0.0%,358) CanReceiv(6,nWait,0.1%,662) CanSender(5,nWait,0.0%,337) CanClock(7,delaying,0.0%,351) TMC(4,nWait,0.7%,114) MAIN(1,running,85.4%,704) IDLE(0,ready,0.5%,29) AIN(4,delaying,0.8%,266), total 100.0%
      Owned mutexes: WiFi(NETWORK)
      === Platform ===
      Last reset 00:00:51 ago, cause: power up
      Last software reset at 2023-07-23 11:44, reason: User, Gcodes spinning, available RAM 11980, slot 2
      Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00487000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
      Error status: 0x00
      Aux0 errors 0,0,0
      MCU revision 3, ADC conversions started 51984, completed 51984, timed out 0, errs 0
      MCU temperature: min 22.9, current 27.7, max 27.9
      Supply voltage: min 24.4, current 24.6, max 24.6, under voltage events: 0, over voltage events: 0, power good: yes
      Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
      Events: 0 queued, 0 completed
      Driver 0: standstill, SG min 0, read errors 0, write errors 0, ifcnt 14, reads 2700, writes 14, timeouts 0, DMA errors 0, CC errors 0
      Driver 1: standstill, SG min 0, read errors 0, write errors 0, ifcnt 14, reads 2700, writes 14, timeouts 0, DMA errors 0, CC errors 0
      Driver 2: standstill, SG min 0, read errors 0, write errors 0, ifcnt 12, reads 2702, writes 12, timeouts 0, DMA errors 0, CC errors 0
      Driver 3: standstill, SG min 0, read errors 0, write errors 0, ifcnt 15, reads 2698, writes 15, timeouts 0, DMA errors 0, CC errors 0
      Driver 4: standstill, SG min 0, read errors 0, write errors 0, ifcnt 14, reads 2700, writes 14, timeouts 0, DMA errors 0, CC errors 0
      Driver 5: not present
      Driver 6: not present
      Date/time: 2023-07-23 12:52:51
      Cache data hit count 94435396
      Slowest loop: 5.68ms; fastest: 0.16ms
      === Storage ===
      Free file entries: 20
      SD card 0 detected, interface speed: 22.5MBytes/sec
      SD card longest read time 3.3ms, write time 0.0ms, max retries 0
      === Move ===
      DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, ebfmin 0.00, ebfmax 0.00
      no step interrupt scheduled
      === DDARing 0 ===
      Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === DDARing 1 ===
      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, chamber heaters -1 -1 -1 -1, ordering errs 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 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
      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
      File2 is idle in state(s) 0
      Queue2 is idle in state(s) 0
      Q0 segments left 0, axes/extruders owned 0x0000000
      Code queue 0 is empty
      Q1 segments left 0, axes/extruders owned 0x0000000
      Code queue 1 is empty
      === CAN ===
      Messages queued 482, received 2002, lost 0, boc 0
      Longest wait 3ms for reply type 6053, peak Tx sync delay 6, free buffers 18 (min 17), ts 260/259/0
      Tx timeouts 0,0,0,0,0,0
      === Network ===
      Slowest loop: 10.32ms; fastest: 0.00ms
      Responder states: MQTT(0) HTTP(2) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
      HTTP sessions: 1 of 8
      = WiFi =
      Interface state: active
      Module is connected to access point 
      Failed messages: pending 0, notready 0, noresp 0
      Firmware version 2.1beta4
      MAC address f0:08:d1:02:ed:e4
      Module reset reason: Power up, Vcc 3.36, flash size 2097152, free heap 39472
      WiFi IP address 192.168.1.168
      Signal strength -56dBm, channel 1, mode 802.11n, reconnections 0
      Clock register 00002001
      Socket states: 5 0 0 0 0 0 0 0
      

      M122 B22 (T0) before

      M122 B22
      Diagnostics for board 22:
      Duet TOOL1LC rev 1.1 or later firmware version 3.5.0-beta.4+ (2023-06-30 15:40:06)
      Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1)
      All averaging filters OK
      Never used RAM 3984, free system stack 142 words
      Tasks: Move(3,nWait,0.0%,135) HEAT(2,nWait,0.2%,79) CanAsync(5,nWait,0.0%,54) CanRecv(3,nWait,0.0%,77) CanClock(5,nWait,0.0%,66) ACCEL(3,nWait,0.0%,53) TMC(2,nWait,3.0%,67) MAIN(1,running,91.9%,324) IDLE(0,ready,0.0%,27) AIN(2,delaying,4.8%,114), total 100.0%
      Last reset 00:00:57 ago, cause: power up
      Last software reset at 2023-07-21 22:45, reason: StackOverflow, available RAM 3864, slot 2
      Software reset code 0x0100 ICSR 0x0000000e SP 0x20007f44 Task HEAT Freestk 3644 bad marker
      Stack: 200045f8 2000462c 0001c55b 00000000 43520000 000000ab 0001b701 20003bc4 fffffffd f6bd5ddf 00000000 00000002 00000000 00000002 0001c1af 00000000 200019b4 20001958 20001a80 000226ec 20001958 200019b4 00000032 20001ad4 00005f95 00000001 20001b30
      Driver 0: pos 0, 405.0 steps/mm, standstill, SG min 0, read errors 0, write errors 0, ifcnt 12, reads 28571, writes 12, timeouts 0, DMA errors 0, CC errors 0, steps req 0 done 0
      Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00
      Peak sync jitter -5/6, peak Rx sync delay 203, resyncs 0/0, no timer interrupt scheduled
      VIN voltage: min 24.4, current 24.4, max 24.5
      MCU temperature: min 27.0C, current 31.5C, max 31.5C
      Last sensors broadcast 0x00000002 found 1 204 ticks ago, 0 ordering errs, loop time 0
      CAN messages queued 1133, send timeouts 0, received 731, lost 0, free buffers 18, min 18, error reg 0
      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
      Accelerometer: LIS3DH, status: 00
      Inductive sensor: not found
      I2C bus errors 0, naks 6, other errors 0
      

      M122 B21 (T1) before:

      M122 B21
      Diagnostics for board 21:
      Duet TOOL1LC rev 1.1 or later firmware version 3.5.0-beta.4+ (2023-06-30 15:40:06)
      Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1)
      All averaging filters OK
      Never used RAM 3984, free system stack 142 words
      Tasks: Move(3,nWait,0.0%,135) HEAT(2,nWait,0.2%,80) CanAsync(5,nWait,0.0%,54) CanRecv(3,nWait,0.0%,77) CanClock(5,nWait,0.0%,66) ACCEL(3,nWait,0.0%,53) TMC(2,delaying,3.0%,67) MAIN(1,running,91.9%,324) IDLE(0,ready,0.0%,27) AIN(2,delaying,4.8%,114), total 100.0%
      Last reset 00:00:59 ago, cause: power up
      Last software reset at 2023-07-23 11:48, reason: StackOverflow, available RAM 3768, slot 2
      Software reset code 0x0100 ICSR 0x0000000e SP 0x20007f44 Task HEAT Freestk 3644 bad marker
      Stack: 200045f8 2000462c 0001c55b 20004810 3f06e4ad 412c0001 0001b701 20003bc4 fffffffd a5a5a5a5 00000000 00000002 00000000 00000002 0001c1af 00000000 200019b4 20001958 20001a80 000226ec 20001958 200019b4 00000032 20001ad4 00005f95 00000001 20001b30
      Driver 0: pos 0, 410.0 steps/mm, standstill, SG min 0, read errors 0, write errors 0, ifcnt 12, reads 29806, writes 12, timeouts 0, DMA errors 0, CC errors 0, steps req 0 done 0
      Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00
      Peak sync jitter -4/6, peak Rx sync delay 195, resyncs 0/0, no timer interrupt scheduled
      VIN voltage: min 24.5, current 24.6, max 24.6
      MCU temperature: min 25.5C, current 30.4C, max 30.4C
      Last sensors broadcast 0x00000004 found 1 174 ticks ago, 0 ordering errs, loop time 0
      CAN messages queued 1183, send timeouts 0, received 764, lost 0, free buffers 18, min 18, error reg 0
      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
      Accelerometer: LIS3DH, status: 00
      Inductive sensor: not found
      I2C bus errors 0, naks 6, other errors 0
      

      M122 After

      M122
      === Diagnostics ===
      RepRapFirmware for Duet 3 Mini 5+ version 3.5.0-beta.4 (2023-06-08 23:40:14) running on Duet 3 Mini5plus WiFi (standalone mode)
      Board ID: QUS4M-U096U-D65J0-40KMD-3W03Z-ZK6H6
      Used output buffers: 19 of 40 (40 max)
      === RTOS ===
      Static ram: 102996
      Dynamic ram: 123924 of which 12 recycled
      Never used RAM 11956, free system stack 135 words
      Tasks: NETWORK(2,nWait,16.0%,205) HEAT(3,nWait,0.0%,352) Move(4,nWait,0.3%,244) CanReceiv(6,nWait,0.1%,662) CanSender(5,nWait,0.0%,337) CanClock(7,delaying,0.0%,351) TMC(4,nWait,0.7%,74) MAIN(1,running,81.6%,698) IDLE(0,ready,0.4%,29) AIN(4,delaying,0.8%,266), total 100.0%
      Owned mutexes: WiFi(NETWORK)
      === Platform ===
      Last reset 00:10:26 ago, cause: power up
      Last software reset at 2023-07-23 11:44, reason: User, Gcodes spinning, available RAM 11980, slot 2
      Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00487000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
      Error status: 0x04
      Aux0 errors 0,0,0
      MCU revision 3, ADC conversions started 627056, completed 627056, timed out 0, errs 0
      MCU temperature: min 27.7, current 32.2, max 35.5
      Supply voltage: min 24.4, current 24.6, max 24.6, under voltage events: 0, over voltage events: 0, power good: yes
      Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/48/48, gc cycles 0
      Events: 1 queued, 1 completed
      Driver 0: standstill, SG min 0, read errors 0, write errors 0, ifcnt 29, reads 30247, writes 15, timeouts 0, DMA errors 0, CC errors 0
      Driver 1: standstill, SG min 0, read errors 0, write errors 0, ifcnt 29, reads 30246, writes 15, timeouts 0, DMA errors 0, CC errors 0
      Driver 2: standstill, SG min 0, read errors 0, write errors 0, ifcnt 15, reads 30258, writes 3, timeouts 0, DMA errors 0, CC errors 0
      Driver 3: standstill, SG min 0, read errors 0, write errors 0, ifcnt 18, reads 30259, writes 3, timeouts 0, DMA errors 0, CC errors 0
      Driver 4: standstill, SG min 0, read errors 0, write errors 0, ifcnt 19, reads 30257, writes 5, timeouts 0, DMA errors 0, CC errors 0
      Driver 5: not present
      Driver 6: not present
      Date/time: 2023-07-23 13:02:26
      Cache data hit count 1060572620
      Slowest loop: 1000.45ms; fastest: 0.11ms
      === Storage ===
      Free file entries: 20
      SD card 0 detected, interface speed: 22.5MBytes/sec
      SD card longest read time 7.9ms, write time 2.1ms, max retries 0
      === Move ===
      DMs created 83, segments created 13, maxWait 66135ms, bed compensation in use: mesh, height map offset 0.000, ebfmin 0.00, ebfmax 0.00
      no step interrupt scheduled
      === DDARing 0 ===
      Scheduled moves 967, completed 967, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === DDARing 1 ===
      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, chamber heaters -1 -1 -1 -1, ordering errs 0
      Heater 0 is on, I-accum = 0.1
      === 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 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
      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
      File2 is idle in state(s) 0
      Queue2 is idle in state(s) 0
      Q0 segments left 0, axes/extruders owned 0x0000000
      Code queue 0 is empty
      Q1 segments left 0, axes/extruders owned 0x0000000
      Code queue 1 is empty
      === CAN ===
      Messages queued 5739, received 18656, lost 0, boc 0
      Longest wait 5ms for reply type 6024, peak Tx sync delay 199, free buffers 18 (min 17), ts 2875/2875/0
      Tx timeouts 0,0,0,0,0,0
      === Network ===
      Slowest loop: 214.22ms; fastest: 0.06ms
      Responder states: MQTT(0) HTTP(0) HTTP(2) HTTP(0) HTTP(0) FTP(0) Telnet(0)
      HTTP sessions: 1 of 8
      = WiFi =
      Interface state: active
      Module is connected to access point 
      Failed messages: pending 0, notready 0, noresp 0
      Firmware version 2.1beta4
      MAC address f0:08:d1:02:ed:e4
      Module reset reason: Power up, Vcc 2.74, flash size 2097152, free heap 37976
      WiFi IP address 192.168.1.168
      Signal strength -53dBm, channel 1, mode 802.11n, reconnections 0
      Clock register 00002001
      Socket states: 0 0 0 0 0 0 0 0
      

      M122 B22 (T0) After:

      M122 B22
      Diagnostics for board 22:
      Duet TOOL1LC rev 1.1 or later firmware version 3.5.0-beta.4+ (2023-06-30 15:40:06)
      Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1)
      All averaging filters OK
      Never used RAM 3768, free system stack 88 words
      Tasks: Move(3,nWait,0.0%,71) HEAT(2,nWait,0.5%,37) CanAsync(5,nWait,0.0%,54) CanRecv(3,nWait,0.0%,75) CanClock(5,nWait,0.0%,66) ACCEL(3,nWait,0.0%,53) TMC(2,delaying,3.0%,57) MAIN(1,running,91.6%,324) IDLE(0,ready,0.0%,27) AIN(2,delaying,4.8%,114), total 100.0%
      Last reset 00:10:20 ago, cause: power up
      Last software reset at 2023-07-21 22:45, reason: StackOverflow, available RAM 3864, slot 2
      Software reset code 0x0100 ICSR 0x0000000e SP 0x20007f44 Task HEAT Freestk 3644 bad marker
      Stack: 200045f8 2000462c 0001c55b 00000000 43520000 000000ab 0001b701 20003bc4 fffffffd f6bd5ddf 00000000 00000002 00000000 00000002 0001c1af 00000000 200019b4 20001958 20001a80 000226ec 20001958 200019b4 00000032 20001ad4 00005f95 00000001 20001b30
      Driver 0: pos 0, 405.0 steps/mm, standstill, SG min 0, read errors 0, write errors 0, ifcnt 14, reads 19625, writes 2, timeouts 0, DMA errors 0, CC errors 0, steps req 0 done 33039
      Moves scheduled 319, completed 319, in progress 0, hiccups 8, segs 9, step errors 0, maxPrep 441, maxOverdue 53, maxInc 49, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 1.00
      Peak sync jitter -5/7, peak Rx sync delay 216, resyncs 0/0, no timer interrupt scheduled
      VIN voltage: min 24.1, current 24.5, max 24.5
      MCU temperature: min 27.0C, current 37.1C, max 39.9C
      Last sensors broadcast 0x00000002 found 1 190 ticks ago, 0 ordering errs, loop time 1
      CAN messages queued 11320, send timeouts 0, received 6193, lost 0, free buffers 18, min 18, error reg 0
      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 347, adv 35667/74662
      Accelerometer: LIS3DH, status: 00
      Inductive sensor: not found
      I2C bus errors 0, naks 0, other errors 0
      

      M122 B21 (T1) After

      M122 B21
      Diagnostics for board 21:
      Duet TOOL1LC rev 1.1 or later firmware version 3.5.0-beta.4+ (2023-06-30 15:40:06)
      Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1)
      All averaging filters OK
      Never used RAM 2396, free system stack 88 words
      Tasks: Move(3,nWait,0.0%,79) HEAT(2,nWait,0.1%,81) CanAsync(5,nWait,0.0%,54) CanRecv(3,nWait,0.0%,75) CanClock(5,nWait,0.0%,66) ACCEL(3,nWait,0.0%,53) TMC(2,delaying,3.0%,57) MAIN(1,running,92.0%,410) IDLE(0,ready,0.0%,27) AIN(2,delaying,4.8%,114), total 100.0%
      Last reset 00:06:05 ago, cause: software
      Last software reset at 2023-07-23 12:56, reason: StackOverflow, available RAM 3768, slot 0
      Software reset code 0x0100 ICSR 0x0000000e SP 0x20007f44 Task HEAT Freestk 3644 bad marker
      Stack: 200045f8 2000462c 0001c55b 00000000 00000002 00000066 0001b701 20003bc4 fffffffd f4a9595a 00000000 00000002 00000000 00000002 0001c1af 00000000 200019b4 20001958 20001a80 000226ec 20001958 200019b4 00000032 20001ad4 00005f95 00000001 20001b30
      Driver 0: pos 0, 80.0 steps/mm, standstill, SG min 0, read errors 0, write errors 1, ifcnt 24, reads 51893, writes 10, timeouts 0, DMA errors 0, CC errors 0, steps req 0 done 6723
      Moves scheduled 83, completed 83, in progress 0, hiccups 2, segs 85, step errors 0, maxPrep 356, maxOverdue 188842993, maxInc 188842993, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.97
      Peak sync jitter -4/7, peak Rx sync delay 209, resyncs 0/0, no timer interrupt scheduled
      VIN voltage: min 24.5, current 24.6, max 24.6
      MCU temperature: min 33.1C, current 33.3C, max 38.1C
      Last sensors broadcast 0x00000000 found 0 242 ticks ago, 0 ordering errs, loop time 0
      CAN messages queued 2954, send timeouts 0, received 2937, lost 1983, free buffers 18, min 0, error reg 0
      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 47454, adv -180786252/188917586
      Accelerometer: LIS3DH, status: 00
      Inductive sensor: not found
      I2C bus errors 0, naks 6, other errors 0
      

      E3D TC with D3Mini and Toolboards.
      Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
      i3 clone with a bunch of mods

      gloomyandyundefined 1 Reply Last reply Reply Quote 0
      • gloomyandyundefined
        gloomyandy @engikeneer
        last edited by

        @engikeneer said in 3.5.0-B4+ 1LC Stack Overflow causing reset:

        Thanks for that, is there anything different about your two tools? Extra fans, heaters? One has Neopixels or anything like that?

        I can't see anything obvious when looking at the config.g and the m122 outputs, but the "after" case for T1 does show a smaller amount of free memory and also the following:

        CAN messages queued 2954, send timeouts 0, received 2937, lost 1983, free buffers 18, min 0, error reg 0
        dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 47454, adv -180786252/188917586

        It is hard to be sure if this is part of the problem or simply the result of the board crashing and restarting. Perhaps @dc42 will have some thoughts?

        engikeneerundefined 1 Reply Last reply Reply Quote 0
        • engikeneerundefined
          engikeneer @gloomyandy
          last edited by

          @gloomyandy no T0 and T1 are the same (it's an e3D TC with hemeras, 0.4mm v6 etc). Only difference I can think is that T0 has a hotend grounding resistor wired in, which T1 doesn't, but that has not been an issue in the past...

          E3D TC with D3Mini and Toolboards.
          Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
          i3 clone with a bunch of mods

          dc42undefined 1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @engikeneer
            last edited by

            @engikeneer I think what may be happening is that a debug message is being generated, and owing to a change in the way that debug messages are processed the Heat task stack is now too small when this happens. Please try the new tool board firmware at https://www.dropbox.com/scl/fo/sj9kuloenbp6e70asnxue/h?rlkey=upykfuquc574l61deqwo94xr3&dl=0.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            engikeneerundefined 1 Reply Last reply Reply Quote 0
            • engikeneerundefined
              engikeneer @dc42
              last edited by

              @dc42 Thanks for providing this. I have tested and it does solve the crashing issue, and explains why there was an issue with the heat task stack... I was getting a heater fault occurring on T1. It may have also not helped that I didn't have a heater-fault.g file. Now I just need to work out why the fault was happening... 😛

              E3D TC with D3Mini and Toolboards.
              Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
              i3 clone with a bunch of mods

              dc42undefined 1 Reply Last reply Reply Quote 0
              • dc42undefined
                dc42 administrators @engikeneer
                last edited by

                @engikeneer thanks. A debug message was being generated for some types of heater fault. In previous builds they were suppressed if the build configuration didn't specify a serial debug port, but now they are relayed over CAN to the main board instead.

                The amount of free RAM will have decreased because of the increased stack size, so please monitor "Never used RAM" in the M122 report for the tool board.

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                engikeneerundefined 1 Reply Last reply Reply Quote 1
                • engikeneerundefined
                  engikeneer @dc42
                  last edited by

                  @dc42 Good news is that I don't seem to be having any RAM issues 🙂 Never used RAM seems to be steady at 2728:

                  M122 B22
                  Diagnostics for board 22:
                  Duet TOOL1LC rev 1.1 or later firmware version 3.5.0-beta.4+ (2023-07-26 12:19:38)
                  Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1)
                  All averaging filters OK
                  Never used RAM 2728, free system stack 88 words
                  Tasks: Move(3,nWait,0.0%,71) HEAT(2,nWait,0.3%,87) CanAsync(5,nWait,0.0%,54) CanRecv(3,nWait,0.1%,75) CanClock(5,nWait,0.0%,66) ACCEL(3,nWait,0.0%,53) TMC(2,delaying,3.0%,57) MAIN(1,running,91.8%,324) IDLE(0,ready,0.0%,27) AIN(2,delaying,4.8%,114), total 100.0%
                  Last reset 00:45:46 ago, cause: power up
                  Last software reset at 2023-07-21 22:45, reason: StackOverflow, available RAM 3864, slot 2
                  Software reset code 0x0100 ICSR 0x0000000e SP 0x20007f44 Task HEAT Freestk 3644 bad marker
                  Stack: 200045f8 2000462c 0001c55b 00000000 43520000 000000ab 0001b701 20003bc4 fffffffd f6bd5ddf 00000000 00000002 00000000 00000002 0001c1af 00000000 200019b4 20001958 20001a80 000226ec 20001958 200019b4 00000032 20001ad4 00005f95 00000001 20001b30
                  Driver 0: pos 0, 410.0 steps/mm, ok, SG min 0, read errors 0, write errors 0, ifcnt 25, reads 61617, writes 25, timeouts 4, DMA errors 0, CC errors 0, failedOp 0x6a, steps req 0 done 205224
                  Moves scheduled 2427, completed 2427, in progress 0, hiccups 45, segs 41, step errors 0, maxPrep 1361, maxOverdue 60251, maxInc 13299, mcErrs 0, gcmErrs 0, ebfmin -0.72 max 1.00
                  Peak sync jitter -5/8, peak Rx sync delay 300, resyncs 0/0, no timer interrupt scheduled
                  VIN voltage: min 24.3, current 24.3, max 24.5
                  MCU temperature: min 23.2C, current 46.6C, max 46.6C
                  Last sensors broadcast 0x00000008 found 1 241 ticks ago, 0 ordering errs, loop time 1
                  CAN messages queued 55026, send timeouts 0, received 60157, lost 0, free buffers 18, min 17, error reg 0
                  dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 483, adv 35679/74655
                  Accelerometer: LIS3DH, status: 00
                  Inductive sensor: not found
                  I2C bus errors 0, naks 6, other errors 0
                  

                  One thing I have noticed with the 3.5.0-B4+ build you provided is that I get a false error appearing when homing my printer during a print. I think this was present in the previous B4+ build you provided but can't be sure.

                  Error: Failed to home axes
                  

                  I created a print file with only G28 in it, and I get that error (despite all axes homing fine). If I run a G28 normally, then I get no error.
                  This isn't causing any particular issue, it's just annoying getting the false error messages. My homing files below - happy to provide the sub-macros if needed
                  Thanks

                  homeall

                  ; homeall.g
                  ; called to home all axes
                  ;
                  ; generated by RepRapFirmware Configuration Tool v3.2.3 on Sat May 29 2021 21:13:21 GMT+0100 (British Summer Time)
                  
                  M98 P"homec.g"			; Home C (ToolHead)
                  
                  M98 P"homea.g"			; Home A (Pebble Wiper)
                  
                  M98 P"homey.g"			; Home Y
                  
                  M98 P"homex.g"			; Home X
                  
                  M98 P"homez.g"			; Home Z
                  

                  homec

                  ; homec.g
                  ; called to home the C axis
                  ;
                  
                  ;from old
                  
                  G92 C260
                  M913 C40			; C MOTOR TO 40% CURRENT
                  G1 C-260 F2400  ; drive the C-axis to the stop
                  M913 C100			; C MOTOR TO 100% CURRENT
                  G1 C1 F50000
                  G92 C0
                  
                  ;Open Coupler
                  M98 P"/macros/Tool - Unlock"
                  

                  homea

                  ;called to home axis A
                  
                  G91               ; relative positioning
                  G1 H1 A50 F1500 ; move quickly to A axis endstop and stop there (first pass)
                  G1 A-2 F2000       ; go back a few mm
                  G1 H1 A50 F360  ; move slowly to A axis endstop once more (second pass)
                  G90               ; absolute positioning
                  

                  homex

                  ; homex.g
                  ; called to home the X axis
                  ;
                  G91 			; use relative positioning
                  M98 P"/macros/Set Machine Limits"
                  
                  M400 			; make sure everything has stopped before we make changes
                  M569 P0.0 D3 V10 
                  M569 P0.1 D3 V10 
                  G4 P100			; wait 100ms
                  M17 X Y						    ; Energize Motors X Y
                  M913 X50 Y50 		; drop motor currents to 50%
                  M915 H200 X Y S0 R0 F0 	; set X and Y to sensitivity 0, do nothing when stall, unfiltered
                  G4 P100
                  G1 H2 Z3 F5000		; lift Z 3mm
                  G1 H2 X1 Y1 F3000		; energise to avoid false triggers during sensorless homing
                  M400
                  G4 P100	
                  G1 H1 X-400 F6000 	; move left 400mm, stopping at the endstop
                  G1 H1 X2 F2000 		; move away from endstop
                  G1 H2 Z-3 F1200		; lower Z
                  
                  G90 			; back to absolute positioning
                  M400 			; make sure everything has stopped before we reset the motor currents
                  M913 X100 Y100 		; motor currents back to 100%
                  M569 P0.0 D2
                  M569 P0.1 D2
                  

                  homey

                  ; homey.g
                  ; called to home the Y axis
                  ;
                  
                  G91 			; use relative positioning
                  M98 P"/macros/Set Machine Limits"
                  M400 			; make sure everything has stopped before we make changes
                  M569 P0.0 D3 V10 
                  M569 P0.1 D3 V10 
                  G4 P100			; wait 100ms
                  M17 X Y						    ; Energize Motors X Y
                  M913 X50 Y50 		; drop motor currents to 50%
                  M915 H200 X Y S0 R0 F0 	; set X and Y to sensitivity 0, do nothing when stall, unfiltered
                  G4 P100
                  G1 H2 Z3 F5000		; lift Z 3mm
                  G1 H2 X1 Y1 F3000		; energise to avoid false triggers during sensorless homing
                  M400
                  G4 P100		
                  G1 H1 Y-400 F6000 	; move left 400mm, stopping at the endstop
                  G1 H1 Y2 F2000 		; move away from end
                  G1 H2 Z-3 F1200		; lower Z
                  
                  G90 			; back to absolute positioning
                  M400 			; make sure everything has stopped before we reset the motor currents
                  M913 X100 Y100 		; motor currents back to 100%
                  M569 P0.0 D2
                  M569 P0.1 D2
                  

                  homez

                  ; homez.g
                  ; called to home the Z axis
                  
                  T-1       				;just in case there is a tool coupled, go try to drop it at the dock
                  M116 H0 S1				; Wait for bed to reach temp;
                  G29 S2 					; Disable mesh compensation
                  G91 					; Relative mode
                  G1 H2 Z5 F5000			; Lower the bed
                  G90						; back to absolute positioning
                  G1 X150 Y100 F50000		; Position the endstop above the bed centre
                  G91 					; Relative mode
                  G4 P1000				; wait 1000msec
                  G30 					; probe
                  G1 Z20 F5000			; Drop the Bed
                  G90						; Back to absolute positioning
                  

                  E3D TC with D3Mini and Toolboards.
                  Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
                  i3 clone with a bunch of mods

                  gloomyandyundefined 1 Reply Last reply Reply Quote 0
                  • gloomyandyundefined
                    gloomyandy @engikeneer
                    last edited by

                    @engikeneer I think it would help if you try manually homing each axis in turn to identify which one is producing that error message.

                    engikeneerundefined 1 Reply Last reply Reply Quote 2
                    • engikeneerundefined
                      engikeneer @gloomyandy
                      last edited by

                      @gloomyandy good thinking - I can confirm it is the Z homing that causes the issue. I homed all axes then one-by-one ran print jobs with just G28 X, G28 Y etc in and it was G28 Z that triggered it. I also ran it with commenting out a few lines in my homez and I think the one causing the issue is the M116:

                      ; homez.g
                      ; called to home the Z axis
                      
                      T-1       			;just in case there is a tool coupled, go try to drop it at the dock
                      M116 H0 S1			; Wait for bed to reach temp;  <<<< THIS ONE
                      G29 S2 				; Disable mesh compensation
                      G91 				; Relative mode
                      G1 H2 Z5 F5000			; Lower the bed
                      G90				; back to absolute positioning
                      G1 X150 Y100 F50000		; Position the endstop above the bed centre
                      G91 				; Relative mode
                      G4 P1000			; wait 1000msec
                      G30 				; probe
                      G1 Z20 F5000			; Drop the Bed
                      G90				; Back to absolute positioning
                      

                      E3D TC with D3Mini and Toolboards.
                      Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
                      i3 clone with a bunch of mods

                      dc42undefined 1 Reply Last reply Reply Quote 0
                      • dc42undefined
                        dc42 administrators @engikeneer
                        last edited by

                        @engikeneer when you get that error message, is the bed heating up?

                        Do you also get that error message if you command the bed to heat manually and then command Z homing manually?

                        Duet WiFi hardware designer and firmware engineer
                        Please do not ask me for Duet support via PM or email, use the forum
                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                        engikeneerundefined 1 Reply Last reply Reply Quote 0
                        • engikeneerundefined
                          engikeneer @dc42
                          last edited by

                          @dc42 I get the error message whether the bed is off, heating up, or already at temp. I also changed it to a simple M116 (i.e. no H0 S1) and same result.

                          If I do any of this not in a print (i.e. just manually by hitting homez in DWC, or putting G28 Z in the console), I do not get the error.

                          E3D TC with D3Mini and Toolboards.
                          Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
                          i3 clone with a bunch of mods

                          dc42undefined 1 Reply Last reply Reply Quote 0
                          • dc42undefined
                            dc42 administrators @engikeneer
                            last edited by

                            @engikeneer I believe this is fixed in 3.5.0-rc.1.

                            Duet WiFi hardware designer and firmware engineer
                            Please do not ask me for Duet support via PM or email, use the forum
                            http://www.escher3d.com, https://miscsolutions.wordpress.com

                            1 Reply Last reply Reply Quote 1
                            • First post
                              Last post
                            Unless otherwise noted, all forum content is licensed under CC-BY-SA