Concept Flow - Timer callback execution context
Timer expires
Timer ISR triggers
Timer callback queued to Timer Service Task
Timer Service Task runs callback
Callback executes in Timer Service Task context
Callback completes
Timer Service Task waits for next event
When a FreeRTOS timer expires, its callback is not run in interrupt context but deferred to the Timer Service Task, which executes the callback in its own task context.
