Loading M codes at startup: interp_error. Bug?
- DaBit
- Offline
- Elite Member
- 
				  
		Less
		More
		
			
	
		- Posts: 203
- Thank you received: 19
			
	
						17 Apr 2016 20:49				#73504
		by DaBit
	
	
		
			
	
			
			 		
													
	
				Loading M codes at startup: interp_error. Bug? was created by DaBit			
			
				It is possible to setup default G-codes in the INI file using the [RS274NGC]RS274NGC_STARTUP_CODE entry.
But when I enter M codes there, such as M53 P1 LinuxCNC crashes. Or at least the gmoccapy GUI does; that is just a blank window.
The actual startup code line is:
RS274NGC_STARTUP_CODE = G18 G64P0.01 G90 G92.1 G7 M53P1
This results in:
Problem seems more 'mutliple P words' than the actual M code. Not sure if this is a bug or not.
Is there an easy workaround?
System is stock Debian from the ISO with LinuxCNC 2.7.4
					But when I enter M codes there, such as M53 P1 LinuxCNC crashes. Or at least the gmoccapy GUI does; that is just a blank window.
The actual startup code line is:
RS274NGC_STARTUP_CODE = G18 G64P0.01 G90 G92.1 G7 M53P1
This results in:
dabit@emco8:~/linuxcnc/configs/emco8$ linuxcnc emco8.ini
LINUXCNC - 2.7.4
Machine configuration directory is '/home/dabit/linuxcnc/configs/emco8'
Machine configuration file is 'emco8.ini'
Starting LinuxCNC...
.
Found file(REL): ./emco8.hal
Found file(REL): ./custom.hal
emc/task/emctask.cc 389: interp_error: Multiple p words on one line
Multiple p words on one line
emc/task/emctaskmain.cc 3011: can't initialize interpreterProblem seems more 'mutliple P words' than the actual M code. Not sure if this is a bug or not.
Is there an easy workaround?
System is stock Debian from the ISO with LinuxCNC 2.7.4
Please Log in or Create an account to join the conversation.
- andypugh
- 
				  
- Away
- Moderator
- 
				  
		Less
		More
		
			
	
		- Posts: 19677
- Thank you received: 4554
			
	
						18 Apr 2016 09:58		 -  18 Apr 2016 09:59		#73515
		by andypugh
	
	
		
			
				
The order of words in a G-code block is not considered when parsing the block.
One side-effect of this is that the interpreter has no way to know which P-number to pass to which command.
You may have to make your RS274NGC_STARTUP_CODE into a subroutine call which splits the G64 and M53 onto different lines.
I don't know what happens if you have more than one RS274NGC_STARTUP_CODE line. It might be worth experimenting.
for example.			
					
	
	
			 		
													
	
				Replied by andypugh on topic Loading M codes at startup: interp_error. Bug?			
			Problem seems more 'mutliple P words' than the actual M code. Not sure if this is a bug or not.
Is there an easy workaround?
The order of words in a G-code block is not considered when parsing the block.
One side-effect of this is that the interpreter has no way to know which P-number to pass to which command.
You may have to make your RS274NGC_STARTUP_CODE into a subroutine call which splits the G64 and M53 onto different lines.
I don't know what happens if you have more than one RS274NGC_STARTUP_CODE line. It might be worth experimenting.
RS274NGC_STARTUP_CODE (MSG, this is line 1)
RS274NGC_STARTUP_CODE (MSG, And this is line 2)
		Last edit: 18 Apr 2016 09:59  by andypugh.			
			Please Log in or Create an account to join the conversation.
		Time to create page: 0.052 seconds	
