The pause XYZ coordinates message not over-writing a M291 S1 T0
-
In the filament-runout.g I have the following line of code:
M291 P"Filament Sensor 0 - No filament or movement error" S1 T0
Followed by a M25This should not be a blocking message, as I do want the pause to be executed afterwards. However at the end of the pause, a message is displayed showing the XYZ coordinates of the pause.
edit: On the Paneldue (the 7i model in this case), this second message of the XYZ coordinates overwrites the pause message. On the DWC it does display the correct message, so this is specifically a Paneldue issue it seems.
Because it may be a long time between the incident of the pause, and some-one resuming it, it would be nice to be able to block the XYZ coordinates being displayed. This is a less important message than the reason for the pause (as opposed to lets say a user-initiated pause, or one coming from another error event).
filament-runout.g
if {param.D ^ ""} = "0" if {global.filamentswitch} = 0 if sensors.filamentMonitors[0].status = "sensorError" echo "SensorError-0 Continuing to Print" M99 if sensors.filamentMonitors[0].status = "noDataReceived" echo "No data received on E0 Continuing to Print - Check configuration and wiring" M99 echo "No filament or possible clog on E0 - Paused" M291 p"Filament Sensor 0 - No filament or movement error" S1 T0 M25 ;pause the print elif {global.filamentswitch} = 1 M98 P"trigger2.g" if {param.D ^ ""} = "1" elif {global.filamentswitch} = 0 if sensors.filamentMonitors[1].status = "sensorError" echo "SensorError-1 Continuing to Print" M99 if sensors.filamentMonitors[1].status = "noDataReceived" echo "No data received on E1 Continuing to Print - Check configuration and wiring" M99 echo "No filament or possible clog on E1" M291 p"Filament Sensor 1 - No filament or movement error" S1 T0 M25 ;pause the print elif {global.filamentswitch} = 1 M98 P"trigger2.g" M99
pause.g
; pause.g ; called when a print from SD card is paused M300 S1111 P222 ; beep G4 P1 ; dwell 1ms M83 ; relative extruder moves G1 E-6 F3000 ; retract 5mm of filament G91 ; relative moves if {(move.axes[2].machinePosition) < (move.axes[2].max - 10)} ; check if there's sufficient space to raise head G1 Z+5 F3000 ; move Z up a bit else G4 P10 ; wait for popup to display G90 ; absolute moves G1 X5 Y5 F3000 ; move quickly to the front left M300 S1111 P333 ; beep M106 S0 ; set fans to 0 T-1 P0 ; deselect tools
-
@ComedianTF2 can you please give a screen shot or two showing what you mean? do you mean the dialog box on DWC is over written?
-
@T3P3Tony I forgot to note in the original post that this is a Paneldue issue, not a DWC issue.
On the Paneldue (the 7i model in this case), this second message of the XYZ coordinates overwrites the pause message.
On the DWC it does display the correct message, so this is specifically a Paneldue issue it seems. Apologies for not having that in the message.
-
@ComedianTF2 I see, so the request is to have pause not generate the message automatically, or have the paneldue not display that message.
I don't think this will make a difference but have you tried using M226 instead of M25
https://docs.duet3d.com/User_manual/Reference/Gcodes#m226-synchronous-pause -
@T3P3Tony Correct. I will experiment with the M226, to see if that changes the behavior.
Based on the time the message is sent, the XYZ coordinates get sent at the end of the pause.g being executed, so I suspect it will get the same result.
-
@T3P3Tony Using M226 within the filament-runout.g had a weird behavior, the printhead would remain standing still on the bed, not moving on to execute the pause.g at all.
The normal M25 behaviour is much preferred over this, as the printhead should be moved away from the print as quickly as possible in a runout event, to prevent material from oozing out on the print and causing possible issues
I did notice some other small mistakes within the filament-runout.g (using if instead of elif on some parts), but those aren't the cause of the problem, just some oddities that I've fixed on my end now