I think I've mentioned the calibrated sleep library before. Not worthwhile for most people, but I wanted to provide a link somewhere here just in case. https://github.com/n0m1/Sleep_n0m1 It has the normal power saving modes (like the rocketscream library currently used by MySensors), but also includes: Function: setCalibrationInterval Description: the WDT needs to be calibrated against timer 0 periodically to keep the sleep time accurate. Default calibration occurs every 100 wake/sleep cycles. recalibrate too often will waste power and too rarely will make the sleep time inaccurate. Parameters: (int) set the # of wake/sleep cycles between calibrations Since the WDT uses a less accurate (and independent) RC oscillator, while Timer 0 is based on a crystal (UNO) or ceramic resonator (Arduino Pro Micro). Hopefully this will show up on a search if anybody's looking for it. Just in case. It would be interesting to see how close one could come to maintaining a timestamp for sensor events, with occassional correction from the gateway.