| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -181,10 +181,8 @@ class Controls: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    """Compute carEvents from carState""" | 
					 | 
					 | 
					 | 
					    """Compute carEvents from carState""" | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    self.events.clear() | 
					 | 
					 | 
					 | 
					    self.events.clear() | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    self.events.add_from_msg(CS.events) | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    self.events.add_from_msg(self.sm['driverMonitoringState'].events) | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    # Handle startup event | 
					 | 
					 | 
					 | 
					    # Add startup event | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    if self.startup_event is not None: | 
					 | 
					 | 
					 | 
					    if self.startup_event is not None: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      self.events.add(self.startup_event) | 
					 | 
					 | 
					 | 
					      self.events.add(self.startup_event) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      self.startup_event = None | 
					 | 
					 | 
					 | 
					      self.startup_event = None | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -194,6 +192,9 @@ class Controls: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      self.events.add(EventName.controlsInitializing) | 
					 | 
					 | 
					 | 
					      self.events.add(EventName.controlsInitializing) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      return | 
					 | 
					 | 
					 | 
					      return | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    self.events.add_from_msg(CS.events) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    self.events.add_from_msg(self.sm['driverMonitoringState'].events) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    # Create events for battery, temperature, disk space, and memory | 
					 | 
					 | 
					 | 
					    # Create events for battery, temperature, disk space, and memory | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    if EON and (self.sm['peripheralState'].pandaType != PandaType.uno) and \ | 
					 | 
					 | 
					 | 
					    if EON and (self.sm['peripheralState'].pandaType != PandaType.uno) and \ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					       self.sm['deviceState'].batteryPercent < 1 and self.sm['deviceState'].chargingError: | 
					 | 
					 | 
					 | 
					       self.sm['deviceState'].batteryPercent < 1 and self.sm['deviceState'].chargingError: | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |