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

# Frequently asked questions

What is the difference between STM32CubeIDE and STM32CubeIDE for Visual Studio Code?

Answer: STM32CubeIDE for Visual Studio Code does not have all the features of STM32CubeIDE. The objective is to match STM32CubeIDE and then exceed it, as Visual Studio Code is considered the future platform.

What are the benefits of STM32CubeIDE for Visual Studio Code in comparison to STM32CubeIDE?

Answer: Visual Studio Code is not as advanced in debugging as STM32CubeIDE. However, it offers a modern design, lightweight operation, and a flexible build system.

What is the difference between STM32CubeIDE for Visual Studio Code and the previous 2.x extension?

Answer: The STM32Cube extension for Visual Studio Code has undergone a significant architectural redesign compared to the previous 2.x version. This redesign enhances the platform’s updateability by replacing STM32CubeCLT with bundles and CMSIS-PACKs. For more information, see the changelog.

Can I use CMSIS-Packs?

Answer: STM32CubeMX2 only works with packs that contain STM32Cube‑specific metadata. Other CMSIS‑PACKs can be installed, but they are not visible in the configuration views and are not used for code generation. Installing such packs does not affect STM32CubeMX2.

Can I use CMSIS-Packs?

Answer: STM32CubeMX2 only works with packs that contain STM32Cube‑specific metadata. While other CMSIS‑Packs can be installed, they are not visible in the configuration views and are not used for code generation. In practice, installing such packs has no effect inside STM32CubeMX2.

I get the error “Cannot activate the ‘STM32Cube Debug Core’ extension because it depends on an unknown ‘STMicroelectronics.st-cube-build-cmake’?

Answer: This is a known issue. Restart Visual Studio Code. If the problem persists, conact us through the STM32 Community.

Is it possible to see and modify live values of variables as available in STM32CubeIDE?

Answer: This feature is not available in the initial release. Efforts are ongoing to close this feature gap.

Is there a “reset perspective” equivalent to Eclipse to return the window layout to the default?

Answer: No equivalent feature is available.

Is UART terminal integrated into STM32CubeIDE for Visual Studio Code?

Answer: Yes, the SERIAL MONITOR is integrated.

How do I update the extension? Should I install it over the old one?

Answer: Uninstall the previous version before installing the new one.

Is there a way to check which packs are installed?

Answer:

- Windows: $HOME/AppData/Local/stm32cube/packs

- Linux: $HOME/.local/share/stm32cube/packs

- macOS: $HOME/Library/Application Support/stm32cube/packs

What are the server connections used by STM32CubeIDE for Visual Studio Code to operate?

Answer:

1. Server operated by ST to provide bundles (ST utilities): https://developer.st.com/bundles. Access to this server is mandatory for the initial installation and to keep bundles updated.

2. Server operated by ST to provide packs (ST product description data): https://developer.st.com/st-pack-server/. Access to this server is mandatory for the initial installation and to keep product description data updated.

3. Server operated by Adobe to collect anonymous telemetry data: https://stmicroelectronics.d3.sc.omtrdc.net/b/ss//6. Access to this server is optional.