The interrupt priorities are the default priorities assigned by the CMSIS driver.
This makes the SVCall a higher priority as the SysTick.
Since the SVCall is called on every context switch, it can happen the SysTick handler does not get called at all.
This results in timed tasks not executing.
Solution
The SysTick interrupt priority should be higher than the SVCall to ensure that the timing is kept up to date.
Adjust the priorities accordingly.
Discussion
Hoepfully, this does not introduce other bugs. :thinking:
Current Behavior
The interrupt priorities are the default priorities assigned by the CMSIS driver. This makes the SVCall a higher priority as the SysTick. Since the SVCall is called on every context switch, it can happen the SysTick handler does not get called at all. This results in timed tasks not executing.
Solution
The SysTick interrupt priority should be higher than the SVCall to ensure that the timing is kept up to date. Adjust the priorities accordingly.
Discussion
Hoepfully, this does not introduce other bugs. :thinking: