CMSIS-Pack  Version 1.4.9
Delivery Mechanism for Software Packs
 All Pages
Publish a Pack

There are multiple ways to distribute a software pack:

Local Installation

The easiest way to distribute a software pack is attaching it to an email or using other means of electronic distribution (for example using a company internal file server). The installation of a software pack is usually triggered by double-clicking the PACK file. The pack management tool is invoked and the Pack is installed on the local machine. After installation, the pack will be shown in the list of installed packs (tool dependent). If the PDSC file does not contain a valid <url> element, a manual installation is required to update a software pack. Otherwise, pack management tools can check for updates on the server or the local machine that is specified by <url>.

Local installation and update from URL
For automatic updates on a local machine, specify the <url> using the file URI scheme.

Web Download

Any web server can be used to host a software pack (specified by the <url> element in the PDSC file). At this location, the following files can be present:

  1. <vendor>.<name>.pdsc [required]: pack description file.
  2. <vendor>.<name>.<version>.pack [required]: pack file where <version> refers to the latest version specified in the PDSC file.
  3. <vendor>.pidx [optional]: list with all packs hosted and maintained by the vendor (refer to Package Index File (pidx))
  4. <vendor>.vidx [optional]: list of package index files known to the vendor (refer to Vendor Index File (vidx))

All previous versions listed in the <releases> section of the PDSC file should be present in that folder as well. This will enable customers to revert updates or to be able to download a specific version of a software pack (for code maintenance purposes for example).

Web installation and update
  • It is important to understand how the <url> element works. If you specify a URL, for example, then you have to make the PDSC file and the corresponding PACK file(s) available for download at that exact location. The naming of the files follow the standard naming rules. For example, the ARM::CMSIS PDSC and Pack files are available here: and and and ...
    At the specified location, you need to have one (unversioned) PDSC file and can have multiple versioned PACK files, but at least the latest one.
  • If the URL or the PDSC/PACK files become unavailable (temporarily or permanently), users will not be able to retrieve updates.
  • Do not replace PDSC/PACK files without updating the version number because the Pack management tools will not recognize the update unless the version has been changed.
  • Older packs should remain available.

Publishing on

ARM maintains a list of available software packs. If you wish to add your packs to that list, send either your vendor.pidx file or your PDSC file to the following email address: The PIDX file will be processed and all referenced PDSC files will be validated. The following content will be processed in order to generate the web site ( and index file (

  • Version
  • Release Notes
  • Devices
  • Boards
  • Examples
  • Software Components

Please allow up to seven working days for the process. If the files contain any errors, you will be notified. Otherwise, the information is added to the index server.