delay(5) is Arduino's sleep command I assume
No, sleep is something else. "delay" just sits looking at the "millis " clock for the specified amount of time.
Processing does not stop, it just has no time for anything else, except interrupts.
I just tried it, but as I suspected, it doesn't get fired.
Can you post that code please?