Skip to main content
Senior
Feb 8, 2026 7:35 PM UTC
Solved

HAL_Delay() not working - Why is SysTick_Handler never called?

Hi,

I am using the application core of the STM32WB55VGY6 (not the radio core). I created a CubeMX project and added a simple HAL_GPIO_TogglePin() call. Literally just 2 lines of code in the entire project.

When I use a for loop as a delay, the code works as expected. However, when I use HAL_Delay(), it does not.

For some reason the SysTick_Handler() is never called... 

I’ve attached the full project, including the .ioc file. The application code itself is minimal (only two lines).

From the configuration:

  • The timebase source is set to SysTick

  • Interrupts are enabled

  • The SysTick_Handler() is generated, but it is never triggered

Has anyone encountered this on the STM32WB application core, or have any suggestions on what might be missing or misconfigured?

Thanks.

 

RickoBest answer
Senior
Feb 9, 2026 1:30 AM UTC

Solved.

For those who might need this, for some reason on this part CubeMX sets the Systick priority to15 instead of 0.

Now it works.

1 reply

RickoAuthorBest answer
Senior
Feb 9, 2026 1:30 AM UTC

Solved.

For those who might need this, for some reason on this part CubeMX sets the Systick priority to15 instead of 0.

Now it works.