STM32CubeIDE for Visual Studio Code Documentation

Table Of Contents

- STM32CubeIDE for Visual Studio Code
- Introduction
  - Overview
  - System requirements
  - Release note
- Basic Concepts
  - User interface
  - Command-line tools
  - Visual Studio Code extension packs
  - Bundles
  - CMake
  - Toolchains
  - STMicroelectronics Arm Clang Toolchain for STM32
- Getting Started
  - Installation
  - First project creation
- Workspace and extension workflow
  - Workspace overview
  - Extension commands
  - Project files
  - Multi-project workspaces
- Tutorials
  - Migrating from STM32CubeIDE for Visual Studio Code extension 2.x to 3.x
  - Dual-core STM32 projects
  - Power management
  - RTOS-based STM32 projects
  - Firmware security and integrity
- Development
  - Projects
  - Editing
  - Build
  - Debug
  - API manual
  - Integration with external tools
  - Testing and validation
- Troubleshooting
  - Frequently asked questions
  - Known issues
  - Support

### On this page

- What is a Visual Studio Code extension pack?
- Contents and structure
- Using extension packs in Visual Studio Code

# Visual Studio Code extension packs

Visual Studio Code supports extension packs: curated collections of extensions that can be installed together.

Note

In this documentation, “extension pack” refers only to Visual Studio Code extension packs. It is different from OpenCMSIS Packs, which are used to distribute software components, device support, and documentation. Whenever we say “extension pack” here, we mean the VS Code concept.

## What is a Visual Studio Code extension pack?

A Visual Studio Code extension pack is an extension whose main purpose is to depend on other extensions. Installing an extension pack installs all the extensions it references. This approach makes it easy to set up a consistent development environment for a given language, framework, or workflow.

## Contents and structure

A Visual Studio Code extension pack typically contains:

- A minimal `package.json` describing the pack.

- A list of extensions to be installed together (using the `extensionPack` field).

It does not usually contain:

- Project-specific settings, tasks, or launch configurations.

- Source code, middleware, or device support files. These are provided separately, for example, by OpenCMSIS Packs.

## Using extension packs in Visual Studio Code

To install an extension pack:

1. Open the Extensions view in VS Code.

2. Search for the name of the extension pack

3. Click Install to install the pack and all its included extensions.

4. Manage updates and enable or disable individual extensions from the Extensions view.

Alternatively, install the pack from the command line:

- `code --install-extension <publisher>.<pack-name>`

For detailed instructions and examples, see the official Visual Studio Code documentation.