Wenn Du die Interrupthandler mit SIGNAL() definiert hast, werden während des Abarbeitens der ISR (Interrupt Service Soutine) alle Interrupts abgeschaltet.

Eine Alternative ist da eventuell INTERRUPT(), bei der bleiben die Interrupts eingeschaltet.

Vielleicht hilft dieser Ansatz weiter, einfach mal ausprobieren