[3.5beta1+] Duet2WiFi freeze running macro
-
Hello everyone,
I have a strange problem with my board.My printer is running a Duet 2 wifi with a duex 5 and a prusa mmu2.
As the original mmu2 behaviour, the printer will pause if something goes wrong (ie when it can't grip the filament to send it to the extruder).
Sincer I playing with the 3.5b1+ most of the time I can't resume a print after a pause.
The pause.g macro seems to run all the commands, parks the head.. and thats it. Now the dwc status is "paused" and done.
In the M122 report after freeze, the gcode section shows: File is idle in state(s) 0 0 17, running macro
If I attepmt to run any other macro, it will show in the m122 report in the HTTP or Aux, with the same description "running macro" but only an emergency reset will solve the problem.
The same macros works flawlessly with 3.4.5
I modified something wrong?
-
@Leonard03
Do you have an M291 S2 call in there somewhere?
It could be similar to what I found here
https://forum.duet3d.com/topic/31161/more-feedback-on-m291-issues-rrf-v3-5-0b1?_=1675672158999 -
@OwenD down the line I have an M291 S1 T0 but I bave installed that binary. Seems to be simillar problem as yours.
But now the questions is why any other macro is ending like that? The HTTP channel freezes as well but that macro does not have any M291Thinking now about this.. I realise that that M291 never show on DWC nor paneldue
-
@Leonard03
Perhaps post the macro in question.
I noticed last night that my filament change macro doesn't show M291 on PanelDue but I was going to wait for 3.5 to get out of beta before worrying too much as PanelDue firmware probably needs to catch up. -
@OwenD
Well if something is wrong with the mmu2 all upcoming macros are executed in this order:errorCheck.g
if global.mmuErr != 0 M98 P"0:/sys/MMU Control/errorAction.g" if global.mmuErr != 0 if state.status = "processing" M25 M98 P"0:/sys/MMU Control/errorWarning.g"
pause.g
; pause.g ; called when a print from SD card is paused ; ; generated by RepRapFirmware Configuration Tool v3.2.0 on Tue Dec 29 2020 16:23:44 GMT+0200 (Eastern European Standard Time) M83 ; relative extruder moves ;G1 E-10 F3600 ; retract 10mm of filament G10 G91 ; relative positioning G1 Z5 F600 ; lift Z by 5mm G90 ; absolute positioning G1 X0 Y0 F6000 ; go to X=0 Y=0 if global.MMUmode != 0 M98 P"0:/sys/MMU Control/idlerMove.g" S5 M99
errorWarning.g
if global.mmuErr != 0 M291 P"MMU needs user atention !" R"MMU2 Error" S1 T0 M99
The firmware is RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5beta1+ (2023-01-30 09:11:16) running on Duet WiFi 1.02 or later + DueX5
The "global.mmuErr" gets modified mostly from the tool change macros
-
And now, trying to start a print I got a reset..
=== Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5beta1+ (2023-01-30 09:11:16) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-917NK-F2MS4-7JKDG-3S06M-9ZSWD Used output buffers: 7 of 26 (26 max) === RTOS === Static ram: 22200 Dynamic ram: 79728 of which 0 recycled Never used RAM 7968, free system stack 112 words Tasks: NETWORK(notifyWait,14.1%,212) HEAT(notifyWait,0.1%,326) Move(notifyWait,0.0%,295) DUEX(notifyWait,0.0%,24) MAIN(running,85.8%,500) IDLE(ready,0.0%,30), total 100.0% Owned mutexes: WiFi(NETWORK) === Platform === Last reset 00:10:21 ago, cause: software Last software reset at 2023-02-06 12:13, reason: AssertionFailed, Gcodes spinning, available RAM 8720, slot 2 Software reset code 0x4123 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f827 BFAR 0xe000ed38 SP 0x2001fe7c Task MAIN Freestk 31443 ok Stack: 0000019f 0047c844 0045dced 00000002 0045edf9 2000cba8 00000001 00000001 200012d4 20011540 200043d0 00000000 dffee39a 20011c5f dffee3a2 00000001 0045bb87 00000000 2001fee8 200119f0 00000000 20004888 004316e9 00000000 20011b80 20011c67 00431dcf Error status: 0x04 Aux0 errors 0,0,0 Step timer max interval 0 MCU temperature: min 23.1, current 23.7, max 24.1 Supply voltage: min 12.0, current 12.3, max 12.4, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/22, heap memory allocated/used/recyclable 2048/600/124, 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 0 Driver 3: standstill, SG min n/a Driver 4: standstill, SG min 0 Driver 5: standstill, SG min n/a Driver 6: standstill, SG min 0 Driver 7: standstill, SG min n/a Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2023-02-06 12:23:38 Cache data hit count 4294967295 Slowest loop: 14.87ms; fastest: 0.13ms 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 0.6ms, write time 0.5ms, max retries 0 === Move === DMs created 83, segments created 3, maxWait 34136ms, bed compensation in use: none, comp offset 0.000 no step interrupt scheduled === DDARing 0 === Scheduled moves 12, completed 12, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 1], 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 3, 0.32 reads/min === Network === Slowest loop: 134.28ms; fastest: 0.07ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 1 of 8 = WiFi = Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 0 WiFi firmware version 2.1beta2 WiFi MAC address b4:e6:2d:52:f5:47 WiFi Vcc 3.40, reset reason Power up WiFi flash size 4194304, free heap 43084 WiFi IP address 192.168.0.107 WiFi signal strength 0dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
-
Replacing the M291 with an "echo" command in "errorWarning.g" has no effect in this case:
Movement locks held by File
File is idle in state(s) 0 0 19, running macro -
@Leonard03 said in [3.5beta1+] Duet2WiFi freeze running macro:
And now, trying to start a print I got a reset..
In the original 3.5beta1 announcement thread I posted links to some new firmware binaries to fix that. But you may prefer to wait for beta2 which is due out this week.
-
-
Sadly, even with the beta2 update this RRF gets stuck, but this issue seems to occur only when M25 is called from a macro.
If I hit "Pause" or send a M25 from DWC or PanelDue from the UI or via console works as expected -
@Leonard03
I don't know if it would make a difference, but you don't need the M99 calls at the end of your macros. -
@OwenD Alredy tried.. in the macros and sending it via DWC and no wffect. DWC shows the command is executing but thats it. M99 and the "abort" command has no effects
-
@Leonard03 have you tried using M226:
https://docs.duet3d.com/User_manual/Reference/Gcodes#m226-synchronous-pauseM25 is pause during a print sent from outside the print, M226 is supposed to be a pause embedded in a file.
-
@T3P3Tony Thank you for the sugestion. No because of this paragraph: "M25 is intended for use from a different source of GCodes (such as the web interface console, PanelDue or a Macro)" but I'll give it a try now
-
I really don't understand why, but this worked!
Yhank you very much for the suggestion -
-
-
I have the same behaviour but when manually press pause button, but 3.5 beta2
What can I do?
Thanks