@droftarts thanks so much for your response, sorry I somehow missed it until now. I'll keep a better eye out in the future.
I am using Clearpath SDSK servo motors that are powered independently of the board, but in my config.g file I have the currents set to 800mA each.
The board is enclosed but I do have a fan that is cooling the enclosure and the board. When I take the board out of the enclosure into open air I see no change in behavior.
Since my last SD card switch (May 22) the machine hasn't shut down like before and unfortunately I did not save any of my M122 reports from after a crash. Here is one from today though:
M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.1 (2024-04-19 14:40:46) running on Duet Ethernet 1.02 or later
Board ID: 0JD0M-9P6M2-NWNS4-7J9DJ-3SN6L-KT2HK
Used output buffers: 1 of 26 (18 max)
=== RTOS ===
Static ram: 23256
Dynamic ram: 68052 of which 0 recycled
Never used RAM 18980, free system stack 186 words
Tasks: NETWORK(1,ready,21.6%,220) HEAT(3,nWait 5,0.1%,328) Move(4,nWait 5,0.0%,359) MAIN(1,running,78.1%,761) IDLE(0,ready,0.2%,29), total 100.0%
Owned mutexes:
=== Platform ===
Last reset 00:07:51 ago, cause: power up
Last software reset at 2024-05-31 13:49, reason: User, Gcodes spinning, available RAM 18748, slot 0
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x00
MCU temperature: min 25.2, current 33.4, max 34.1
Supply voltage: min 23.9, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 99/6, heap memory allocated/used/recyclable 2048/164/60, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min n/a
Driver 1: standstill, SG min n/a
Driver 2: standstill, SG min n/a
Driver 3: standstill, SG min n/a
Driver 4: standstill, SG min n/a
Driver 5:
Driver 6:
Driver 7:
Driver 8:
Driver 9:
Driver 10:
Driver 11:
Date/time: 2024-06-03 11:32:16
Cache data hit count 4294967295
Slowest loop: 249.36ms; fastest: 0.18ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Storage ===
Free file entries: 9
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest read time 15.8ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: mesh, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00
no step interrupt scheduled
Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0
=== DDARing 0 ===
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.2
=== GCodes ===
Movement locks 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 doing "G4 S1" in state(s) 0 0, running macro
Autopause is idle in state(s) 0
Q0 segments left 0
Code queue 0 is empty
=== Network ===
Slowest loop: 16.44ms; fastest: 0.01ms
Responder states: HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
HTTP sessions: 1 of 8
Interface state active, link 100Mbps full duplex
Socket states: 5 2 2 2 2 2
And here is a copy of my config.g file
;Configuration file for Duet WiFi (firmware version 3.3)
; executed by the firmware on start-up
;
; generated by Scotty on Apr 3, 2024
; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Choco Milk 2" ; set printer name
M669 K2 Z1:0:-1 ; select CoreXZ mode with no kinematic adjustment factors for z axis
M911 S19.8 R22.0 P"M913 X10 Y10 G91 G1 Z3 F500 G90" ;power loss protocol
; Network
M552 S0
M552 P192.168.2.1 ;Set the IP address
M553 P255.255.255.0 ;Subnet mask (for use with internet sharing from Mac comnputer
M552 S1 ;enable network access
; Drives
M569 P5 S0 T1.25:1.25:1.25:1.25 ; physical drive 0 goes backwards
M569 P6 S0 T1.25:1.25:1.25:1.25 ; physical drive 1 goes forwards
M569 P8 S0 T1.25:1.25:1.25:1.25 ; physical drive 2 goes backwards
M569 P9 S1 T1:1:1.25:1.25 ; physical drive 3 goes forwards
M584 X6 Y5 Z8 E9 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X255.74 Y1027.6 Z255.74 E50 ;steps/mm for CoreXZ mode
M566 X900 Y250 Z900.00 E1000.00 ; set maximum instantaneous speed changes (mm/min)
M203 X10000.00 Y3000.00 Z10000.00 E10000.00 ;max feedrate
M201 X4000.00 Y1000.00 Z4000.00 E6000.00 ; set max accelerations (mm/s^2)
M906 X800 Y800 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
M204 P4000 T4000 ;set print vs travel accelerations
M84 S120 ; Set idle timeout
; Axis Limits
;M206 X0 Y-170 Z0 ;Offset Axes (not using anymore. now using G90 in home command bc more robust)
M208 X0 Y-55 Z0 S1 ; set axis minima
M208 X575 Y650 Z500 S0 ; set axis maxima
; Endstops
M574 X1 S1 P"!xstop" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin !xstop
M574 Y1 S1 P"!ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin !ystop
M574 Z1 S1 P"!zstop"
;Probing and Mesh bed compenstion parameters
M558 P5 C"^!zprobe.in" H10 F1200:200 T2400 ;probe type, pin, probe depth, probe speed, travel speed
G31 P500 X-55 Y30 Z0.2 ;Probe threshold and offsets
M557 X0:520 Y0:620 S52.5:51.66 ; define mesh grid (note that I think you have to do this after setting the Z probe offsets)
M376 H25 ;Taper off bed compensation after 25 mm
G29 S1 P"May28-Bed51Water52.csv" ;load this height map as the default
; Heaters
M308 S1 P"bedtemp" Y"thermistor" T95000 B3950 A"BedThermistor" V-0.028 ;Setup the thermistor
M308 S2 P"urxd0" Y"thermocouple-max31855" A"BedTC" ;not using this currently bc thermistor was easier
M950 H0 C"bedheat" T1 ;use sensor 1 for bedheating
M307 H0 R0.161 K0.159:0.000 D15.17 E1.35 S1.00 B0 ;These are the PID parameters for bed heating
M140 H0
; Fans
M950 p5 C"spi.cs3" ;This one is for controlling the relay which controls the cooling fans
M42 P5 S1 ;initial state of relay = off
; PWM for testing water control servo
M950 p6 C"fan2" Q50
M42 P6 S0.5
; Tools
M563 P0 S"MD PE10" D0 ; 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
M302 P1 ;allow "cold" extrusion
;Water control
M950 p3 C"spi.cs2" ;This one controls the relay that turns on the auxilary tank drain pump
M950 p4 C"connsd.7" ;This one is for turning on/off the solenoid tank drain valve
M42 P3 S1 ;initialize these pins so that the relays are off to begin with
M42 P4 S1
M308 S3 P"e0temp" Y"thermistor" A"WaterLevelSensor" ;Water level sensor to the e0temp pin
; Get 'er ready cuz i'll forget
G4 S5
M140 H0 S51
echo "bedtemp set to 51"