I am working on an idex printer, using Prusa mk3s+ hardware, and I am currently trying to test one of my extruders. Each extruder has a separate z and x axis, and the y axis will run between them. One of the extruders is running on the mini 5+, while the other is running off a toolboard 1LC + expansion board 3HC. The one connected to the mini prints correctly, but the other extruder is having a mysterious issue with the heater. Whenever I print, without fail, the nozzle heater works at first, but goes offline around the 3rd or 4th layer, reading 2000C and it obviously stops extruding.
After this, the corresponding sensor cannot be detected with M308, it says it does not exist. Restarting the mainboard or rerunning the config file will cause the heater to be recognized again, it's almost as if the heater is being unbinded / unmapped?
I can replicate this issue very consistently, using multiple different prints, even by doing a dry run without using the heater or extruder drive. I have checked the gcode for each print, and there are no tool changes or explicit references to any heater that might be causing the issue. Manually activating the heater and running it at > 200C for extended periods of time DOES NOT produce the issue, it happens solely in the middle of a print, which makes me think it might not be a wiring problem.
I am on duet web control 3.4.0, my main board (mini 5+) and toolboard are also 3.4.0, my expansion board is 3.4.1. My config file is below.
; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Duet Dual Config" ; set printer name
; Network
M551 P"password" ; set password
M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet
; Drives
;back half
M569 P0.0 S0 D3 V40 ; physical drive 0.0 (zl) goes backwards
M569 P0.1 S0 D3 V40 ; physical drive 0.1 (x) goes forwards
M569 P0.2 S1 D3 V40 ; physical drive 0.2 (y) goes forwards
M569 P0.3 S1 ; physical drive 0.3 (e) goes forwards
M569 P0.4 S0 D3 V40 ; physical drive 0.4 (zr) goes backwards
;front half
M569 P121.0 S1 ; physical drive 121.0 (e2) goes forwards
M569 P1.0 S1 D3 V40 ; physical drive 1.0 (zr2) goes forwards
M569 P1.1 S1 D3 V40 ; physical drive 1.1 (zl2) goes forwards
M569 P1.2 S0 D3 V40 ; physical drive 1.2 (x2 / u) goes forwards
M584 X0.1 U1.2 Y0.2 Z0.0:0.4:1.1:1.0 E0.3:121.0 ; set drive mapping
M350 X16 U16 Y16 E16 Z16 I1 ; Configure microstepping with interpolation
M92 X100.00 U100.00 Y100.00 Z400.00 E140.00 ; set steps per mm
M566 X600.00 U600.00 Y600.00 Z48.00 E300.00 ; set maximum instantaneous speed changes (mm/min)
M203 X12000.00 U12000.00 Y12000.00 Z720.00 E7200.00 ; set maximum feedrate (mm/min)
M201 X1000.00 U1000.00 Y1000.00 Z200.00 E5000.00 ; set max accelerations (mm/s^2)
M906 X840.00 U840.00 Y620.00 Z580.00 E650.00:650.00 I10 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
M917 X75 U75 Y75 Z45 E75
; Axis Limits
M208 X0 U6 Y-7 Z-0.1 S1 ; set axis minima
M208 X255 U255 Y210 Z205 S0 ; set axis maxima
;M208 X255 U255 Y680 Z205 S0 ; set axis maxima
M671 X-37:287 U-37:287 Y0:0 S10 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
M564 H0 ; allow unhomed movement
; Endstops
M574 X1 S3 ; configure sensorless endstop for low end on X
M574 U1 S1 P"1.io2.in" ; configure switch-type (e.g. microswitch) endstop for low end on U / X2 via expansion pin io2.in
M574 Y1 S3 ; configure sensorless endstop for low end on Y
M915 P0.1 S3 H10 R1 ; set the X axis sensitivity
M915 P1.2 S30 H200 R0 ; set the X2 / U axis sensitivity
M915 P0.2 S3 F0 H10 R1 ; set the Y axis sensitivity
M574 Z1 S2
;filament sensor
M591 D0 P2 C"io3.in" S0 ; Filament Runout Sensor 1
M591 D1 P2 C"121.io0.in" S0 ; Filament Runout Sensor
; Z-Probe
M558 K0 P8 C"io2.in" H5 F750:120 T6000 A1 ; disable Z probe but set dive height, probe speed and travel speed
M558 K1 P8 C"1.io0.in" H5 F750:120 T6000 A1 ; disable Z probe but set dive height, probe speed and travel speed
G31 K0 P500 X-23 Y5 Z2.0 ;set probe offsets
G31 K1 P500 X-23 U-23 Y5 Z2.1
M557 X5:245 Y0:210 S15 ; define mesh grid
; Heaters
;bed
M308 S0 P"temp1" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp1
M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0
M307 H0 R0.281 K0.557:0.000 D13.78 E1.35 S1.00 B0 ; Bed PID Calibration and PWM
M140 H0 ; map heated bed to heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
;backNozzle
M308 S1 P"temp2" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp0
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
M307 H1 R2.842 K0.307:0.388 D8.29 E1.35 S1.00 B0 V23.5 ;nozzle heater config
M143 H1 S280 ; set temperature limit for heater 1 to 280C
;frontNozzle
M308 S2 P"121.temp0" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin 121.temp1
M950 H2 C"121.out0" T2 ; create nozzle heater output on 121.out0 and map it to sensor 2
M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M307 H2 R2.809 K0.302:0.000 D8.91 E1.35 S1.00 B0 V24.1 ;nozzle heater config
M143 H2 S280 ; set temperature limit for heater 1 to 280C
; Fans
M950 F0 C"out3" Q250 ; create fan 0 on pin out3 and set its frequency
M106 P0 C"backPart" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off
M950 F1 C"out4" Q250 ; create fan 1 on pin out4 and set its frequency
M106 P1 C"backHotend" S1 H1 T45 ; set fan 1 name and value. Thermostatic control is turned on
M950 F2 C"121.out1" Q250 ; create fan 2 on pin 121.out1 and set its frequency
M106 P2 C"frontPart" S0 H-1 ; set fan 2 name and value. Thermostatic control is turned off
M950 F3 C"121.out2" Q250 ; create fan 3 on pin 121.out2 and set its frequency
M106 P3 C"frontHotend" S1 H2 T45 ; set fan 3 name and value. Thermostatic control is turned on
; Tools
M563 P0 S"back" 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
M563 P1 S"front" D1 H2 F2 X3 ; define tool 1
G10 P1 X0 Y-470 Z0 ; set tool 1 axis offsets
G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C
; Custom settings are not defined
; Miscellaneous
M501 ; load saved parameters from non-volatile memory
Any insight on the issue would be greatly appreciated. Thanks!