Hi,
In a product we are selling, we use an STM32F7 MCU that has both an LSE and HSE crystal. The type of LSE crystal that we have been using has been getting harder to find, but I realized that we don’t really need it for our application, so I want to stop populating it on the board so we don’t have to find it, and also save a little bit of money. The software for the MCU has a managed bootloader and an application. The problem arises with the bootloader, because the way it is now is that both the bootloader and application have the LSE available flag set to 1. To enable not populating the LSE, we would have to set that flag to 0 in both the bootloader and application. For programming new boards, that is fine because they are programmed at the same time. But when you try to use a bootloader and application that don’t have the same LSE available configuration, as would be the case with an update issued to a customer, the application crashes with the error “HAL_RCC_OscConfig ERROR”. My question now would be is there any way to stop a crash when a bootloader and application have differing clock settings like this? Or would we have to continue to populate the LSE crystal to maintain complete code compatibility? Thanks!