CMSIS-Toolbox

April 7, 2026 ยท View on GitHub

License Apache-2.0 Dependency review Markdown lint check Build documentation Build cmsis-toolbox End to end tests Publish cmsis-toolbox OpenSSF Scorecard

This contains the executable tools of the CMSIS-Toolbox that provides a set of command-line tools to work with software packs in Open-CMSIS-Pack format.

Users Guide

The Users Guide provides detailed information.

Project Creation

The following tools support the creation of build information for embedded applications:

ToolDescription
cpackgetPack Installer: installs and manages software packs in the development environment.
cbuildBuild Invocation: orchestrates the build steps utilizing CMSIS tools and a CMake compilation process.
cbuild2cmakeCMake File Generator: generates CMake scripts from CMSIS build information files.
csolutionProject Manager: creates build information for embedded applications that consist of one or more related projects.

These tools extend the project creation workflow by enabling integration with external applications. They are usually used alongside the above tools.

ToolDescription
cbridgeGenerator Bridge: integrates external code generators into the CMSIS-Toolbox build flow. Provides native STM32CubeMX support and bridge scripts for MCUXpresso and Infineon Device Configurator.

Example Projects

RepositoryDescription
csolution-examplesContains several Hello World examples that show single-core, multi-core, and TrustZone setup.
vscode-get-startedContains the setup for a VS Code development environment including an example project.
github.com/Arm-ExamplesContains many examples that include CMSIS-Toolbox setup.

Software Pack Creation

The following tools support the creation of Software Packs in CMSIS-Pack format:

ToolDescription
packchkPack Verification: installs and manages software packs in the local development environment.
svdconvSVD Check / Convert: validates and/or convert System View Description (SVD) files.
vidx2pidxPack Index File Generator: generates a CMSIS-Pack index file from a vendor index.

In addition several scripts are provided that simplify pack creation with desktop or cloud workflows. This is described in several hands-on tutorials:

Hands-on TutorialDescription
SW-Pack-HandsOnExplains the steps to create a simple software pack using the Open-CMSIS-Pack technology.
DFP-Pack-HandsOnExplains the structure and creation of a Device Family Pack (DFP).
BSP-Pack-HandsOnExplains the structure and creation of a Board Support Pack (BSP).

Documentation

The documentation can be built using mkdocs. It requires Python 3 to be installed on your local machine. Check out Getting Started with MkDocs to learn how to use it. A CI workflow is in place that builds the documentation automatically.

Report a Bug

Please report any issue you are facing while using CMSIS-Toolbox in the Issues tab on GitHub. Select the appropriate issue template, depending on the severity of the issue. Bugs (or deviations) from the defined behaviour that can be worked around shall be reported as "non-blocking bug". In turn, issues that prevent you from using a certain feature entirely, are considered a "blocking bug" and labelled as critical.