Print stops randomly on second layer
-
I built a Hevort corexy style printer with a Duet3 and RPi4.
So far, configuration has all gone smoothly, but once I started actually printing, I ran into issues.
I've looked through old posts, but cannot find a solution that works.
My printer will print the first layer just fine, but at random points during the second layer, it just stops and disconnects. Occassionally the progress bar goes straight to 100%. Other times, DWC will not reconnect at all and I need to do a hard reset on the printer.
Here is M122:
Connection to Duet established 2/10/2022, 9:30:47 PM Warning: Lost connection to Duet (Board is not available (no header response)) 2/10/2022, 9:26:09 PM M122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.3 (2021-06-15 21:45:47) running on Duet 3 MB6HC v1.01 or later (SBC mode) Board ID: 08DJM-9P63L-DJMSS-6JKDG-3SS6K-KBG7B Used output buffers: 1 of 40 (12 max) === RTOS === Static ram: 150904 Dynamic ram: 62336 of which 100 recycled Never used RAM 137996, free system stack 152 words Tasks: SBC(ready,5.2%,316) HEAT(delaying,0.0%,325) Move(notifyWait,0.1%,252) CanReceiv(notifyWait,0.0%,944) CanSender(notifyWait,0.0%,362) CanClock(delaying,0.0%,333) TMC(notifyWait,7.8%,59) MAIN(running,86.8%,922) IDLE(ready,0.0%,29), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 00:23:45 ago, cause: power up Last software reset at 2022-02-09 16:36, reason: User, none spinning, available RAM 140852, slot 2 Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0044a000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a Error status: 0x00 Step timer max interval 735 MCU temperature: min 11.9, current 24.1, max 24.3 Supply voltage: min 0.1, current 23.9, max 24.0, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 0.2, current 12.2, max 12.2, under voltage events: 0 Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/30/30, gc cycles 0 Driver 0: position 62405, standstill, reads 32391, writes 23 timeouts 0, SG min/max 0/1023 Driver 1: position -62395, standstill, reads 32391, writes 23 timeouts 0, SG min/max 0/1023 Driver 2: position 20400, standstill, reads 32391, writes 23 timeouts 0, SG min/max 0/1023 Driver 3: position 0, standstill, reads 32395, writes 19 timeouts 0, SG min/max 0/267 Driver 4: position 0, standstill, reads 32396, writes 19 timeouts 0, SG min/max 0/198 Driver 5: position 0, standstill, reads 32396, writes 19 timeouts 0, SG min/max 0/585 Date/time: 2022-02-10 15:26:08 Slowest loop: 168.13ms; fastest: 0.03ms === 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, maxWait 158232ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 17460, completed moves 17460, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 2], 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 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1 === GCodes === Segments left: 0 Movement lock held by null HTTP* is doing "M122" 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 Code queue is empty. === CAN === Messages queued 12793, received 0, lost 0, longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 49 (min 49), ts 7130/0/0 Tx timeouts 0,51,7129,0,0,5610 last cancelled message type 4514 dest 127 === SBC interface === State: 4, failed transfers: 2, checksum errors: 185 Last transfer: 1ms ago RX/TX seq numbers: 51168/12636 SPI underruns 199, overruns 5 Disconnects: 2, timeouts: 2, IAP RAM available 0x2c83c Buffer RX/TX: 0/0-0 === Duet Control Server === Duet Control Server v3.3.0 Code buffer space: 4096 Configured SPI speed: 8000000Hz Full transfers per second: 0.63, max wait times: 11.1ms/0.0ms Codes per second: 0.07 Maximum length of RX/TX data transfers: 2888/1544
Here is my config.g:
; Configuration file for Duet 3 (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sat Dec 11 2021 17:06:05 GMT+0100 (Central European Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Duet 3" ; set printer name M669 K1 ; select CoreXY mode ; Drives M569 P0.4 S0 ; physical drive 0.4 goes forwards M569 P0.5 S0 ; physical drive 0.5 goes forwards M569 P0.0 S0 ; physical drive 0.0 goes forwards M569 P0.1 S0 ; physical drive 0.4 goes forwards M569 P0.2 S0 ; physical drive 0.5 goes forwards M569 P0.3 S0 ; physical drive 0.0 goes forwards M584 X0.3 Y0.4 Z0.0:0.1:0.2 E0.5 ; set drive mapping M671 X-26.188:192.521:411.23 Y-17.213:395.997:-17.213 S50; triple z configuration M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X160.00 Y160.00 Z800.00 E550 ; set steps per mm M566 X2900 Y2900 Z30.00 E1000 ; set maximum instantaneous speed changes (mm/min) M203 X50000 Y50000 Z1000.00 E6000 ; set maximum speeds (mm/min) M201 X10000 Y10000 Z100.00 E10000 ; set accelerations (mm/s^2) M906 X2500 Y2500 Z800 I30 E800 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X366 Y395 Z600 S0 ; set axis maxima ; Endstops M574 Z2 S1 P"io1.in+io3.in+io2.in" ; Z axis with three motors, individual max endstops, active high M574 Y1 S1 P"io4.in" ; Y endstop at low end M574 X1 S1 P"io5.in" ; X endstop at low end ;E-stop M950 J0 C"!^io0.in" ; create e-stop on pin 0 M581 P0 T0 C0 ; create trigger event ; Z-Probe M558 P9 C"io7.in" H5 F100 R0.2 T6000 ; BLTouch connected to Z probe IN pin, free up MOD pin M950 S0 C"^io7.out" ; servo/gpio 0 is Z probe MOD pin G31 P25 X-18.68 Y52.38 Z2 ... M280 P0 S10 ; send control signal to BLTouch through servo/gpio 7 ; BL touch Z probe but set dive height, probe speed and travel speed M557 X25:340 Y60:350 S20 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T128000 B3950 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"temp1" Y"PT1000" T100000 B4138 ; configure sensor 1 as thermistor on pin temp1 M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"out4" Q25000 ; create fan 0 on pin out4 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"out7" Q500 ; create fan 1 on pin out7 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on M950 F2 C"!out6+^out6.tach" Q450 ; create fan 2 on pin out6 and set its frequency M106 P2 S0 H-1 B0 C"HEVACS" ;set fan 2 values, thermostatic control is turned off M950 F3 C"!out5+^out5.tach" Q450 ; create fan 2 on pin out6 and set its frequency M106 P3 S0 H-1 B0 C"HEVACS2" ;set fan 2 values, thermostatic control is turned off ; Tools M563 P0 S"Hotend" D0 H1 F0 ; 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 ; Custom settings are not defined ; Miscellaneous M501 ; load saved parameters from non-volatile memory M911 S22 R23 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
I am on DWC 3.3 and the RPi firmware is on the latest stable build. I tried a solution I saw in another post where the 5v supply is switched to come from the SBC, but that had no effect on the outcome whatsoever.
Other than when printing, I rarely lose connection. When my duet2 machine loses connection, it just keeps printing, so I'm not too sure what the difference is.
-
While I'm here, another issue is that only my fan2 and fan3 start a full burst when the board powers on, but after a few seconds they turn off again. Does this have to do with them being Noctua PWM fans and inverted?
-
@cjorgensenmd The fans will go full on during the startup, but once the config.g is read, they will be set to what's in there. This is a normal occurance. You should start a new topic for different questions.
-
Is that M122 from immediately after the board has reset?
-
@phaedrux I believe so. I'll run another test when I get home in a few hours and redo M122
-
A faulty Raspberry Pi is not impossible.
I had a load of erratic problems with my seconds Duet+Pi machine & after trying everything else, replaced the Pi and all problems disappeared.I can only think that it had dodgy RAM that was only causing problems when more tasks were active, as booting up and all basic things like SSH access appeared to work fine - until it got to heavy interactions with the Duet board, then it lost the plot..
-
-
Could you please try testing 3.4 RC1 by switching to the unstable package server and doing a sudo apt update and sudo apt upgrade as described here: https://github.com/Duet3D/DuetSoftwareFramework/wiki/SBC-Setup-Guide#unstable-package-feed
Do you also have a fresh SD card to test with? SBC mode would likely benefit from a faster card as well.
-
That ended up not working. I am assuming a faulty raspberry pi. I am running in standalone mode now until the 8gb Pi 4's are back in stock.