diff --git a/solar_ble.py b/solar_ble.py index 5d6707d..ee27ba2 100755 --- a/solar_ble.py +++ b/solar_ble.py @@ -307,8 +307,13 @@ class Periodical: now = time.time() if (now - self.prev) >= self.interval: - self.prev += self.interval + skipped, overshoot = divmod(now - self.prev, self.interval) + skipped -= 1 + if skipped: + log("Skipped:", skipped, overshoot, now - self.prev, self.interval) + self.prev = now - overshoot return True + return False