Context: I need to upgrade the firmware of my STM32F072 using DfuSe and USB FS.
Problem: As the title says, my problem is that when I enter the bootloader mode (from a software way), the STM32F072 is not always detected as "STM32 in DFU Mode" as it should be. The point is that sometimes my device is detected correctly and most of the time I get the message "USB Device Not Recognized" and then I have to reset my device using ST-Link to try again.
I can't figure out why sometimes it works and sometimes it does not as I do not change my code from one try to another. I suspect that this might be due to the fact that I have 1 I2C peripheral and 2 UART peripherals connected to my STM32F072 and thus my bootloader does not always reach the execution of DFU bootloader using USB interrupts according to the bootloader selection mechanism described in figure 12 of AN2606.
Can anyone help me to identify from where this problem comes from and how I can solve it?