Hier gibt es eine grundlegende Problematik in der ganzen Software, für diese Art von zyklischem Code.
Es wäre für dich viiieeel einfacher, wenn du diese Funktion auf einen zweiten Controller auslagern würdest, so wie ich das hier mache:
Das erspart dir vieles und du kannst das Blaulicht unabhängig verwenden.
Du müsstest nur einen Pin am TonUINO verwenden, der das Blaulicht aktiviert oder deaktiviert.
Dann läuft die Animation unabhängig, egal in welcher Situation.