Message: "Ignoring task mode change while jogging"
- tpa58
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 2
- Thank you received: 1
			
	
						18 Jan 2024 08:52				#291006
		by tpa58
	
	
		
			
	
	
			
			 		
													
	
				Message: "Ignoring task mode change while jogging" was created by tpa58			
			
				I runing base example sim.gscreen or sim.gscreen.silverdragon. After ON, homing, select axis and jogging mode I try JOG + or -. Axis moving, but every click i get message "Ignoring task mode change while jogging"... LinuxCNC 2.9.2 on VirtualBox.
I would be grateful for any advice.
					I would be grateful for any advice.
Please Log in or Create an account to join the conversation.
- andypugh
- 
				  
- Offline
- Moderator
- 
				  
		Less
		More
		
			
	
		- Posts: 19677
- Thank you received: 4553
			
	
						20 Jan 2024 11:42				#291196
		by andypugh
	
	
		
			
	
	
			 		
													
	
				Replied by andypugh on topic Message: "Ignoring task mode change while jogging"			
			
				This is jogging by mouse-click?
If it is reproducible in the supplied sim configs (and it sounds like that is what you are using) then you should probably raise an error report here:
github.com/LinuxCNC/linuxcnc/issues
					If it is reproducible in the supplied sim configs (and it sounds like that is what you are using) then you should probably raise an error report here:
github.com/LinuxCNC/linuxcnc/issues
		The following user(s) said Thank You: tpa58 	
			Please Log in or Create an account to join the conversation.
- avive
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 16
- Thank you received: 1
			
	
						21 Aug 2024 08:30				#308267
		by avive
	
	
		
			
	
			
			 		
													
	
				Replied by avive on topic Message: "Ignoring task mode change while jogging"			
			
				I confirm, the same problem. It happens exactly when the key is released and gscreen calls
Thus it calls jog while the other is still in progress. If the movement is incremental and the key is not released until the movement is complete, then there is no error. In the source code it looks like this:
I thought the problem was with my custom panel implementation, but the standard one has the same problem. Any ideas on how to fix this?
					self.gscreen.do_key_jog(_X, direction, False)Thus it calls jog while the other is still in progress. If the movement is incremental and the key is not released until the movement is complete, then there is no error. In the source code it looks like this:
int emcTaskSetMode(EMC_TASK_MODE mode)
{
    int retval = 0;
    if (jogging_is_active()) {
        emcOperatorError("Ignoring task mode change while jogging");
        return 0;
    }
...I thought the problem was with my custom panel implementation, but the standard one has the same problem. Any ideas on how to fix this?
Please Log in or Create an account to join the conversation.
- avive
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 16
- Thank you received: 1
			
	
						21 Aug 2024 09:15				#308273
		by avive
	
	
		
			
	
			
			 		
													
	
				Replied by avive on topic Message: "Ignoring task mode change while jogging"			
			
				It's all about this line:
I commented it out and the errors stopped appearing
Is it necessary if we are already in JOG mode?
					self.emc.jogging(1)I commented it out and the errors stopped appearing
    def do_key_jog(self,axis,direction,action):
        if self.data._JOG in self.check_mode(): # jog mode active:
                    if not action: cmd = 0
                    elif direction: cmd = 1
                    else: cmd = -1
                    self.emc.jogging(1) <-- HERE
                    #print(self.data.jog_increments[self.data.current_jogincr_index])
                    if self.data.jog_increments[self.data.current_jogincr_index] == ("continuous"): # continuous jog
                        #print("active axis jog:",axis)
                        self.emc.continuous_jog(axis,cmd)
                    else:
                        #print("jog incremental")
                        if cmd == 0: return # don't want release of button to stop jog
                        self.mdi_control.mdi.emcstat.poll()
                        if self.mdi_control.mdi.emcstat.state != 1: return
                        jogincr = self.data.jog_increments[self.data.current_jogincr_index]
                        distance = self.parse_increment(jogincr)
                        self.emc.incremental_jog(axis,cmd,distance)Is it necessary if we are already in JOG mode?
Please Log in or Create an account to join the conversation.
		Moderators: HansU	
		Time to create page: 0.071 seconds	
 
													