Question about how sketch code is executed:

johnwasser:

        if (millis() - timeInterrupterWentLow > 5UL*60UL*1000UL) {

Get rid of that 60UL. 5 seconds, not 5 minutes.