2024-10-31 02:10 AM
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.
2024-10-31 02:35 AM
oh, I see, the main program gets executed first, unless I move the jumper!
Are there other small bootloaders ?