- cache ms<->clockcycles conversions - move callback invocation outside of ISR handler - remember last event value