Use a weak definition to allow subclasses to override
This wraps every minute or so - but if you only need to track intervals under ~65 seconds could save RAM