GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - stm32duino/Arduino_Tools: Contains upload tools for STM32 based boards

BranchesTags
Open more actions menu

Latest commit

 

History

284 Commits
284 Commits

Folders and files

NameName
Last commit message
Last commit date
linux
linux
 
 
macosx
macosx
 
 
src
src
 
 
win
win
 
 
.editorconfig
.editorconfig
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
LICENSE.md
LICENSE.md
 
 
README.md
README.md
 
 
boards.txt
boards.txt
 
 
dfu-util.sh
dfu-util.sh
 
 
hid-flash.sh
hid-flash.sh
 
 
maple_upload.sh
maple_upload.sh
 
 
run_arduino_gen.sh
run_arduino_gen.sh
 
 
stm32CubeProg.sh
stm32CubeProg.sh
 
 

Repository files navigation

Arduino_Tools

GitHub release GitHub commits

Contains upload tools for STM32 based boards and some other useful scripts.

This repository is packaged and distributed as the STM32Tools tool dependency of the Arduino_Core_STM32 platform ({runtime.tools.STM32Tools.path} in its platform.txt). The tools are installed automatically by the Arduino Boards Manager along with the core and are not meant to be used standalone.

Content

Upload scripts

Script Description
stm32CubeProg.sh Wrapper for STM32CubeProgrammer CLI (must be installed or available in the PATH). Supports the swd, dfu, serial and jlink interfaces. Run it without argument to get the full list of options.
dfu-util.sh Selects and runs the dfu-util binary matching the host OS and architecture.
hid-flash.sh Selects and runs the hid-flash binary matching the host OS and architecture (HID bootloader v2.2 for STM32F1 and STM32F4 series).
maple_upload.sh Uploads a binary to boards using the Maple bootloader over DFU: maple_upload.sh <dummy_port> <altID> <usbVID> <usbPID> <binfile>.
linux/massStorageCopy.sh
macosx/massStorageCopy.sh
win/massStorageCopy.bat
Copy a binary to a board exposed as a mass storage device (e.g. ST-LINK virtual drive of the Nucleo and Discovery boards).

STM32MP1 script

run_arduino_gen.sh is used for the STM32MP1 boards (Cortex-M4 firmware started from the Linux side using remoteproc):

  • run_arduino_gen.sh generate <input ELF file> <output script file>: generates a self-contained shell script embedding the ELF binary.
  • The generated script supports start, stop, restart, install (auto-start at boot through a systemd service) and uninstall.

Prebuilt binaries

Directory Content
linux/x86_64, linux/aarch64 dfu-util, dfu-prefix, dfu-suffix, hid-flash, upload_reset
macosx dfu-util, dfu-prefix, dfu-suffix, hid-flash, upload_reset, libusb
win dfu-util.exe, hid-flash.exe, upload_reset.exe, check_port.exe, busybox.exe (to run the shell scripts), required DLLs. See win/README.md

upload_reset sends the reset sequence (RTS/DTR and magic characters) to put a board running the Maple bootloader into upload mode. check_port lists the serial ports or checks if a given one exists.

Linux udev rules

  • linux/45-maple.rules: udev rules for the Maple bootloader.
  • linux/99-stm32_hid_bl.rules: udev rules for the STM32 HID bootloader.
  • linux/install.sh: installs the Maple rules in /etc/udev/rules.d and adds the current user to the dialout group.

Sources

The src directory contains the sources of the tools built in this repository:

  • src/upload_reset: upload_reset (Unix and Windows).
  • src/check_port and src/libserialport: check_port and the libserialport library it uses.
  • src/build_mac.sh: builds the macOS binaries.
  • src/linux-aarch64: Docker based cross-compilation of the Linux aarch64 binaries, see src/linux-aarch64/README.md.

License

See LICENSE.md.

About

Contains upload tools for STM32 based boards

Resources

Readme
License

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

115 stars

Watchers

10 watching

Forks

66 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.