Skip to content

Releases: devanlai/dapboot

dapboot-v1.20

11 Sep 22:57
3f5f387
Compare
Choose a tag to compare

Official release of dapboot 1.20 with support for more boards, improvements to the DFU implementation, and more configuration options.

Major changes:
In v1.11 and earlier, the bootloader implementation for STM32F103 targets would expect to be passed a 32-bit command split across the first two 16-bit RTC backup registers. On STM32F103 targets only, the bootloader now instead only looks for a 16-bit command in the first RTC backup register. Existing application firmware that writes to both backup registers will continue to work with versions of dapboot before and after this change.

Internal changes:

  • Allow target configuration of the transfer size via TARGET_DFU_WTRANSFERSIZE (#27)
  • Allow target configuration of the flash programming poll interval / timeout via target_get_timeout() (#27)
  • Add STM32L1 target support (#27)
  • Allow exiting the bootloader via DFU detach request (#28)
  • Update to a slightly less ancient version of libopencm3
  • Allow configuration of the USB VID/PID via USB_VID and USB_PID (#33)
  • Allow configuration of the USB alternate setting number for the DFU interface via USB_DFU_ALTN (#43)
  • Allow configuration of the RTC backup register used to to pass commands to the bootloader and the command word used to trigger the bootloader via REG_BOOT and CMD_BOOT (#42)
    • On STM32F103 targets, use only the first RTC backup register instead of the first two RTC backup registers.
  • Align the DFU manifestation behavior with the spec and allow selection between auto-detach behavior vs manual detach via DFU_WILL_DETACH (#41)
  • Replace target_manifest_app() with target_pre_detach() to allow blinking LEDs or setting flags when rebooting to run new firmware or existing firmware.

New board support:

  • Olimex STM32-H103 (#32)
  • WeAct BluePill Plus - STM32F103C8T6 version: #36 and GD32F303CCT6 version: #40
  • BigTreeTech SKR Mini E3 V2.0 (#44)

Note that within this release, only the bluepill, stlink, and maplemini firmware binaries have been manually tested due to hardware / time limitations. Please perform your own testing of all other firmware builds before deploying them in production.

Thanks to @karlp, @jeanthom, @obra, @iovxw, and @twelho for contributing to this release.

dapboot-v1.11

04 May 02:16
Compare
Choose a tag to compare

Official release of dapboot 1.11 with high-memory variant from the old highboot branch.

Changes:

  • Add a configurable delay before sampling the force bootloader button input to allow time for active high pullups to work when the reset is applied by power cycling the board. (#14)
  • Allow further build-time configuration without requiring source modifications. (#19)
  • Allow for a WinUSB vendor code other than 0x21 (!). (#7)
  • Only build the libopencm3 libraries for supported targets. (#20)
  • On bluepill targets, configure BOOT1 as a force bootloader button. (#21)
  • Optimize size by enabling LTO and using newlib-nano. (#22, #24)
  • Add variant targets for high-memory versions of the bootloader. (#24)

Thanks to @0x3333, @karel-3d, @KoviRobi, and @dmsc for contributing to this release.

dapboot-v1.10

26 Aug 20:17
Compare
Choose a tag to compare

Official release of dapboot 1.10

Changes:

  • Fixed issue #1, where the bootloader could write past the end of flash and potentially brick itself
  • Added configuration option USE_HSI for boards with no external crystal.
  • Added DFU upload capability back into all builds
  • DFU upload now allows readback of the full 120KiB of flash if configured.
  • Fixed button pullup initialization
  • Added target_pre_main() hook to initialize settings for the application if needed.
  • Updated Makefile rules to automatically clone and build the libopencm3 submodule if needed

dapboot-v1.0

03 Sep 18:19
Compare
Choose a tag to compare

Official release of dapboot version 1.0.

highboot-v0.1

29 Aug 01:23
Compare
Choose a tag to compare
highboot-v0.1 Pre-release
Pre-release

Experimental release of the highboot variant of the dapboot bootloader for the STM32F103C8. The application size is limited to 56KiB, but the flash does not need to be offset from the normal base of 0x08000000.

This build includes Microsoft OS Descriptor 1.0 Windows Compatible ID support to automatically load the WinUSB driver for the DFU interface. It also includes support for the WebUSB draft standard, available on a trial basis starting in Chrome 54.