wishlist: interrupt tool change from a trigger
-
@dc42
@gavatron3000 said in wishlist: interrupt tool change from a trigger:Would it be ok to have it be able to be processed at the end of any of the them? Not just tfree?
Is this possible? Or will it be restricted to tfree.g?
Thanks again
-
Sorry to be a pain @dc42 but is this scheduled for a change in the near future? My self and @NicoLab28
and others with would be of benefit for our MMU2 reliabilityRegards
Gav -
RRF can execute GCodes from different sources concurrently. Triggers are a separate source of GCodes. So in principle, a trigger will execute concurrently with whatever else is happening. Only one trigger at a time can be executing, except that the emergency stop trigger can pre-empt any other.
In practice, if different GCode sources try to use the same resource, then one of them will have to wait until the other has finished with that resource. In particular, the motion system is a resource.
What does your trigger do? If it attempts to perform motion, then I suspect it is waiting for the motion resource to become free, which will happen when the tool change has completed.
-
All my trigger does is execute a M291 with an ok button in the message. So Essentially just a pause but this pause doesn't happen until all the change macro's have finished regardless whether the condition for the trigger occurred in free, pre or post.
-
I wrote this in another post
@nicolab28 said in How to extrude until trigger:
M577 seems to doesnt work. Or I don't know how to use it...
I tried M581 E0 T3 S1 C0
To use macro using trigger
It doesn't work too.
M581 doesn't work imediately, need it time to be enabled?In my macro trigger3.g I have put "M117 Trigger3" to have a message...
then I wrote in the gcode sender:
M581 E0 T3 S1 C0
and
G1 E2000 F1000
only after 5-10 seconds, I receive the message "Trigger3", but not from the first trig.To finish with M581, this didn't stop the G1 code.
I did not understand how things were going at the time
And this
https://forum.duet3d.com/topic/8916/m581-m582-m291-what-am-i-doing-wrong/9
I tested to see, this afternoon, it is the test of the trigger with the M291 that does not work in time.
I tested too, M291 in post.g works well -
@dc42 did you see my post above with what my trigger does?
-
We are the forgotten duet ...
I was thinking, why not use triggers as filament sensors? I have not put any yet, but have you tested?
Will this go into tool change macros? -
@gavatron3000 said in wishlist: interrupt tool change from a trigger:
All my trigger does is execute a M291 with an ok button in the message. So Essentially just a pause but this pause doesn't happen until all the change macro's have finished regardless whether the condition for the trigger occurred in free, pre or post.
I think I see what's happeing:
if (sParam >= 2 && !LockMovementAndWaitForStandstill(gb)) { return false; // if it's a blocking message, wait for movement to stop before displaying it }
In the next beta I can try changing it so that it only locks the movement system if the jog buttons are enabled.
-
That would be excellent, very much appreciated. Thanks
-
@nicolab28 said in wishlist: interrupt tool change from a trigger:
We are the forgotten duet ...
I was thinking, why not use triggers as filament sensors? I have not put any yet, but have you tested?
Will this go into tool change macros?I use M591 for normal printing with filament sensor outside of tool changing. I only use the triggers during the tool changes so I can show particular messages depending on where in the tool change an error/state occurred