Dies ist ein benutzerdefinierter STM32F1XX/STM32F4XX-Bootloader, mit dem Firmware-Binärdateien über USB unter Verwendung von DFU- oder HID-Flash-Protokollen Flaszdarsteller ermöglicht. Die ambitierende Absicht hinter dem Projekt besteht darin, die Feinheiten vieler mehr STM32 -MCUs in ein einzelnes Projekt zu implmern, das leicht heruntergeladen, konfiguriert, kompiliert und blitzt werden kann.
In einigen Fällen ist es sehr bequem, neue Firmware mit minimaler Interaktion mit der physischen Karte zu blinken. In meinem Fall blinkte das BTT GTR 1.0 -Board meines 3D -Druckers über mein Tintenfisch am Drücken einer Taste (zwei tatsächlich zurücksetzen + LCD -Encoder -Taste), die ich nun über die GPIO und den Blitz von RPI nach Belieben ohne manuelle Interaktion auslösen kann.
Dieser Bootloader ist in Arbeit, was bedeutet, dass er nicht weit verbreitet wurde und die Hardwarekompatibilität noch viel zu berücksichtigen gibt. Bitte betrachten Sie dies als etwas Experimentelles, bis Sie dafür gesorgt haben, dass alle Aspekte in Ihrem speziellen Vorstand funktionieren.
Das Projekt wurde vom Serasidis/STM32_HID_BOOTLOADER (der aus dem Bootsector/STM32-HID-Bootloader stammt) inspiriert und behält die Kompatibilität mit dem HID-Flash-Tool bei.
Das Projekt ist an Platformio angepasst (das Projekt sollte so erstellen und hochladen, sofern Sie über ein ST-Link/V2-Gerät angeschlossen sind). Es verwendet die ursprünglichen STM32Cube -Framework -Bibliotheken, anstatt leicht modifizierte Teile davon zu enthalten. Das DFU -Protokoll wird auf beiden STM32F1XX/4xx -Plattformen implementiert und getestet. Im Moment wird die Kompatibilität mit der älteren Version von HID-flash.exe nur in der STM32F4xx-Zusammenstellung gehalten. Die Quellen des HID-Flash-Tools sind nicht im Projekt enthalten.
Bevor Sie dies versuchen, seien Sie absolut sicher, dass Sie eine Kopie des ursprünglichen Bootloaders Ihres Boards haben, den Sie ohne Probleme erfolgreich an das Board zurückgeblasen haben .
Das Anpassen des Bootloader -Verhaltens erfolgt durch Ändern der Datei configuration.h. Weitere Informationen finden Sie in Dateikommentaren.
Verwenden Sie ein ST-Link-kompatibles Gerät, das ordnungsgemäß mit Ihrer Karte und dem PC verbunden ist. Verwenden Sie den Befehl upload von Platformio, um zu installieren. Das Zurücksetzen der Platine mit dem auf 3,3 V festgelegten Boot0 -Pin sollte ebenfalls funktionieren. Dies hängt jedoch von Ihrem Board und Ihrer MCU ab (finden Sie im Wiki weitere Informationen zu diesem Thema).
Enable the configured trigger and reset the board (in case of pin trigger, keep the pin enabled while resetting and until the USB device appears at the host. Depneding on which protocol you have enabled (DFU or HID), use dfu-util.exe or hid-flash.exe cmd line tool to upload a firmware binary file manually, or if your firmware project is a PlatformIO project, simply configure dfu or hid Als bevorzugtes upload-protocol im Env-Abschnitt der Plattformio.ini-Datei Ihrer Firmware, wie im folgenden Beispiel:
#
# Bigtreetech GTR V1.0 (STM32F407IGT6 ARM Cortex-M4)
#
[env:BIGTREE_GTR_V1_0]
extends = stm32_variant
board = marlin_BigTree_GTR_v1
board_build.offset = 0x8000
build_flags = ${stm32_variant.build_flags} -DSTM32F407IX
upload_protocol = dfu
Besuchen Sie das Wiki, um weitere Informationen zum Blinken und Verwenden zu erhalten.
Weitere Auslöser, mehr blinkende Methoden, mehr STM32 MCUS / Boards zu unterstützen.
Bisher wurde das Projekt auf den folgenden Boards getestet:
STM32F4XX:
STM32F1XX: