diff --git a/sunnypilot/selfdrive/controls/lib/dec/dec.py b/sunnypilot/selfdrive/controls/lib/dec/dec.py index dff5cacdf7..04a6cfb3e3 100644 --- a/sunnypilot/selfdrive/controls/lib/dec/dec.py +++ b/sunnypilot/selfdrive/controls/lib/dec/dec.py @@ -98,9 +98,9 @@ class WeightedMovingAverageCalculator: self.data.pop(0) self.data.append(value) - def get_weighted_average(self) -> float | None: + def get_weighted_average(self) -> float: if len(self.data) == 0: - return None + return 0.0 weighted_sum: float = float(np.dot(self.data, self.weights[-len(self.data):])) weight_total: float = float(np.sum(self.weights[-len(self.data):])) return weighted_sum / weight_total @@ -227,7 +227,7 @@ class DynamicExperimentalController: # lead detection with smoothing self._lead_gmac.add_data(lead_one.status) #self._has_lead_filtered = self._lead_gmac.get_weighted_average() > LEAD_PROB - lead_prob = self._lead_gmac.get_weighted_average() or 0 + lead_prob = self._lead_gmac.get_weighted_average() self._has_lead_filtered = self._smoothed_lead_detection(lead_prob) # adaptive slow down detection @@ -271,7 +271,7 @@ class DynamicExperimentalController: if self._has_lead and car_state.vEgo >= 0.01: self._dangerous_ttc_gmac.add_data(lead_one.dRel / car_state.vEgo) - self._has_dangerous_ttc = self._dangerous_ttc_gmac.get_weighted_average() is not None and self._dangerous_ttc_gmac.get_weighted_average() <= DANGEROUS_TTC + self._has_dangerous_ttc = self._dangerous_ttc_gmac.get_weighted_average() != 0.0 and self._dangerous_ttc_gmac.get_weighted_average() <= DANGEROUS_TTC # keep prev values self._has_standstill_prev = self._has_standstill