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
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
More
12 Feb 2019 23:04 #126302 by shipmodeller
It's interesting to note that the toolchange3.ngc ALSO has the % front and back
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
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.
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
More
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
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?
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'
Time to create page: 0.084 seconds
Powered by Kunena Forum