From 92da7566d8ef21378cf143de84865e6ca3938c4c Mon Sep 17 00:00:00 2001 From: InTheDaylight14 <67400055+InTheDaylight14@users.noreply.github.com> Date: Sat, 6 May 2023 14:01:07 -0400 Subject: [PATCH] fix: Update arrival with earlier charge complete and arrival times (#575) closes #565 --- custom_components/tesla_custom/sensor.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/custom_components/tesla_custom/sensor.py b/custom_components/tesla_custom/sensor.py index 274a0550..bb530e52 100644 --- a/custom_components/tesla_custom/sensor.py +++ b/custom_components/tesla_custom/sensor.py @@ -591,7 +591,10 @@ def native_value(self) -> Optional[datetime]: + timedelta(hours=charge_hours) - (dt.utcnow() - self._last_update_time) ) - if self._value is None or (new_value - self._value).total_seconds() >= 60: + if ( + self._value is None + or abs((new_value - self._value).total_seconds()) >= 60 + ): self._value = new_value if self._car.charging_state in ["Charging", "Complete"]: return self._value @@ -686,7 +689,7 @@ def native_value(self) -> Optional[datetime]: ) if ( self._datetime_value is None - or (new_value - self._datetime_value).total_seconds() >= 60 + or abs((new_value - self._datetime_value).total_seconds()) >= 60 ): self._datetime_value = new_value return self._datetime_value