{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "QRCode Tests",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/default/src/setup_payload/tests/TestQRCode",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "preLaunchTask": "Build QRCode Payload Tests",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        },
        {
            "name": "CHIP crypto Tests",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/default/src/crypto/tests/TestCrypto",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "preLaunchTask": "Build & Run Crypto Tests",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        },
        {
            "name": "CHIP openSSL Tests",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/default/src/crypto/tests/TestCryptoPAL",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "preLaunchTask": "Build openSSL crypto Tests",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        },
        {
            "name": "LightingApp (Linux)",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/out/lighting-app/chip-lighting-app",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "preLaunchTask": "Build Lighting App (Linux)",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        },

        {
            "name": "Debug Mbed examples",
            "type": "cortex-debug",
            "request": "launch",
            "cwd": "${workspaceRoot}/examples/${input:mbedApp}/mbed",
            "executable": "./build-${input:mbedTarget}/${input:mbedDebugProfile}/chip-mbed-${input:mbedApp}-example.elf",
            "armToolchainPath": "${env:PW_ENVIRONMENT_ROOT}/cipd/pigweed/bin/", // Pigweed environment bootstraping required
            "openocdPath": "${env:OPENOCD_PATH/bin}",
            "servertype": "openocd",
            "searchDir": [
                "${workspaceRoot}/config/mbed/scripts",
                "${env:OPENOCD_PATH}/scripts"
            ],
            "configFiles": ["${input:mbedTarget}.tcl"],
            "overrideLaunchCommands": [
                "-enable-pretty-printing",
                "monitor program {./build-${input:mbedTarget}/${input:mbedDebugProfile}/chip-mbed-${input:mbedApp}-example.hex}",
                "monitor reset run",
                "monitor sleep 200",
                "monitor psoc6 reset_halt sysresetreq"
            ],
            "numberOfProcessors": 2,
            "targetProcessor": 1, // Set to 0 for the CM0+, set to 1 for the CM4
            "overrideRestartCommands": [
                "monitor reset init",
                "monitor reset run",
                "monitor sleep 200",
                "monitor psoc6 reset_halt sysresetreq"
            ],
            "runToMain": true, // if true, program will halt at main. Not used for a restart
            "showDevDebugOutput": false // When set to true, displays output of GDB.
        },

        {
            "name": "Debug Mbed examples [remote]",
            "type": "cortex-debug",
            "request": "launch",
            "cwd": "${workspaceRoot}/examples/${input:mbedApp}/mbed",
            "executable": "./build-${input:mbedTarget}/${input:mbedDebugProfile}/chip-mbed-${input:mbedApp}-example.elf",
            "armToolchainPath": "${env:PW_ENVIRONMENT_ROOT}/cipd/pigweed/bin/", // Pigweed environment bootstraping required
            "servertype": "external",
            "gdbTarget": "host.docker.internal:3334", //port 3333 for the CM0+, 3334 for the CM4
            "overrideLaunchCommands": [
                "-enable-pretty-printing",
                "monitor reset halt",
                "load ./build-${input:mbedTarget}/${input:mbedDebugProfile}/chip-mbed-${input:mbedApp}-example.hex",
                "monitor reset run",
                "monitor sleep 200",
                "monitor psoc6 reset_halt sysresetreq"
            ],
            "overrideRestartCommands": [
                "monitor reset init",
                "monitor reset run",
                "monitor sleep 200",
                "monitor psoc6 reset_halt sysresetreq"
            ],
            "runToMain": true, // if true, program will halt at main. Not used for a restart
            "showDevDebugOutput": false // When set to true, displays output of GDB.
        },

        {
            "name": "Flash Mbed examples",
            "type": "cortex-debug",
            "request": "launch",
            "cwd": "${workspaceRoot}/examples/${input:mbedApp}/mbed",
            "executable": "./build-${input:mbedTarget}/${input:mbedFlashProfile}/chip-mbed-${input:mbedApp}-example.elf",
            "armToolchainPath": "${env:PW_ENVIRONMENT_ROOT}/cipd/pigweed/bin/", // Pigweed environment bootstraping required
            "openocdPath": "${env:OPENOCD_PATH/bin}",
            "servertype": "openocd",
            "searchDir": [
                "${workspaceRoot}/config/mbed/scripts",
                "${env:OPENOCD_PATH}/scripts"
            ],
            "configFiles": ["${input:mbedTarget}.tcl"],
            "overrideLaunchCommands": [
                "monitor reset halt",
                "monitor program {./build-${input:mbedTarget}/${input:mbedFlashProfile}/chip-mbed-${input:mbedApp}-example.hex}",
                "monitor reset run",
                "quit"
            ],
            "numberOfProcessors": 2,
            "targetProcessor": 1, // Set to 0 for the CM0+, set to 1 for the CM4
            "showDevDebugOutput": false // When set to true, displays output of GDB.
        },

        {
            "name": "Flash Mbed examples [remote]",
            "type": "cortex-debug",
            "request": "launch",
            "cwd": "${workspaceRoot}/examples/${input:mbedApp}/mbed",
            "executable": "./build-${input:mbedTarget}/${input:mbedFlashProfile}/chip-mbed-${input:mbedApp}-example.elf",
            "armToolchainPath": "${env:PW_ENVIRONMENT_ROOT}/cipd/pigweed/bin/", // Pigweed environment bootstraping required
            "servertype": "external",
            "gdbTarget": "host.docker.internal:3334", //port 3333 for the CM0+, 3334 for the CM4
            "overrideLaunchCommands": [
                "monitor reset halt",
                "load ./build-${input:mbedTarget}/${input:mbedFlashProfile}/chip-mbed-${input:mbedApp}-example.hex",
                "monitor reset run",
                "quit"
            ],
            "showDevDebugOutput": false // When set to true, displays output of GDB.
        },

        {
            "name": "Debug Mbed unit tests",
            "type": "cortex-debug",
            "request": "launch",
            "cwd": "${workspaceRoot}/src/test_driver/mbed",
            "executable": "./build-${input:mbedTarget}/${input:mbedDebugProfile}/chip-mbed-unit-tests.elf",
            "armToolchainPath": "${env:PW_ENVIRONMENT_ROOT}/cipd/pigweed/bin/", // Pigweed environment bootstraping required
            "servertype": "openocd",
            "openocdPath": "${env:OPENOCD_PATH/bin}",
            "searchDir": [
                "${workspaceRoot}/config/mbed/scripts",
                "${env:OPENOCD_PATH}/scripts"
            ],
            "configFiles": ["${input:mbedTarget}.tcl"],
            "overrideLaunchCommands": [
                "-enable-pretty-printing",
                "monitor program {./build-${input:mbedTarget}/${input:mbedDebugProfile}/chip-mbed-unit-tests.hex}",
                "monitor reset run",
                "monitor sleep 200",
                "monitor psoc6 reset_halt sysresetreq"
            ],
            "numberOfProcessors": 2,
            "targetProcessor": 1, // Set to 0 for the CM0+, set to 1 for the CM4
            "overrideRestartCommands": [
                "monitor reset init",
                "monitor reset run",
                "monitor sleep 200",
                "monitor psoc6 reset_halt sysresetreq"
            ],
            "runToMain": true, // if true, program will halt at main. Not used for a restart
            "showDevDebugOutput": false // When set to true, displays output of GDB.
        },

        {
            "name": "Debug Mbed unit tests [remote]",
            "type": "cortex-debug",
            "request": "launch",
            "cwd": "${workspaceRoot}/src/test_driver/mbed",
            "executable": "./build-${input:mbedTarget}/${input:mbedDebugProfile}/chip-mbed-unit-tests.elf",
            "armToolchainPath": "${env:PW_ENVIRONMENT_ROOT}/cipd/pigweed/bin/", // Pigweed environment bootstraping required
            "servertype": "external",
            "gdbTarget": "host.docker.internal:3334", //port 3333 for the CM0+, 3334 for the CM4
            "overrideLaunchCommands": [
                "-enable-pretty-printing",
                "monitor reset halt",
                "load ./build-${input:mbedTarget}/${input:mbedDebugProfile}/chip-mbed-unit-tests.hex",
                "monitor reset run",
                "monitor sleep 200",
                "monitor psoc6 reset_halt sysresetreq"
            ],
            "overrideRestartCommands": [
                "monitor reset init",
                "monitor reset run",
                "monitor sleep 200",
                "monitor psoc6 reset_halt sysresetreq"
            ],
            "runToMain": true, // if true, program will halt at main. Not used for a restart
            "showDevDebugOutput": false // When set to true, displays output of GDB.
        },

        {
            "name": "Flash Mbed unit tests",
            "type": "cortex-debug",
            "request": "launch",
            "cwd": "${workspaceRoot}/src/test_driver/mbed",
            "executable": "./build-${input:mbedTarget}/${input:mbedFlashProfile}/chip-mbed-unit-tests.elf",
            "armToolchainPath": "${env:PW_ENVIRONMENT_ROOT}/cipd/pigweed/bin/", // Pigweed environment bootstraping required
            "servertype": "openocd",
            "openocdPath": "${env:OPENOCD_PATH/bin}",
            "searchDir": [
                "${workspaceRoot}/config/mbed/scripts",
                "${env:OPENOCD_PATH/scripts}"
            ],
            "configFiles": ["${input:mbedTarget}.tcl"],
            "overrideLaunchCommands": [
                "monitor reset halt",
                "monitor program {./build-${input:mbedTarget}/${input:mbedFlashProfile}/chip-mbed-unit-tests}",
                "monitor reset run",
                "quit"
            ],
            "numberOfProcessors": 2,
            "targetProcessor": 1, // Set to 0 for the CM0+, set to 1 for the CM4
            "showDevDebugOutput": false // When set to true, displays output of GDB.
        },

        {
            "name": "Flash Mbed unit tests [remote]",
            "type": "cortex-debug",
            "request": "launch",
            "cwd": "${workspaceRoot}/src/test_driver/mbed",
            "executable": "./build-${input:mbedTarget}/${input:mbedFlashProfile}/chip-mbed-unit-tests.elf",
            "armToolchainPath": "${env:PW_ENVIRONMENT_ROOT}/cipd/pigweed/bin/", // Pigweed environment bootstraping required
            "servertype": "external",
            "gdbTarget": "host.docker.internal:3334", //port 3333 for the CM0+, 3334 for the CM4
            "overrideLaunchCommands": [
                "monitor reset halt",
                "load ./build-${input:mbedTarget}/${input:mbedFlashProfile}/chip-mbed-unit-tests.hex",
                "monitor reset run",
                "quit"
            ],
            "showDevDebugOutput": false // When set to true, displays output of GDB.
        }
    ],
    "inputs": [
        {
            "type": "pickString",
            "id": "mbedDebugProfile",
            "description": "What mbed profile do you want to debug?",
            "options": ["debug", "develop"],
            "default": "debug"
        },
        {
            "type": "pickString",
            "id": "mbedFlashProfile",
            "description": "What mbed profile do you want to flash?",
            "options": ["release", "debug", "develop"],
            "default": "release"
        },
        {
            "type": "pickString",
            "id": "mbedApp",
            "description": "What mbed application do you want to use?",
            "options": [
                "lock-app",
                "lighting-app",
                "pigweed-app",
                "all-clusters-app",
                "shell"
            ],
            "default": "lock-app"
        },
        {
            "type": "pickString",
            "id": "mbedTarget",
            "description": "What mbed target do you want to use?",
            "options": ["CY8CPROTO_062_4343W"],
            "default": "CY8CPROTO_062_4343W"
        }
    ]
}
