So there I was scratching an itch when I realized the scratch would make for a good Arduino library.
AsyncTimer lets you create a timer that does something when you start it (or nothing if you prefer), then waits a predetermined time before doing something else. While it’s waiting, it doesn’t lock up your Arudino the way the
delay() function does—it just schedules the time-out action to take place some time in the future.
If you’re not the RTFM type, you can just get what you need from the GitHub repository.