cancel
Showing results for 
Search instead for 
Did you mean: 

One-time HID bootloader? ("destroying" the STM32F103's ability to load bootloader again) ?

pilot
Associate

In order to make it easier for others to upload software, I decided to add the HID Bootloader:

https://github.com/Serasidis/STM32_HID_Bootloader

 

it is small and effiecient

 

uploaded this to Bluepill (both jumpers in "0" position)

 

$ ./STM32_Programmer.sh -c port=SWD -w ~/Downloads/stm32_HID\ bootloader2.2/F103/low_and_medium_density/hid_generic_pc13.bin 0x08000000
      -------------------------------------------------------------------
                        STM32CubeProgrammer v2.5.0                  
      -------------------------------------------------------------------

ST-LINK SN  : 7287090032124647524B4E00
ST-LINK FW  : V2J29S7
Board       : --
Voltage     : 3.18V
SWD freq    : 4000 KHz
Connect mode: Normal
Reset mode  : Software reset
Device ID   : 0x410
Revision ID : Rev X
Device name : STM32F101/F102/F103 Medium-density
Flash size  : 64 KBytes
Device type : MCU
Device CPU  : Cortex-M3



Memory Programming ...
Opening and parsing file: hid_generic_pc13.bin
  File          : hid_generic_pc13.bin
  Size          : 1976 Bytes
  Address       : 0x08000000 


Erasing memory corresponding to segment 0:
Erasing internal memory sectors [0 1]
Download in Progress:
[==================================================] 100% 

File download complete
Time elapsed during download operation: 00:00:00.181

 

 

 

In order to test it, I uploaded "blink" using Arduino method "HID bootloader 2.2"

it worked, the device started blinking - tried again, but was unable, no matter what I did the HID device 1209:BEBA does not appear anymore. 
Re-uploaded the bootloader using SWD - but this time it does not work at all.

I repeated this two times, this process does somehow mess up the device.

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
pilot
Associate

oh, I see, the main program gets executed first, unless I move the jumper!

 

Are there other small bootloaders ?

View solution in original post

1 REPLY 1
pilot
Associate

oh, I see, the main program gets executed first, unless I move the jumper!

 

Are there other small bootloaders ?