Page 1 of 1

what's wrong with this M3 macro?

PostPosted: Thu Sep 08, 2022 4:15 pm
by girogiri
Hi All,
lately none of my questions get a single reply... But I try again ;-)
This is a stripped down version of our M3 macro:
Code: Select all
bool wasCycleRunning = exec.GetLED(54);
   
if (wasCycleRunning){
        exec.Stop();
        while (exec.IsMoving()){}
        exec.Codesync(""); // Clear Ismacrostopped
}

// calling an empty macro
exec.Callbutton(21111);
while (exec.IsMoving()){}
exec.AddStatusmessage("out of M21111");
      
exec.DospinCW();
Thread.Sleep(500);
while(AS3.GetLED(21)){}
exec.AddStatusmessage("Spindle on");

if (wasCycleRunning){
   exec.AddStatusmessage("Restart job");
   exec.Callbutton(128);
}

#Events

the problem is that
Code: Select all
exec.Callbutton(128);

is not executed if there is a previous call to an external macro, in my case
Code: Select all
exec.Callbutton(21111);

Can somebody explan what am I doing wrong?
thanks
Giorgio

Re: what's wrong with this M3 macro?

PostPosted: Fri Sep 09, 2022 5:17 pm
by girogiri
No one has an explanation?
really?

Re: what's wrong with this M3 macro?

PostPosted: Mon Sep 12, 2022 12:13 pm
by A_Camera
girogiri wrote:No one has an explanation?
really?

Perhaps no one has the free time for a deeper analysis...

Re: what's wrong with this M3 macro?

PostPosted: Mon Sep 12, 2022 12:39 pm
by girogiri
Hello A_Camera,
isn't customer support supposed to do this?
UCCNC is a great hardware/software product, it's a pity that there is no support for professional users.
No reply on the forum, no reply to emails, what should I say to my customers when a CNC machine doesn't have the expected behaviour due to undocumented software functions?
In any case thanks for replying ;-)

cheers

Re: what's wrong with this M3 macro?

PostPosted: Mon Sep 12, 2022 8:45 pm
by dezsoe
To answer your question: it's a bug. UCCNC has to know if a macro is running and the cycle start button cannot be executed any time. When you call a second (or any) macro from a macro then flag gets a wrong value and you cannot press the cycle start any more from the original macro. (Calling a button 20000..21999 is the same as exec.Code("Mxxx") from this point of view.) Also, you cannot press buttons while the cycle is running: that's why I wrote the original version of your macro to first stop the cycle, do the Callbuttons and then restart the cycle. It can be a workaround to restart the cycle before the Callbutton(21111) and then call M21111 via exec.Code instead of Callbutton. I didn't test it, but it should work. (Of course, depending on what is in M21111.)

(The support is not limited to one customer. There are many mails to be answered and that takes some (sometimes a lot of) time. And the weekend is weekend here too.)

Re: what's wrong with this M3 macro?

PostPosted: Tue Sep 13, 2022 10:18 am
by A_Camera
girogiri wrote:Hello A_Camera,
isn't customer support supposed to do this?
UCCNC is a great hardware/software product, it's a pity that there is no support for professional users.
No reply on the forum, no reply to emails, what should I say to my customers when a CNC machine doesn't have the expected behaviour due to undocumented software functions?
In any case thanks for replying ;-)

cheers

I think it is too much to ask that they should give you immediate support 24/7 365 days per year free of charge.

Re: what's wrong with this M3 macro?

PostPosted: Tue Sep 13, 2022 12:40 pm
by girogiri
A_Camera wrote:I think it is too much to ask that they should give you immediate support 24/7 365 days per year free of charge.


me too......