cancel
Showing results for 
Search instead for 
Did you mean: 

USB Bootloader is not starting while application usb is working

MKoel
Associate II

I have a custom board with STM32L4R MCU (STM32L4R9ZGJ6). While the application software and its USB interface is running I can't enter the USB bootloader. I checked AN2606 but found no issue. STM32L4R takes its internal clock for USB so it seems easy. 3.3V is connected to VBUS pin PA9 and when I connect pin BOOT0 to high the application is no longer starting but the USB bootloader does not, too. In my opinion it seems that an other bootloader (UART, I2C, SPI) is entered but I don't have any active peripheral. For power saving I can turn off all peripheral by a power switch and even disabling this power does not help.

Michael

1 ACCEPTED SOLUTION

Accepted Solutions
igotit
Associate II

May be your MCU's bootloader version is 9.2.

AN2606 says that bootloader version 9.2 have a trouble with system reset repeatably so can not be used for bootloader.

I had a same trouble with you. there is no solution via my Q&A https://community.st.com/s/question/0D50X0000BTbseCSQR/stm32l4r5vg-bootloader-version-92-not-working-only-system-reset-repeatably . The only solution is exchange the your MCU to 2Mbyte flash.

How to check the bootloader version : https://igotit.tistory.com/2333 you can translate to English or other languages with embedded google translation combo box on top of the page.

View solution in original post

5 REPLIES 5

How do you go to the bootloader, direct jump from application, or software reset, or pulling NRST low?

Do you somehow deactivate/reset the OTG module before you go to the bootloader?

Can you repeatedly enter the USB bootloader through some other way, e.g. power off/on?

JW

I want enter the bootloader at power on by pulling BOOT0 high. I have the ​STM32L4R evalboard which easily enters USB bootloader by doing this.

I also tried cycling RESET low or taking a new - never programmed - custom board which should enter the bootloader even when BOOT0 is low, but neither helps.​

Well, that much sounds like what you've said, some of the other bootloaders being entered inadvertently.

Could you try to enter some of those other bootloaders *deliberately*?

I assume you've checked the requirements of AN2606, eg.

Note: VDDUSB IO must be connected to 3.3V for USB to be operational.

Did you rule out hardware issues, especially since you are using a BGA package?

JW

igotit
Associate II

May be your MCU's bootloader version is 9.2.

AN2606 says that bootloader version 9.2 have a trouble with system reset repeatably so can not be used for bootloader.

I had a same trouble with you. there is no solution via my Q&A https://community.st.com/s/question/0D50X0000BTbseCSQR/stm32l4r5vg-bootloader-version-92-not-working-only-system-reset-repeatably . The only solution is exchange the your MCU to 2Mbyte flash.

How to check the bootloader version : https://igotit.tistory.com/2333 you can translate to English or other languages with embedded google translation combo box on top of the page.

Hi,

thank you very much. I had an older version of AN2606, not showing the BL problem.Indeed, the problem was added in Rev39, released on September. It is very disappointing that ST has not replied to my question, not even through an Arrow inquiry, as they should have known the bug before, of course.

One thing is still strange: I have MCUs with date code 2017, exactly same type, Bootloade read out shows also V9.2 but they are working. May be they sold working 2MB types as 1MB device.