2024-03-04 01:07 PM
Hello Community,
I'm currently facing an issue with entering the USART bootloader mode on my STM32U5 development kit (STM32U5A9JDK). Despite following the standard procedure, the device refuses to enter bootloader mode, and I'm hoping someone here might have insights or experience to share that could help resolve the issue.
Here's a breakdown of the situation:
I'm wondering if there's a nuance I'm missing here, especially regarding the RS232 transceiver. Has anyone successfully entered the USART bootloader mode under similar conditions? Could there be other factors at play that might prevent the device from entering bootloader mode even when the voltage levels are appropriate and the BOOT pin is correctly set?
Any advice or suggestions would be greatly appreciated.
Note : I've managed to enter usart bootloader mode using the stlink ,but not using my own usb bridge .
Thanks in advance for your help!
Solved! Go to Solution.
2024-03-04 02:15 PM - edited 2024-03-04 02:16 PM
> The BOOT pin configuration is set to '0' as required for USART bootloading.
Can you clarify this a bit? BOOT0 should be pulled UP during reset in order to start the bootloader.
Are you connecting your UART to pins that are supported by the bootloader in AN2606? Which pins? Are they being used by something else on the board?
You shouldn't need a transceiver in general. Most USB to UART adapters will output the right voltage level.
Chatter on other bootloader-support interfaces (such as USB) will cause the bootloader to jump there if they happen first and ignore your UART signals. Probably isn't happening, but it could be.
2024-03-04 02:15 PM - edited 2024-03-04 02:16 PM
> The BOOT pin configuration is set to '0' as required for USART bootloading.
Can you clarify this a bit? BOOT0 should be pulled UP during reset in order to start the bootloader.
Are you connecting your UART to pins that are supported by the bootloader in AN2606? Which pins? Are they being used by something else on the board?
You shouldn't need a transceiver in general. Most USB to UART adapters will output the right voltage level.
Chatter on other bootloader-support interfaces (such as USB) will cause the bootloader to jump there if they happen first and ignore your UART signals. Probably isn't happening, but it could be.
2024-03-05 04:22 AM
Hi , i meant that I'm pulling the the BOOT0 pin high not low sorry , I've written a simple code to blink on of the leds in the board but i noticed that at every time i reset the board , it jumps to main code and starts blinking the led which i believe to be the reason why i can't use the usart bootloader yet , is there any other pins that i should check ?
2024-03-05 06:06 AM
I've managed to enter to bootloader moder by adding an external pull up on the boot0 pin , i found the switch on the board to be damaged thanks for your help .
2024-03-05 06:11 AM - edited 2024-03-05 06:11 AM
You should check option bytes in STM32CubeProgrammer to ensure it's actually reading the BOOT0 pin and isn't hardwired to always boot from flash.
If it's running code in the main flash, it's not in the bootloader and you won't be able to connect.
The full list of conditions to get the chip to jump to the bootloader is detailed in AN2606.