Open-CMSIS-Pack Home

Welcome to Open-CMSIS-Pack Project Home

The project vision:

Create a flexible and easy to use end to end development flow - from project creation to execution of the software on real or virtual hardware - for embedded software that supports:

  • command line, CI and IDEs that are cloud or host based
  • at least windows, linux on x86 and arm,  and macOS host operating systems
  • multiple toolchains for building libraries and executables
  • multiple dependent projects targeting different contexts of the same hardware or the same context of different hardware
  • multiple configuration for fine tuning settings and selections for reusing projects for different use cases like test, debug and release
  • usage of meta information for devices, boards and software components shared via publicly hosted and privately maintained software packs with the aim to maximize ease of use and reuse
  • definition and management of hardware resources that enables the processing of template files to create context specific configuration files (e.g. linker script)
  • distribution, sharing and reuse of complex multi-projects (solution), projects and partial projects (layers)
  • hardware specific programming and debug of complex, dependent project executables
  • discovery of boards, devices, processors as well as software components, layers, projects, solutions and packs
  • tools and methodologies for creating, maintaining and validating a distributable
  • training material and documentation for developers and end-users

Help Wanted

There is still a lot do. Do you want to get involved? 

Look at the areas below and visit the associated repositories to learn more. We currently use C++ and GO, depending on the project.

Join our weekly meetings.

The project aims: (

Open-CMSIS-Pack Project:

Need inspiration?