|
|
@ -170,6 +170,7 @@ class Controls: |
|
|
|
self.events_prev = [] |
|
|
|
self.events_prev = [] |
|
|
|
self.current_alert_types = [ET.PERMANENT] |
|
|
|
self.current_alert_types = [ET.PERMANENT] |
|
|
|
self.logged_comm_issue = None |
|
|
|
self.logged_comm_issue = None |
|
|
|
|
|
|
|
self.not_running_prev = None |
|
|
|
self.last_actuators = car.CarControl.Actuators.new_message() |
|
|
|
self.last_actuators = car.CarControl.Actuators.new_message() |
|
|
|
self.steer_limited = False |
|
|
|
self.steer_limited = False |
|
|
|
self.desired_curvature = 0.0 |
|
|
|
self.desired_curvature = 0.0 |
|
|
@ -330,6 +331,9 @@ class Controls: |
|
|
|
not_running = {p.name for p in self.sm['managerState'].processes if not p.running and p.shouldBeRunning} |
|
|
|
not_running = {p.name for p in self.sm['managerState'].processes if not p.running and p.shouldBeRunning} |
|
|
|
if self.sm.rcv_frame['managerState'] and (not_running - IGNORE_PROCESSES): |
|
|
|
if self.sm.rcv_frame['managerState'] and (not_running - IGNORE_PROCESSES): |
|
|
|
self.events.add(EventName.processNotRunning) |
|
|
|
self.events.add(EventName.processNotRunning) |
|
|
|
|
|
|
|
if not_running != self.not_running_prev: |
|
|
|
|
|
|
|
cloudlog.event("process_not_running", not_running=not_running, error=True) |
|
|
|
|
|
|
|
self.not_running_prev = not_running |
|
|
|
else: |
|
|
|
else: |
|
|
|
if not SIMULATION and not self.rk.lagging: |
|
|
|
if not SIMULATION and not self.rk.lagging: |
|
|
|
if not self.sm.all_alive(self.camera_packets): |
|
|
|
if not self.sm.all_alive(self.camera_packets): |
|
|
|