|
|
|
@ -280,8 +280,9 @@ class Controls: |
|
|
|
|
|
|
|
|
|
# Alert if fan isn't spinning for 5 seconds |
|
|
|
|
if self.sm['peripheralState'].pandaType != log.PandaState.PandaType.unknown: |
|
|
|
|
if self.sm['peripheralState'].fanSpeedRpm == 0 and self.sm['deviceState'].fanSpeedPercentDesired > 50: |
|
|
|
|
if (self.sm.frame - self.last_functional_fan_frame) * DT_CTRL > 5.0: |
|
|
|
|
if self.sm['peripheralState'].fanSpeedRpm < 500 and self.sm['deviceState'].fanSpeedPercentDesired > 50: |
|
|
|
|
# allow enough time for the fan controller in the panda to recover from stalls |
|
|
|
|
if (self.sm.frame - self.last_functional_fan_frame) * DT_CTRL > 15.0: |
|
|
|
|
self.events.add(EventName.fanMalfunction) |
|
|
|
|
else: |
|
|
|
|
self.last_functional_fan_frame = self.sm.frame |
|
|
|
|