CMSIS-Toolbox

Thank you for using the CMSIS-Toolbox that provides command-line tools for:

  • Project creation and build of embedded applications that utilize software packs. Various compilation tools are supported.
  • Pack creation, maintenance, and distribution of software packs in Open-CMSIS-Pack format.

Manual Chapters

  • Overview of the CMSIS-Toolbox with tool workflow and benefits such as command-line and IDE usage.

  • Installation explains the setup of the CMSIS-Toolbox along with a build environment for embedded applications that are based on Arm Cortex-M processors.

  • Build Overview describes the overall concept, outlines the csolution project files that describes the software application, and contains references to examples and project templates.

  • Build Tools contains command line descriptions for cbuild (build projects), csolution (transform csolution project files), and cpackget (manage software packs).

  • CMSIS Solution Project File Format is a detailed description of the csolution project files that define the software application in YAML format.

  • Create Applications explains how to start projects using software packs. It covers also linker script creation, software pack structure, and project maintenance with pack upgrades.

  • Reference Applications explains how to use and create examples that show middleware usage on on many different evaluation boards including custom hardware.

  • Configure STM32 Devices with STM32CubeMX explains how to use STM32CubeMX to manage device and board configuration.

  • Configure NXP Devices with MCUXpresso Config Tools shows how to use MCUXpresso Config Tools to manage device and board configuration.

  • Build Information Files details the build information generated by the csolution tool.

  • Build Operation contains for advanced users further details about build process, CMake backend configuration, and generator integration.

  • Pack Creation describes how to create software packs that optionally include examples and explains the pack creation tools packchk (software pack verification) and svdconv (SVD file verification and header file generator).

  • Experimental Features for resource management of multi-project linker scripts, run and debug management.

Revision History

Version Description
2.7.0 CMSIS-Toolbox 2.7.0. Adds C++ language: c++23, gnu++23; output linker MAP file control; MCUXpresso Config Tool; experimental features for multi-project linker scripts, debug, and run. Fixed: components: now require Csub specifier; LLVM/Clang 19 compatibility; handling of group options. See here for more details.
2.6.0 CMSIS-Toolbox 2.6.0; extends pack: version specifier and C language support to C17 and C23. Improved is regions header file generation for linker scripts. It adds trustzone: secure-only for projects without secure entries, apis, messages, and PLM status for config files to cbuild.yml information, and fixes several minor issues. It is no longer possible to specify compiler in the cdefault.yml file. See here for more details.
2.5.0 CMSIS-Toolbox 2.5.0; direct CMake interface is now default, tmpdir: controls location of interim files, adds add-path-asm:, adds define-asm, adds regular expression search to for-context:/not-for-context, and contains several corrections.
2.4.0 CMSIS-Toolbox 2.4.0; adds CubeMX integration, pre/post-build steps, simplifies the generator integration, and contains several corrections.
2.3.0 CMSIS-Toolbox 2.3.0 adds in the csolution project files component instances and optimize: debug. Tools are extended with cbuild setup command, --frozen-pack option. Refer to release information for more details.
2.2.0 CMSIS-Toolbox 2.2.0 adds generator integration, extends translation controls, adds context set, adds pack locking, and improves linker script management. Refer to release information for more details.
2.0.0 Initial release for CMSIS-Toolbox 2.0.0