You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using the Nucleo-F767ZI board, or all other STMF767 boards as I can see, will fail to boot into a STM32Duino firmware because the SystemClock_Config() for those boards triggers an assert().
Specifically, this code does not initialize the RCC_OscInitStruct.PLL.PLLR value to a legal value
Describe the bug
When using the Nucleo-F767ZI board, or all other STMF767 boards as I can see, will fail to boot into a STM32Duino firmware because the
SystemClock_Config()
for those boards triggers anassert()
.Specifically, this code does not initialize the
RCC_OscInitStruct.PLL.PLLR
value to a legal valueArduino_Core_STM32/variants/STM32F7xx/F765Z(G-I)T_F767Z(G-I)T_F777ZIT/variant_NUCLEO_F767ZI.cpp
Lines 206 to 218 in 8e173d6
Due to
RCC_OscInitTypeDef RCC_OscInitStruct = {};
it will have value 0.But then this assert will trigger
Arduino_Core_STM32/system/Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_rcc.c
Lines 600 to 602 in 8e173d6
Because A) For that chip,
RCC_PLLCFGR_PLLR
is defined and B) "0" is not valid forPLLR
Arduino_Core_STM32/system/Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_rcc_ex.h
Lines 3504 to 3505 in 8e173d6
To Reproduce
Blinky code on Nucleo F767 does not work. Chip crashes on startup.
Steps to reproduce the behavior:
Expected behavior
Clock init code should not crash chip.
Screenshots
Call stack of crash
Desktop (please complete the following information):
Board (please complete the following information):
Additional context
Originally reported via PlatformIO forum.
The text was updated successfully, but these errors were encountered: