1 unstable release

new 0.1.0 Feb 17, 2025

#513 in Command line utilities

34 downloads per month

MIT license

110KB
2K SLoC

stm32cubeprogrammer-cli

This CLI aims to provide a simple interface for setting up stm32 targets.

Supported commands

  • Flashing bin and hex files
  • Updating BLE stack
  • Resetting target
  • Mass erasing target
  • Enabling read protection
  • Disabling read protection
  • Resetting target

All commands above can be combined in a single command line invocation by chaining them. If you need other commands, feel free to open an issue or a pull request. 😄

Example usage:

Where installation_dir is the path to the root directory of the STM32CubeProgrammer installation. E.g. C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer

stm32cubeprogrammer-cli --stm32-cube-programmer-dir `installation_dir` reset

You can also pass the directory to the STM32CubeProgrammer installation using the STM32_CUBE_PROGRAMMER_DIR environment variable.

STM32_CUBE_PROGRAMMER_DIR=`installation_dir` stm32cubeprogrammer-cli reset

You can chain multiple commands together.

STM32_CUBE_PROGRAMMER_DIR=`installation_dir` stm32cubeprogrammer-cli unprotect reset flash-hex `path_to_hex_file` protect

Use the --list flag to list available probes.

stm32cubeprogrammer-cli --stm32-cube-programmer-dir `installation_dir` --list

Use --help to see all supported commands and options (or see crate::parse::Options)

stm32cubeprogrammer-cli --help

CLI output

The CLI outputs a JSON object (see crate::output::Output) which contains information about the selected probe, general information about the target, and the output of each command. The output is printed to stdout.

Requirements

There needs to be a Stm32CubeProgrammer installation on your system. The crates are tested using Stm32CubeProgrammer version 2.18.0.

Platform support

Windows and Linux are supported and tested.

Warranty

This crate is supplied as is without any warranty. Use at your own risk.

License: MIT

Dependencies

~7–16MB
~199K SLoC