All Projects → DAlexis → stm32-usb-bootloader

DAlexis / stm32-usb-bootloader

Licence: BSD-2-Clause license
This repository contains bootloader for stm32f1xx microcontrollers. It works for stm32f103ret6, but you can simply adopt it to any MCU supporting STM32 HAL library with USB and SD-card

Programming Languages

c
50402 projects - #5 most used programming language
C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to stm32-usb-bootloader

Sboot stm32
Secure USB DFU1.1 bootloader for STM32
Stars: ✭ 181 (+352.5%)
Mutual labels:  usb, stm32, bootloader
DfuBootloader
STM32 USB device bootloader using DFU class interface
Stars: ✭ 79 (+97.5%)
Mutual labels:  usb, stm32, bootloader
STM32 XPD
STM32 eXtensible Peripheral Drivers
Stars: ✭ 38 (-5%)
Mutual labels:  usb, stm32
Teenyusb
Lightweight USB device and host stack for STM32 and other MCUs.
Stars: ✭ 287 (+617.5%)
Mutual labels:  usb, stm32
Stm32f103 Usb Cdc Cmsis
STM32F103 USB CDC CMSIS
Stars: ✭ 40 (+0%)
Mutual labels:  usb, stm32
PIC16F1-USB-DFU-Bootloader
DFU protocol variant of Matt Sarnoff's PIC16F1-USB-Bootloader
Stars: ✭ 39 (-2.5%)
Mutual labels:  usb, bootloader
kikpad
KiKPad : the Midiplus SmartPad reinvented !
Stars: ✭ 31 (-22.5%)
Mutual labels:  usb, stm32
Hoodloader2
16u2 Bootloader to reprogram 16u2 + 328/2560 with Arduino IDE
Stars: ✭ 509 (+1172.5%)
Mutual labels:  usb, bootloader
Modbus-STM32-HAL-FreeRTOS
Modbus TCP and RTU, Master and Slave for STM32 using Cube HAL and FreeRTOS
Stars: ✭ 272 (+580%)
Mutual labels:  usb, stm32
Micronucleus
ATTiny usb bootloader with a strong emphasis on bootloader compactness.
Stars: ✭ 1,240 (+3000%)
Mutual labels:  usb, bootloader
Usbdevice
Highly flexible Composite USB Device Library
Stars: ✭ 144 (+260%)
Mutual labels:  usb, stm32
STM32 USB CH341
STM32 USB simulates CH341.
Stars: ✭ 52 (+30%)
Mutual labels:  usb, stm32
ISASTM
STM32-based ISA-over-USB-adapter
Stars: ✭ 86 (+115%)
Mutual labels:  usb, stm32
stm32 tiny monitor
A tiny external monitor for PC using STM32 and ST7789. Connects to PC over USB and displays the captured screen on ST7789 (240x240) display.
Stars: ✭ 61 (+52.5%)
Mutual labels:  usb, stm32
stm32 i2c to usb hid multitouch
i2c to usb hid multi touch with stm32
Stars: ✭ 55 (+37.5%)
Mutual labels:  usb, stm32
Libusb stm32
Lightweight USB device Stack for STM32 microcontrollers
Stars: ✭ 372 (+830%)
Mutual labels:  usb, stm32
Stm32 Bootloader
UART bootloader for STM32 microcontroller.
Stars: ✭ 97 (+142.5%)
Mutual labels:  stm32, bootloader
Dapboot
DFU Bootloader for STM32 chips
Stars: ✭ 194 (+385%)
Mutual labels:  stm32, bootloader
Toboot
Bootloader for the EFM32HG Tomu Board
Stars: ✭ 65 (+62.5%)
Mutual labels:  usb, bootloader
Dirtyjtag
JTAG probe firmware for STM32F1
Stars: ✭ 183 (+357.5%)
Mutual labels:  usb, stm32

USB bootloader for STM32F1 microcontrollers

This repository contains bootloader for STM32F1xx microcontrollers. It was tested only for STM32F103RET6, but you may easily adopt it to other MCUs from F1 series supporting STM32 HAL library.

What do you need?

To use this bootloader you should have:

  • SD or MicroSD card connected to your MCU via 4-wire SDIO interface (do not forget 47kOhm resistors!). MicroSD card should works properly! File system should be Fat32.

  • Optionally, USB 2.0 port (type B, slave device), connected to your MCU. Do not forget 1.5kOhm resistor between D+ and 3.3V, otherwise your device will not be discovered by a computer.

How to use bootloader

You can put file flash.bin to SD-card with your flash image. There is no restrictions to image except it's size: it should be a bit smaller then MCU flash size to leave some place for bootloader. No image modifications (such as moving IRQ table or other) needed! You have two possibilities to put this file:

  • Enject microSD card and put flash.bin directly

  • Connect you MCU over USB to computer and run device. No drivers needed, your chip will run in cardreader mode. Copy flash.bin to MicroSD over this connection.

Than disconnect your device from PC (if connected), reboot it and after tens seconds your image will be flashed to MCU and run. Bootloader checks hash sum on start, so there is no reflashing every boot.

Note: when your MCU starts with bootloader, it takes control for 1 second to wait connection from PC and than boot your program. In this time all pins are pulled to zero if possible. You may change this behaviour.

Contacts

You are free to communicate with me by email: [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].