M6/Tool Change BTN783 causes erratic motion if interrupted

If you think you've found a bug post it here.

M6/Tool Change BTN783 causes erratic motion if interrupted

Postby DanStory » Tue Jan 18, 2022 7:30 am

I have found if I interrupt a tool change (cycle stop) that was initiated by button 783, the next time motion is called, it moves erratically before continuing normally. Additionally cycle stop becomes unresponsive and typically won't stop movement until that line of g-code (be it in a program or submitted via exec.Code[list]) is finished.

Executing M6 via g-code or MDI does not seem to have this effect and behaves as I would expect, stops nearly immediately (decel) and doesn't erratically jerk around on the next call of motion. If I change the button to a custom macro (20000), it also seems to behave normally.

I have recorded this behavior in action:
https://www.youtube.com/watch?v=ge-G9buTXsU

here is the M6/M20000 macro code:
Code: Select all
while(exec.IsMoving()){
    exec.Wait(25);
}

exec.Code("G90 G01 F50 G53 G0 Z0.0");
exec.Code("G90 G01 F50 G53 G0 X-8.0 Y-8.0");

while(exec.IsMoving()){
    exec.Wait(25);
}


Software version: 1.2115
Firmware version: 1.0370
Hardware version: 1.0000
API version: 2.1900
Device type: UC300ETH_UB1
DanStory
 
Posts: 20
Joined: Tue Nov 30, 2021 12:29 am

Re: M6/Tool Change BTN783 causes erratic motion if interrupt

Postby ger21 » Tue Jan 18, 2022 12:14 pm

A workaround is to create your own tool change button, that just runs a line of g-code with M6 in it. That's what I do.
Gerry
UCCNC 2022 Screenset - http://www.thecncwoodworker.com/2022.html
ger21
 
Posts: 2414
Joined: Sat Sep 03, 2016 2:17 am

Re: M6/Tool Change BTN783 causes erratic motion if interrupt

Postby DanStory » Tue Jan 18, 2022 6:53 pm

Yeah, was the initial plan. Just want to make sure it is addressed and gets fixed. I haven't tried yet but makes me wonder if other specialty buttons that execute a macro underneath behave the same. i.e. button 196 for tool length probe that executes M31.
DanStory
 
Posts: 20
Joined: Tue Nov 30, 2021 12:29 am

Re: M6/Tool Change BTN783 causes erratic motion if interrupt

Postby cncdrive » Wed Jan 19, 2022 12:55 pm

Dezsoe, could you please test this issue?
Thanks.
cncdrive
Site Admin
 
Posts: 4292
Joined: Tue Aug 12, 2014 11:17 pm

Re: M6/Tool Change BTN783 causes erratic motion if interrupt

Postby Delco » Wed Jan 19, 2022 10:56 pm

I have had the same erratic issues when interupting a probing cycle.
Delco
 
Posts: 249
Joined: Tue Apr 02, 2019 4:23 am

Re: M6/Tool Change BTN783 causes erratic motion if interrupt

Postby cncdrive » Wed Jan 19, 2022 11:16 pm

The issue is probably in your screenset macroloops.
Could you try to disable all macroloops to see if the issue goes away or not.
If it does then it is something to do with the macroloops, then you will have to contact the creator of the screenset.
cncdrive
Site Admin
 
Posts: 4292
Joined: Tue Aug 12, 2014 11:17 pm

Re: M6/Tool Change BTN783 causes erratic motion if interrupt

Postby Delco » Fri Jan 21, 2022 5:16 am

cncdrive wrote:The issue is probably in your screenset macroloops.
Could you try to disable all macroloops to see if the issue goes away or not.
If it does then it is something to do with the macroloops, then you will have to contact the creator of the screenset.


I have the std screenset on my system with no macroloops active and it has exhibited the same behaviour . I have since changed the probe button to active a macro running M31 and the problem has not reappeared.
Delco
 
Posts: 249
Joined: Tue Apr 02, 2019 4:23 am

Re: M6/Tool Change BTN783 causes erratic motion if interrupt

Postby DanStory » Wed Nov 23, 2022 1:10 pm

Is this addressed for next pending software release?
DanStory
 
Posts: 20
Joined: Tue Nov 30, 2021 12:29 am

Re: M6/Tool Change BTN783 causes erratic motion if interrupt

Postby dezsoe » Wed Nov 23, 2022 2:52 pm

I don't remember what happened in January, so I'll have to test it again. However, these lines are absolute invalid:

Code: Select all
exec.Code("G90 G01 F50 G53 G0 Z0.0");
exec.Code("G90 G01 F50 G53 G0 X-8.0 Y-8.0");

You must not have G0 and G1 in one sentence.

I'll test it when I get to my machine.
dezsoe
 
Posts: 1789
Joined: Sun Mar 12, 2017 4:41 pm
Location: Csörög, Hungary


Return to Report a bug

Who is online

Users browsing this forum: No registered users and 1 guest