Skip to content
Haneef Mohammed edited this page Dec 25, 2022 · 51 revisions

Cortex-Debug is an extension to add debugging capabilities for ARM Cortex-M devices to Visual Studio Code.

Please read the Overview document to understand this extension and the debugging process better.

VSCode Settings for Cortex-Debug

There are dozens of options that are more suitable for global or workspace settings. These are not settings you put in the launch.json file. They are settings for this extension. There are two key settings we need for the tool to even function

  • cortex-debug.armToolchainPath - there are many versions of this for customization for each OS. This is the directory that contains all the GNU toolchain executables. There are many, and currently, we rely on gdb, objdump, and nm. Maybe different in the future. *Note: This does not have to be ARM specific, it can be anything but we are historically built for a 32-bit ARM embedded device`
  • cortex-debug.armToolchainPrefix - Historically, the prefix was arm-none-eabi and this is our default. But that has been changing and there are far too many distributions with custom builds/prefixes, so you may have to customize this.

If we cannot find the tools to find and run the GNU tools, then debugging is not possible. There are a LOT of customizations possible but following the above will simplify your getting started.

Supported Debug Servers/Probes

Publications with configuration examples you may find useful