Call external subroutine not working in recent versions of LCNC

More
12 Feb 2019 22:24 #126299 by andypugh
Well, that is a very strange thing to discover,

Unfortunately I can't reproduce the issue here with the checkers12 G-code file. Possibly it is an interaction between that and tolchange3? Can you attach the toolchange3 file and I will try adding that to my test config here. (At the moment _my_ toolchange3 just contains
O<toolchange3< SUB
(DEBUG, That Worked OK) 
O<toolchange3> ENDSUB

Please Log in or Create an account to join the conversation.

More
12 Feb 2019 22:36 - 12 Feb 2019 22:53 #126300 by shipmodeller
Attached toolchange file

100% failure rate with the scenario I indicated

File Attachment:

File Name: toolchange3.ngc
File Size:1 KB


And again.. my revision of Axis code is pre1-4559
Attachments:
Last edit: 12 Feb 2019 22:53 by shipmodeller. Reason: Pushed revision number of Linux just to be sure

Please Log in or Create an account to join the conversation.

More
12 Feb 2019 23:04 #126302 by shipmodeller
It's interesting to note that the toolchange3.ngc ALSO has the % front and back

Please Log in or Create an account to join the conversation.

More
12 Feb 2019 23:25 #126304 by andypugh

shipmodeller wrote: It's interesting to note that the toolchange3.ngc ALSO has the % front and back


Indeed, and removing them makes things work again (with them I _can_ reproduce your issue)

I have a vague memory that % shouldn't be used in an external subroutine file, but I had forgotten it until just now.
I wonder if that is documented anywhere?
The following user(s) said Thank You: shipmodeller

Please Log in or Create an account to join the conversation.

More
12 Feb 2019 23:40 - 12 Feb 2019 23:57 #126305 by shipmodeller
Well, going to the documentation, they do not show a % in a called file. BUT, they do show a m2 ending. Elsewhere, they do say that a file must contain a Leading % and and ending % OR a terminating M2. Since the docs don't specifically forbid using a file structure similar to the primary files, I would think that the % in the subroutine file should be treated as a valid condition. Unless I missed the doc that forbade the leading and trailing % in a subroutine, I would think a subroutine file would / should be able to follow the same rules.. I believe this all worked in 2.7.3, and I didn't have the issue till 2.8 came out, but I do not want to go back to try it. I still think it is a "quirk defect" and should be resolved by code, or by a documentation statement.

Thank you for your patience and assistance.

Oh, and since the Post processor is generating the % front and back, then any subroutines I generate, and I do have a few, are going to have the % front and back. Yes, I could change the post processor.. but ...... Consistency in format is always a great coding mantra.
Last edit: 12 Feb 2019 23:57 by shipmodeller. Reason: Post processor comments.

Please Log in or Create an account to join the conversation.

More
13 Feb 2019 00:24 #126315 by andypugh
I can confirm that the problem does not seem to exist with 2.7.14
(I just tried it)
The following user(s) said Thank You: shipmodeller

Please Log in or Create an account to join the conversation.

More
13 Feb 2019 11:56 #126334 by andypugh

Please Log in or Create an account to join the conversation.

More
13 Feb 2019 16:06 - 13 Feb 2019 16:06 #126349 by shipmodeller
May I then assume that you will enter a defect on this topic into the LinuxCNC stream?

Also, I started to go through the sample GCode that is supplied in the sample directory, and a few of them will not load correctly anymore. If I have time today, I will make a list. I thought LinuxCNC had regression test cases? I would create a separate topic for that issue.
Last edit: 13 Feb 2019 16:06 by shipmodeller. Reason: Add information

Please Log in or Create an account to join the conversation.

More
13 Feb 2019 16:12 #126350 by andypugh

shipmodeller wrote: May I then assume that you will enter a defect on this topic into the LinuxCNC stream?

I am not sure what you mean. I have submitted a bug report, how does what you suggest differ?


Also, I started to go through the sample GCode that is supplied in the sample directory, and a few of them will not load correctly anymore. If I have time today, I will make a list. I thought LinuxCNC had regression test cases? I would create a separate topic for that issue.

Some need to be touched-off to work properly. Some may exceed the bounds of your machine.
Which ones don't work, and what is the error message?

Please Log in or Create an account to join the conversation.

More
13 Feb 2019 18:52 #126371 by shipmodeller
No, the bug report ( defect ) is what I assumed would be done. I am just going to the shop to go through the samples. The few I checked out yesterday said something like "Unexpected character b in around line 26 ... ) I will be detailed today.
Thank you'

Please Log in or Create an account to join the conversation.

Time to create page: 0.115 seconds
Powered by Kunena Forum