Mögliche Ursachen:
- Ein Task ist gecrasht oder blockiert, erreicht die Barrier nie → die anderen warten ewig.
- Fehlender Mutexschutz beim Zählen → Race Condition →
barrier_count
erreicht nie das Ziel. - Zu früh gesetzter Freigabemechanismus, bevor alle Tasks angekommen sind.
- Nicht symmetrische Anzahl von xSemaphoreGive / Take → Deadlock.
Ein Debug-Tipp: In FreeRTOS den Zustand aller Tasks regelmäßig loggen oder per Trace-Tool beobachten.