if you use set() only once in your app setup code, and use enable() \ disable() to control the event functionality, e.g. implementing a one-shot as per -->
callback() { /* do something later.../; disable(); } armcallback() { / do something now..*/.; enable(); }
you will find no delay happening between something now and something later on the first callback. This is inconsistent behaviour.
Suggest modifying enable() to include the line "lastTime = millis();"