| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -494,12 +494,15 @@ class CarInterface(object): | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        events.append(create_event('commIssue', [ET.NO_ENTRY, ET.IMMEDIATE_DISABLE])) | 
					 | 
					 | 
					 | 
					        events.append(create_event('commIssue', [ET.NO_ENTRY, ET.IMMEDIATE_DISABLE])) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    else: | 
					 | 
					 | 
					 | 
					    else: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      self.can_invalid_count = 0 | 
					 | 
					 | 
					 | 
					      self.can_invalid_count = 0 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    if not self.CS.cam_can_valid and self.CP.enableCamera: | 
					 | 
					 | 
					 | 
					    if not self.CS.cam_can_valid and self.CP.enableCamera: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      self.cam_can_invalid_count += 1 | 
					 | 
					 | 
					 | 
					      self.cam_can_invalid_count += 1 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      if self.cam_can_invalid_count >= 5 and self.CS.CP.carFingerprint not in HONDA_BOSCH: | 
					 | 
					 | 
					 | 
					      # wait 1.0s before throwing the alert to avoid it popping when you turn off the car | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					      if self.cam_can_invalid_count >= 100 and self.CS.CP.carFingerprint not in HONDA_BOSCH: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        events.append(create_event('invalidGiraffeHonda', [ET.NO_ENTRY, ET.IMMEDIATE_DISABLE, ET.PERMANENT])) | 
					 | 
					 | 
					 | 
					        events.append(create_event('invalidGiraffeHonda', [ET.NO_ENTRY, ET.IMMEDIATE_DISABLE, ET.PERMANENT])) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    else: | 
					 | 
					 | 
					 | 
					    else: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      self.cam_can_invalid_count = 0 | 
					 | 
					 | 
					 | 
					      self.cam_can_invalid_count = 0 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    if self.CS.steer_error: | 
					 | 
					 | 
					 | 
					    if self.CS.steer_error: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      events.append(create_event('steerUnavailable', [ET.NO_ENTRY, ET.IMMEDIATE_DISABLE, ET.PERMANENT])) | 
					 | 
					 | 
					 | 
					      events.append(create_event('steerUnavailable', [ET.NO_ENTRY, ET.IMMEDIATE_DISABLE, ET.PERMANENT])) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    elif self.CS.steer_warning: | 
					 | 
					 | 
					 | 
					    elif self.CS.steer_warning: | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |