{
    "version": "0.1.0",
    "configurations": [
        {
            "name": "Debug - Openocd docker Remote",
            "type":"cortex-debug",
            "cortex-debug.armToolchainPath":"${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin",
            "cwd": "${workspaceRoot}",
            "executable": "${command:cmake.launchTargetPath}",
            "request": "launch",
            "servertype": "external",
            // This may need to be arm-none-eabi-gdb depending on your system
            "gdbPath" : "${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin/arm-none-eabi-gdb",
            // Connect to an already running OpenOCD instance
            "gdbTarget": "host.docker.internal:3333",
            "svdFile": "${workspaceRoot}/nrf52.svd",
            "runToMain": true,
            // Work around for stopping at main on restart
            "postRestartCommands": [
                "break main",
                "continue"
            ]
        },
        {
            "name": "Debug - Openocd Local",
            "type":"cortex-debug",
            "cortex-debug.armToolchainPath":"${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin",
            "cwd": "${workspaceRoot}",
            "executable": "${command:cmake.launchTargetPath}",
            "request": "launch",
            "servertype": "openocd",
            // This may need to be arm-none-eabi-gdb depending on your system
            "gdbPath" : "${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin/arm-none-eabi-gdb",
            // Connect to an already running OpenOCD instance
            "gdbTarget": "localhost:3333",
            "svdFile": "${workspaceRoot}/nrf52.svd",
            "runToMain": true,
            // Work around for stopping at main on restart
            "postRestartCommands": [
                "break main",
                "continue"
            ]
        },
        {
            "cwd": "${workspaceRoot}",
            // TODO: find better way to get latest build filename
            "executable": "./build/src/pinetime-app-1.3.0.out",
            "name": "Debug OpenOCD ST-LINK pinetime-app-1.3.0.out",
            "request": "launch",
            "type": "cortex-debug",
            "showDevDebugOutput": false,
            "servertype": "openocd",
            "runToMain": true,
            // Only use armToolchainPath if your arm-none-eabi-gdb is not in your path (some GCC packages does not contain arm-none-eabi-gdb)
            "armToolchainPath": "${workspaceRoot}/../gcc-arm-none-eabi-10.3-2021.10/bin",
            "svdFile": "${workspaceRoot}/nrf52.svd",
            "configFiles": [
                "interface/stlink.cfg",
                "target/nrf52.cfg"
            ],
        }

    ]
}