@edsped I erased the firmware and updated it again via Bossa and USB, it did not solve anything. The IP adress was showing both before and after the update.
@dc42 This is a PanelDue 7i, running now firmware version 3.5.0-rc7-7.0i.
@Phaedrux
This is the result of a M122 command after a print where the error appeared multiple time, no reboot of the Duet after the print :
M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.0-rc.1 (2023-08-31 16:16:15) running on Duet Ethernet 1.02 or later + DueX5v0.11
Board ID: 0JD2M-9F8TA-GJ4TN-6J1F8-3SN6P-K7UY5
Used output buffers: 1 of 26 (26 max)
=== RTOS ===
Static ram: 23076
Dynamic ram: 75432 of which 0 recycled
Never used RAM 11132, free system stack 124 words
Tasks: NETWORK(1,ready,22.3%,196) HEAT(3,nWait,0.1%,308) Move(4,nWait,0.3%,261) DUEX(5,nWait,0.0%,26) MAIN(1,running,77.2%,625) IDLE(0,ready,0.0%,29), total 100.0%
Owned mutexes:
=== Platform ===
Last reset 01:04:56 ago, cause: power up
Last software reset at 2023-10-23 13:49, reason: User, Gcodes spinning, available RAM 10996, slot 1
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x04
Aux0 errors 0,0,0
MCU temperature: min 30.1, current 36.2, max 42.5
Supply voltage: min 24.1, current 24.3, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 99/32, heap memory allocated/used/recyclable 2048/1320/912, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min 0
Driver 1: standstill, SG min 0
Driver 2: standstill, SG min 0
Driver 3: standstill, SG min 0
Driver 4: standstill, SG min 0
Driver 5: standstill, SG min n/a
Driver 6: standstill, SG min n/a
Driver 7: standstill, SG min n/a
Driver 8: standstill, SG min 251
Driver 9: standstill, SG min n/a
Driver 10:
Driver 11:
Date/time: 2023-10-25 12:55:42
Cache data hit count 4294967295
Slowest loop: 220.50ms; fastest: 0.15ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Storage ===
Free file entries: 10
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest read time 2.1ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 83, segments created 27, maxWait 6179ms, bed compensation in use: none, height map offset 0.000, ebfmin -0.92, ebfmax 1.00
no step interrupt scheduled
Moves shaped first try 1301, on retry 100, too short 1539, wrong shape 35, maybepossible 19
=== DDARing 0 ===
Scheduled moves 3233, completed 3233, 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.0
=== 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 idle in state(s) 0
Autopause is idle in state(s) 0
Q0 segments left 0
Code queue 0 is empty
=== DueX ===
Read count 0, 0.00 reads/min
=== Network ===
Slowest loop: 84.28ms; fastest: 0.04ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
HTTP sessions: 1 of 8
Interface state active, link 100Mbps full duplex
This is my config.g
; Configuration file for Duet WiFi / Ethernet running RRF3 on E3D Tool Changer
; executed by the firmware on start-up
;########################
; General preferences
;########################
M111 S0 ; Debugging off
G21 ; Work in millimetres
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M555 P2 ; Set firmware compatibility to look like Marlin
M669 K1 ; Select CoreXY mode
;########################
; Network
;########################
M550 P"ToolChanger" ; Set machine name
M553 P*** ; Ethernet Settings - Mask
M554 P*** ; Ethernet Settings - Passerelle
M552 P*** ; Ethernet Settings - Adresse
M552 S1 ; Enable Networking
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable Telnet
;########################
; Drive
;########################
;Drive directions
M569 P0 S0 ; Drive 0 (X)
M569 P1 S0 ; Drive 1 (Y)
M569 P2 S1 ; Drive 2 (Z)
M569 P3 S0 ; Drive 3 (C)
M569 P4 S0 ; Drive 4 (E0)
M569 P5 S0 ; Drive 5 (E3)
M569 P6 S0 ; Drive 6 (E2)
M569 P7 S0 ; Drive 7 (E1)
M569 P8 S1 ; Drive 8 (W)
M569 P9 S0 ; Drive 9 UNUSED Future 5 axes
;Drive mapping and control
M584 X0 Y1 Z2 C3 W8 E4:7:6:5 ; Stepper motor connection points, see C:\Users\YN14386\Documents\Documentation\Toolchanger for wiring diagram
M208 X-25:338.5 Y-49:243 Z-0.2:300 C-45:360 W-3:65 ; Set axis maxima & minima
M92 X100 Y100 Z800 C91.022 W360 E392:392:392:392 ; Set steps per mm assuming x16 microstepping
M350 X16 Y16 Z16 I1 ; Configure microstepping with interpolation for the extruders
M350 E16:16:16:16 I1 ; Configure microstepping with interpolation for the XYZ movements
M350 C16 I1 ; Configure microstepping with interpolation for the coupler
M350 W16 I1 ; Configure microstepping with interpolation for the pebble wiper
;Drive speeds and acceleration
M203 X35000 Y35000 Z1200 C5000 W2400 E5000:5000:5000:5000 ; Set maximum speeds (mm/min)
M201 X2000 Y2000 Z400 C500 W800 E2500:2500:2500:2500 ; Set maximum accelerations (mm/s^2) was X6000 Y6000
M566 X300 Y300 Z20 C2 W100 E400:400:400:400 ; Set the jerk : maximum instantaneous speed changes (mm/min)
; reset this to 400 400
; Motor current
M906 X1800 Y1800 Z1330 I30 ; Idle motion motors to 30%
M906 E1000:1000:1000:1000 C500 I10 ; Idle extruder and cooupler motors to 10%
M906 W600 I20 ; Idle pebble wiper to 20%
;########################
; Endstops
;########################
;X and Y axis
M574 X1 Y1 S3 ; Set X / Y endstop stall detection
M915 X Y S3 F0 H400 R1 ; Stall Detection for the X and Y Axes ;
; Coupler Axis
M574 C0 Z0 ; No C Z endstop, it just crashes
;P axis
M574 W1 S3 ; Set W endstop stall detection
;Z axis
M558 P8 C"zstop" H3 F360 I0 T20000 ; Set Z probe type to switch, the axes for which it is used and the dive height + speeds
G31 P200 X0 Y0 Z0 ; Set Z probe trigger value, offset and trigger height
M557 X10:290 Y20:180 S40 ; Define mesh grid
;M557 X10:290 Y20:180 S280:160 ; Define mesh grid to test quickly
;M376 H15 ; bed compensation taper
;########################
; Heaters
;########################
;Tool 0
M308 S1 P"e1temp" Y"thermistor" A"Heater 0" T100000 B4725 C7.06e-8 ; Set thermistor number (S), connection point (P), name (A) and parameters (YTBC)
M950 H1 C"e1heat" T1 ; Set heater number (H) and connection point (C)
M143 H1 S285 ; Set temperature limit for heater to 285C
;Tool 1
M308 S2 P"duex.e2temp" Y"thermistor" A"Heater 1" T100000 B4725 C7.06e-8 ; Set thermistor number (S), connection point (P), name (A) and parameters (YTBC)
M950 H2 C"duex.e2heat" T2 ; Set heater number (H) and connection point (C)
M143 H2 S290 ; Set temperature limit for heater to 285C
;Tool 2
M308 S3 P"duex.e3temp" Y"thermistor" A"Heater 2" T100000 B4725 C7.06e-8 ; Set thermistor number (S), connection point (P), name (A) and parameters (YTBC)
M950 H3 C"duex.e3heat" T3 ; Set heater number (H) and connection point (C)
M143 H3 S285 ; Set temperature limit for heater to 285C
;Tool 3
M308 S4 P"duex.e4temp" Y"thermistor" A"Heater 3" T100000 B4725 C7.06e-8 ; Set thermistor number (S), connection point (P), name (A) and parameters (YTBC)
M950 H4 C"duex.e4heat" T4 ; Set heater number (H) and connection point (C)
M143 H4 S285 ; Set temperature limit for heater to 285C
;Heated bed
M308 S0 P"bedtemp" Y"thermistor" A"Bed" T100000 B4138 C0 ; Set thermistor number (S), connection point (P), name (A) and parameters (YTBC)
M950 H0 C"bedheat" T0 ; Set heater number (H) and connection point (C)
M143 H0 S115 ; Set temperature limit for bed heater to 110C
M140 H0 ; Bed heater is heater 4
;########################
; Fans
;########################
;Tool 0
M950 F4 C"fan1" ; Set hotend fan number (F) and connection point (C)
M106 P4 S255 H1 T60 ; Link fan to Heater (H) and turn it for temperature above 60C (T)
M950 F0 C"fan2" ; Part cooling fan connection point
M106 P0 S0 C"Tool 0" ; Turn off the part cooling fan.
;Tool 1
M950 F5 C"duex.fan3" ; Set hotend fan number (F) and connection point (C)
M106 P5 S255 H2 T60 ; Link fan to Heater (H) and turn it for temperature above 60C (T)
M950 F1 C"duex.fan4" ; Part cooling fan connection point
M106 P1 S0 C"Tool 1" ; Turn off the part cooling fan.
;Tool 2
M950 F6 C"duex.fan5" ; Set hotend fan number (F) and connection point (C)
M106 P6 S255 H3 T60 ; Link fan to Heater (H) and turn it for temperature above 60C (T)
M950 F2 C"duex.fan6" ; Part cooling fan connection point
M106 P2 S0 C"Tool 2" ; Turn off the part cooling fan.
;Tool 3
M950 F7 C"duex.fan7" ; Set hotend fan number (F) and connection point (C)
M106 P7 S255 H4 T60 ; Link fan to Heater (H) and turn it for temperature above 60C (T)
M950 F3 C"duex.fan8" ; Part cooling fan connection point
M106 P3 S0 C"Tool 3" ; Turn off the part cooling fan.
;########################
; Tools
;########################
;Tool 0
M563 P0 S"Tool 0" D0 H1 F0 ; Define the tool : its number (P), its name (S), its extruder drive (D), its heater (H) and its part cooling fan (F)
G10 P0 X0 Y0 Z0 ; Reset tool axis offsets
G10 P0 R0 S0 ; Reset initial tool active and standby temperatures to 0C
;Tool 1
M563 P1 S"Tool 1" D1 H2 F1 ; Define the tool : its number (P), its name (S), its extruder drive (D), its heater (H) and its part cooling fan (F)
G10 P1 X0 Y0 Z0 ; Reset tool axis offsets
G10 P1 R0 S0 ; Reset initial tool active and standby temperatures to 0C
;Tool 2
M563 P2 S"Tool 2" D2 H3 F2 ; Define the tool : its number (P), its name (S), its extruder drive (D), its heater (H) and its part cooling fan (F)
G10 P2 X0 Y0 Z0 ; Reset tool axis offsets
G10 P2 R0 S0 ; Reset initial tool active and standby temperatures to 0C
;Tool 3
M563 P3 S"Tool 3" D3 H4 F3 ; Define the tool : its number (P), its name (S), its extruder drive (D), its heater (H) and its part cooling fan (F)
G10 P3 X0 Y0 Z0 ; Reset tool axis offsets
G10 P3 R0 S0 ; Reset initial tool active and standby temperatures to 0C
;########################
; PID tune
;########################
; run M303 T0 S230 with the tool you want to autotune (T) and the target temperature (S)
; for the bed, run M303 H4 S80 with the target temperature (S)
;Tool 0
M307 H1 R4.405 K0.459:0.607 D1.76 E1.35 S1.00 B0 V24.3 ;PID parameter for a heater (H)
;Tool 1
M307 H2 R4.395 K0.424:0.670 D1.72 E1.35 S1.00 B0 V24.3
;Tool 2
M307 H3 R4.902 K0.455:0.686 D1.64 E1.35 S1.00 B0 V24.3 ;PID parameter for a heater (H)
;Tool 3
M307 H4 R5.197 K0.520:0.759 D1.42 E1.35 S1.00 B0 V24.3 ;PID parameter for a heater (H)
;Bed
M307 H0 R1.286 K0.265:0.000 D3.49 E1.35 S1.00 B0 ; PID parameter for the bed heater (H) for magnetic + PEI
;########################
; tool offsets
;########################
; !ESTIMATED! offsets for:
; V6-tool: X-9 Y39 Z-5
; Volcano-tool: X-9 Y39 Z-13.5
; Hemera-tool: X20 Y43.5 Z-6
global xmicroscope = 338.4 ;
global ymicroscope = 98.3 ;
; for the XY calibration, major divisions are 0.1 mm and minor are 0.05 mm
;G1 X336.8 Y99.5 F6000
;G10 P0 X20.00 Y43.50 ; Tool 0 is the reference
;G10 P1 X19.65 Y43.55 ; Tool 1 was Y 43.25
;G10 P2 X19.70 Y43.60 ; Tool 2 was X 19.55 Y 43.50
;G10 P3 X19.75 Y43.45 ; Tool 3 was Y 43.30
; X and Y offsets are set in the toolXYoffset files
M98 P"0:/sys/toolXYoffset0.g"
M98 P"0:/sys/toolXYoffset1.g"
M98 P"0:/sys/toolXYoffset2.g"
M98 P"0:/sys/toolXYoffset3.g"
; Z (and W) offsets are set in the toolZoffset files
M98 P"0:/sys/toolZoffset0.g"
M98 P"0:/sys/toolZoffset1.g"
M98 P"0:/sys/toolZoffset2.g"
M98 P"0:/sys/toolZoffset3.g"
;########################
; Pressure advance
;########################
;Default pressure advance for PLA, different values should be set in the slicer
M572 D0 S0.025 ; pressure advance T0
M572 D1 S0.025 ; pressure advance T1
M572 D2 S0.025 ; pressure advance T2
M572 D3 S0.025 ; pressure advance T3
;########################
; Others
;########################
M593 F42.2 ; cancel ringing at 42.2Hz (https://forum.e3d-online.com/threads/accelerometer-and-resonance-measurements-of-the-motion-system.3445/)
; Pebble wiper servo motor
M950 S0 C"duex.pwm5" Q500
M575 P1 S1 B57600 ; Enable LCD
G29 S2 ; disable mesh
T-1 ; deselect tools
;******************************
;*******Macro parameters*******
;******************************
global homingSpeed = 4800
global movementSpeed = 18000
global zmovementSpeed = 900
global centerX = 155
global centerY = 100
global backX = 155
global backY = 210
global centerProbeX = {global.centerX - sensors.probes[0].offsets[0]}
global centerProbeY = {global.centerY - sensors.probes[0].offsets[1]}
global toolSafeY = 150
global notoolSafeY = 210
global toolapproachY = 217
global tool0X = -3.4
global tool0Y = 227.0
global tool1X = 87.2
global tool1Y = 227.2
global tool2X = 221.8
global tool2Y = 227.9
global tool3X = 312.4
global tool3Y = 227.9
homeall.g
; homeall.g
; called to home all axes
T-1
M98 P"homey.g" ; Home Y
M98 P"homex.g" ; Home X
M98 P"homez.g" ; Home Z
M98 P"homeW.g" ; Home W (Pebble Wiper)
M98 P"homec.g" ; Home C (ToolHead)
M98 P"0:/macros/Utility/Move to back"
homec.g
; homec.g
; called to home the C axis (coupler)
M291 P" " R"Homing C" S0 T1
G91
M913 C70 ; XY MOTORS TO 60% CURRENT
G1 H2 C-500 F5000
G92 C-45
G90
M913 C100 ; XY MOTORS TO 100% CURRENT
;Open Coupler
M98 P"0:/macros/Utility/Coupler - Unlock"
M300 P100 S440
homew.g
; called to home the W axis (Pebble)
M291 P" " R"Homing W" S0 T1
G91 ; use relative positioning
G1 H2 W-0.5 F600 ; energise motors to ensure they are not stalled
M400 ; make sure everything has stopped before we change the motor currents
M913 W40 ; drop motor currents to 40%
M915 H200 W S3 R0 F0 ; set W sensitivity to 3, do nothing when stall, unfiltered
G1 H1 W-80 F1200 ; move to the top stopping at the endstop
M300 P100 S440 ; play beep sound
M400 ; make sure everything has stopped before we reset the motor currents
M913 W100 ; motor currents back to 100%
G90 ; back to absolute positioning
G1 W0 F2400 ; move away from end
homex.g
; homex.g
; called to home the x axis
if state.currentTool ==-1
M291 P" " R"Homing X" S0 T1
G91 ; relative positioning
G1 H2 X0.5 Y-0.5 F6000 ; energise motors to ensure they are not stalled
M400 ; make sure everything has stopped before we change the motor currents
M913 X20 Y20 ; drop motor currents to 20%
M915 H200 X Y S3 R0 F0 ; set X and Y to sensitivity 3, do nothing when stall, unfiltered
G1 Z5 F{global.zmovementSpeed} H2 ; lift Z relative to current position
G1 H1 X-1000 F{global.homingSpeed} ; move quickly to X axis endstop and stop there (first pass)
M300 P100 S440 ; play beep sound
G1 H1 X2 F{global.movementSpeed} ; move away from end
G1 Z-5 F{global.zmovementSpeed} H2 ; go back to the previous Z
G90 ; absolute positioning
M400 ; make sure everything has stopped before we reset the motor currents
M913 X100 Y100 ; motor currents back to 100%
else
M291 P" " R"Function not available when tool selected" S0 T2
homey.g
; homey.g
; called to home the y axis
if state.currentTool ==-1
M291 P" " R"Homing Y" S0 T1
G91 ; relative positioning
G1 H2 X0.5 Y-0.5 F6000 ; energise motors to ensure they are not stalled
M400 ; make sure everything has stopped before we change the motor currents
M913 X20 Y20 ; drop motor currents to 20%
M915 H200 X Y S3 R0 F0 ; set X and Y to sensitivity 3, do nothing when stall, unfiltered
G1 Z5 F{global.zmovementSpeed} H2 ; lift Z relative to current position
G1 H1 Y-1000 F{global.homingSpeed} ; move quickly to X axis endstop and stop there (first pass)
M300 P100 S440 ; play beep sound
G1 H1 Y2 F{global.movementSpeed} ; move away from end
G1 Z-5 F{global.zmovementSpeed} H2 ; go back to the previous Z
G90 ; absolute positioning
M400 ; make sure everything has stopped before we reset the motor currents
M913 X100 Y100 ; motor currents back to 100%
else
M291 P" " R"Function not available when tool selected" S0 T2
homez.g
; homez.g
; called to home the Z axis
if state.currentTool ==-1
M291 P" " R"Homing Z" S0 T1
G91 ; relative positioning
G1 Z5 F{global.zmovementSpeed} H2 ; lift Z relative to current position
G90 ; absolute positioning
G1 X{global.centerProbeX} Y{global.centerProbeY} F{global.movementSpeed} ; go to first probe point
G30 ; home Z by probing the bed
M300 P100 S440 ; play beep sound
else
M291 P" " R"Function not available when tool selected" S0 T2
tfree0.g
; tfree0.g
; called when tool 0 is freed
;retract nozzle
M98 P"retract_quick.g"
;Move In
G53 G1 X{global.tool0X} Y{global.toolSafeY} F12000
G53 G1 Y{global.toolapproachY} F6000
G53 G1 Y{global.tool0Y} F3000
;retract nozzle
M98 P"retract.g"
;Open Coupler
M98 P"0:/macros/Utility/Coupler - Unlock"
;Move Out
G53 G1 Y{global.toolapproachY} F6000
G53 G1 Y{global.notoolSafeY} F{global.movementSpeed}
tpost0.g
; tpost0.g
; called after tool 0 has been selected
;heatup
M116 P0
;retract nozzle
M98 P"retract_recover.g"
;restore to correct height
G0 R2 Z0 F5000
;restore brush to correct height
G0 R2 W0 F1200
;Move Out
G53 G1 Y{global.toolSafeY} F6000
M106 R2 ; restore print cooling fan speed
tpre0.g
; tpre0.g
; called before tool 0 is selected
;Unlock Coupler
M98 P"0:/macros/Utility/Coupler - Unlock"
;Move to location
G1 X{global.tool0X} Y{global.notoolSafeY} F{global.movementSpeed}
;Move in
G1 Y{global.toolapproachY} F{global.movementSpeed}
;Collect
G1 Y{global.tool0Y} F3000
;Close Coupler
M98 P"0:/macros/Utility/Coupler - Lock"
And these two are separated but called from the config.g as they are set by macros.
toolZoffset0.g
; Offset for tool 0
; Smaller negativ values means closer to bed - Z and W must have the same value
G10 P0 Z-7.930 W-7.930
toolXYoffset0.g
; Offset for tool 0
G10 P0 X21.0 Y43.45