diff --git a/ESPGeiger/src/Counter/Counter.cpp b/ESPGeiger/src/Counter/Counter.cpp index 90099b7..19c8400 100644 --- a/ESPGeiger/src/Counter/Counter.cpp +++ b/ESPGeiger/src/Counter/Counter.cpp @@ -45,7 +45,12 @@ void Counter::secondticker() { unsigned long int secidx = (millis() / 1000) % 60; //Log::console(PSTR("Counter: Events - %d - %d"), eventCounter, secidx); geigerTicks.add(eventCounter); + unsigned long previous_total_clicks = total_clicks; total_clicks += eventCounter; + if (previous_total_clicks > total_clicks) { + total_clicks = eventCounter; + total_clicks_rollover++; + } cpm_history.push(get_cpm()); diff --git a/ESPGeiger/src/Counter/Counter.h b/ESPGeiger/src/Counter/Counter.h index 9df6c57..f38a9a8 100644 --- a/ESPGeiger/src/Counter/Counter.h +++ b/ESPGeiger/src/Counter/Counter.h @@ -105,6 +105,7 @@ class Counter { _bool_cpm_alert = false; } unsigned long clicks_hour = 0; + unsigned long total_clicks_rollover = 0; unsigned long total_clicks = 0; unsigned long clicks_today = 0; unsigned long clicks_yesterday = 0;