Serasidis / STM32_HID_Bootloader

Driverless USB HID bootloader and flashing tool for STM32F10X devices
418 stars 150 forks source link

USB device not regonised, no PORT available, link to patch is broken #19

Open joej970 opened 5 years ago

joej970 commented 5 years ago

After flashing the bootloader I cannot execute step where the patch has to be applied because the link is broken. Furthermore when I connect blue pill directly (not via FTDI dongle), computer cannot recognise the device and there are no available ports in Arduino IDE under tools > port. Arduino IDE return error: Error - [1209:BEBA] device is not found I am using Arduino_Core_STM32

EDIT: I forgot to change jumper back to 0 and bootloader got deleted when I disconnected FTDI. BUT still, after flashing HID bootloader, windows detects the device as HID USB and I can upload a Blink sketch, though tools > port is still grayed out. But immediately after uploading, Windows notifies me that it cannot recognise the device and blue pill seems to have crashed because led stops blinking. No further uploads are possible until bootloader is re-flashed.

khyarul commented 4 years ago

it also happens to me, after first upload, my computer can't recognise the HID device until I flash again the bootloader and so on, I'm using maple mini

joej970 commented 4 years ago

Try setting USB support to CDC (generic serial supersede USART) before uploading first sketch after fresh flashing.

toogooda commented 4 years ago

it also happens to me, after first upload, my computer can't recognise the HID device until I flash again the bootloader and so on, I'm using maple mini

Same issue here, requires reflash of bootloader after every use

joej970 commented 4 years ago

It happened to me when I was using MPU 9250 DMP library that crashed STM32F1 because code started to execute too fast. My fix was to add delay(5000) before calling init() function of my library. The cause was probably that external sensor (MPU 9250) was not ready quick enough and this hanged STM32F1.

Now I use HID bootloader 2.2 (and delay) and it works fine for most of the time (I still have to unplug and plug stm32f1 some times, but I do not have to reflash it) . I have USB support set to CDC.

fpistm commented 4 years ago

Hi, Just a quick note, to ensure Serial is well initialized before use them add: while(!Serial); after Serial.begin();. See: https://www.arduino.cc/reference/en/language/functions/communication/serial/ifserial/