I am working with the Discovery development board STM32F407 microcontroller and building using Eclipse/GNU. My project has a bootloader and an application. After my bootloader has finished programming the application, I check the FLASH_SR (address 0x4002 3C0C) word and it's all zeros, meaning no errors. After that execution continues in the newly programmed application and when I enable interrupts on UART4 using __HAL_UART_ENABLE_IT(&huart4, UART_IT_RXNE) the PGSERR-bit gets set for some mysterious reason and the next time I try to reprogram the flash it fails (unless I recycle power before attempting to re-program). Can someone please help me figure out why this is happening?