Skip to content

Commit 9bee069

Browse files
committed
Do not update during rollover
1 parent 9be3442 commit 9bee069

File tree

1 file changed

+34
-17
lines changed

1 file changed

+34
-17
lines changed

plugwise/nodes/circle.py

Lines changed: 34 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -459,6 +459,7 @@ def _update_energy_today_now(
459459
self._energy_rollover_history_start = True
460460
if day_rollover and not self._energy_rollover_day_finished:
461461
self._energy_rollover_day_start = True
462+
_update = False
462463

463464
# Set counter
464465
if self._energy_rollover_hour_start:
@@ -480,11 +481,11 @@ def _update_energy_today_now(
480481
self._energy_rollover_history_start = False
481482
else:
482483
# Wait for history_rollover, keep current counter
483-
_pulses_today_now = self._energy_pulses_today_now
484+
_update = False
484485
else:
485486
if self._energy_rollover_history_start:
486487
# Wait for hour_rollover, keep current counter
487-
_pulses_today_now = self._energy_pulses_today_now
488+
_update = False
488489
else:
489490
# Regular update
490491
if self._energy_pulses_today_hourly is None:
@@ -494,22 +495,38 @@ def _update_energy_today_now(
494495
self._energy_pulses_today_hourly
495496
+ self._energy_pulses_current_hour
496497
)
497-
_LOGGER.debug(
498-
"_update_energy_today_now for %s | counter = %s, update= %s (%s + %s)",
499-
self.mac,
500-
str(self._energy_pulses_today_now),
501-
str(_pulses_today_now),
502-
str(self._energy_pulses_today_hourly),
503-
str(self._energy_pulses_current_hour),
504-
)
505-
if self._energy_pulses_today_now is None:
506-
self._energy_pulses_today_now = _pulses_today_now
507-
if self._energy_pulses_today_now is not None:
508-
self.do_callback(FEATURE_ENERGY_CONSUMPTION_TODAY["id"])
509-
else:
510-
if self._energy_pulses_today_now != _pulses_today_now:
498+
499+
if _update:
500+
_LOGGER.debug(
501+
"_update_energy_today_now for %s | counter = %s, update= %s (%s + %s)",
502+
self.mac,
503+
str(self._energy_pulses_today_now),
504+
str(_pulses_today_now),
505+
str(self._energy_pulses_today_hourly),
506+
str(self._energy_pulses_current_hour),
507+
)
508+
if self._energy_pulses_today_now is None:
511509
self._energy_pulses_today_now = _pulses_today_now
512-
self.do_callback(FEATURE_ENERGY_CONSUMPTION_TODAY["id"])
510+
if self._energy_pulses_today_now is not None:
511+
self.do_callback(FEATURE_ENERGY_CONSUMPTION_TODAY["id"])
512+
else:
513+
if self._energy_pulses_today_now != _pulses_today_now:
514+
self._energy_pulses_today_now = _pulses_today_now
515+
self.do_callback(FEATURE_ENERGY_CONSUMPTION_TODAY["id"])
516+
else:
517+
_LOGGER.warning(
518+
"_update_energy_today_now for %s | skip update, hour: %s=%s=%s, history: %s=%s=%s, day: %s=%s=%s",
519+
self.mac,
520+
str(hour_rollover),
521+
str(self._energy_rollover_hour_start),
522+
str(self._energy_rollover_hour_finished),
523+
str(history_rollover),
524+
str(self._energy_rollover_history_start),
525+
str(self._energy_rollover_history_finished),
526+
str(day_rollover),
527+
str(self._energy_rollover_day_start),
528+
str(self._energy_rollover_day_finished),
529+
)
513530

514531
def _update_energy_previous_hour(self, prev_hour: datetime):
515532
"""Update energy consumption (pulses) of previous hour"""

0 commit comments

Comments
 (0)