Cannot debug project in VS code [spawn Unknown system error -86]

Hello,

I have installed VS code and the nRF Connect extensions.

I can build and flash my project into the nRF52840 DK board but as I try to Debug I get this error:

spawn Unknown system error -86

I have buit the configuration with Debug options enabled.

See the error popup message in the bottom right corner of the attached screenshot.

Can anyone please help?

Thank you.

Marco

Parents
  • Hi,

    The issue you see might be related to architectural mismatch (M1 vs Intel) with some of the binaries. You could start by verifying that all tools/libraries/binaries are correctly installed.

    Could you please provide Generate Support Information (by pressing CTRL+SHIFT+P and typing "nRF Connect: Generate Support Information" in VS Code)?

    Best regards,
    Dejan

Reply
  • Hi,

    The issue you see might be related to architectural mismatch (M1 vs Intel) with some of the binaries. You could start by verifying that all tools/libraries/binaries are correctly installed.

    Could you please provide Generate Support Information (by pressing CTRL+SHIFT+P and typing "nRF Connect: Generate Support Information" in VS Code)?

    Best regards,
    Dejan

Children
  • Here is what I get:

    [16:39:15] west build --build-dir /Users/marcorussi/firmware/puritieaq/ncp_app/build /Users/marcorussi/firmware/puritieaq/ncp_app
    [16:39:16] Success.
    [16:39:19] west flash -d /Users/marcorussi/firmware/puritieaq/ncp_app/build --skip-rebuild -r nrfjprog --dev-id 683274154
    [16:40:02] Success.
    IMPORTANT: The data below could contain sensitive or confidential information about your environment.
    If you do not wish this to be seen by others, please make sure to remove it before sharing.

    For help and support, visit the Nordic DevZone at devzone.nordicsemi.com/.

    {
    "platform": {
    "os": "darwin",
    "osVersion": "Darwin Kernel Version 22.3.0: Mon Jan 30 20:38:43 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T8112",
    "osKernel": "22.3.0",
    "vscode": "1.76.2",
    "electron": "19.1.11",
    "node": "v16.14.2"
    },
    "system": {
    "date": "2023-03-23T15:40:42.161Z",
    "vscodeRoot": "/Applications/Visual Studio Code.app/Contents/Resources/app",
    "nrfConnectForDesktopInstalled": false,
    "vscodeUptime": "00:01:40",
    "osUptime": "67:36:35",
    "cpu": {
    "model": "Apple M2",
    "speed": "24 MHz",
    "count": 4
    },
    "memory": {
    "total": "8.00 GB",
    "free": "0.11 GB"
    }
    },
    "workspace": {
    "name": "Senza titolo (Area di lavoro)",
    "workspaceFile": "1679405089592",
    "folders": [
    "/Users/marcorussi/firmware/test/hello_world",
    "/Users/marcorussi/firmware/puritieaq/ncp_app"
    ]
    },
    "extensions": {
    "internal": {
    "nordic-semiconductor.nrf-connect": {
    "version": "2023.2.56",
    "path": "/Users/marcorussi/.vscode/extensions/nordic-semiconductor.nrf-connect-2023.2.56-darwin-arm64",
    "isActive": true
    },
    "nordic-semiconductor.nrf-terminal": {
    "version": "2022.11.29",
    "path": "/Users/marcorussi/.vscode/extensions/nordic-semiconductor.nrf-terminal-2022.11.29",
    "isActive": true
    },
    "nordic-semiconductor.nrf-devicetree": {
    "version": "2022.11.153",
    "path": "/Users/marcorussi/.vscode/extensions/nordic-semiconductor.nrf-devicetree-2022.11.153",
    "isActive": true
    },
    "nordic-semiconductor.nrf-kconfig": {
    "version": "2022.11.50",
    "path": "/Users/marcorussi/.vscode/extensions/nordic-semiconductor.nrf-kconfig-2022.11.50",
    "isActive": true
    }
    },
    "external": {
    "marus25.cortex-debug": "1.10.0",
    "ms-vscode.cpptools": "1.14.5",
    "ms-vscode.js-debug": "1.76.1",
    "ms-vscode.js-debug-companion": "1.0.18",
    "ms-vscode.vscode-js-profile-table": "1.0.3",
    "mcu-debug.debug-tracker-vscode": "0.0.15",
    "mcu-debug.memory-view": "0.0.20",
    "mcu-debug.rtos-views": "0.0.6",
    "MS-CEINTL.vscode-language-pack-it": "1.76.2023031509",
    "ms-vscode.cpptools-extension-pack": "1.3.0",
    "ms-vscode.cpptools-themes": "2.0.0",
    "trond-snekvik.gnu-mapfiles": "1.1.0"
    }
    },
    "tools": {
    "/Users/marcorussi/zephyr-sdk-0.15.2/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc": "0.15.2",
    "/Applications/SEGGER/JLink/JLinkExe": "7.80c",
    "/usr/local/bin/nrfjprog": "10.19.0",
    "nrfutil": "Not found",
    "/opt/homebrew/bin/cmake": "3.26.0",
    "/opt/homebrew/bin/west": "1.0.0",
    "/opt/homebrew/bin/python3": "3.11.2",
    "/opt/homebrew/bin/ninja": "1.11.1",
    "/opt/homebrew/bin/gperf": "3.1",
    "/opt/homebrew/bin/dtc": "1.7.0",
    "gn": "Not found",
    "/usr/bin/git": "2.37.1 (Apple Git-137.1)",
    "gdbPath": "/Users/marcorussi/zephyr-sdk-0.15.2/arm-zephyr-eabi/bin/arm-zephyr-eabi-gdb"
    },
    "sdks": [
    {
    "version": "2.2.0",
    "path": "/Users/marcorussi/ncs"
    }
    ],
    "toolchains": [],
    "connectedDevices": [
    {
    "serialNumber": "683274154"
    }
    ],
    "deviceProviders": [
    "nrfjprog"
    ],
    "config": {
    "nordic-semiconductor.nrf-connect": {
    "topdir": "${nrf-connect.sdk:2.2.0}",
    "toolchain": {
    "path": "PATH"
    },
    "ozonePath": "",
    "applications": [
    "/Users/marcorussi/firmware/puritieaq/ncp_app",
    "${workspaceFolder}"
    ],
    "applicationOptions": {},
    "kconfig": {
    "interface": "kconfig",
    "executeInDefaultShell": false
    },
    "welcome": {
    "showOnStartup": true
    },
    "west": {
    "env": {
    "$base": "terminal"
    }
    },
    "boardRoots": [],
    "enableTelemetry": true,
    "taskBindings": {},
    "debugging": {
    "backend": "nRF Debug",
    "flash": true,
    "bindings": {
    "/Users/marcorussi/firmware/puritieaq/ncp_app/build": "Launch build"
    }
    },
    "activeAppFollowActiveEditor": true
    },
    "nordic-semiconductor.nrf-terminal": {
    "terminalMode": "character",
    "scrollBack": 1000
    },
    "marus25.cortex-debug": {
    "armToolchainPath": null,
    "armToolchainPrefix": "arm-none-eabi",
    "gdbPath": null,
    "objdumpPath": null,
    "JLinkGDBServerPath": null,
    "openocdPath": null,
    "pyocdPath": null,
    "PEGDBServerPath": null,
    "stutilPath": null,
    "stlinkPath": null,
    "stm32cubeprogrammer": null,
    "enableTelemetry": true,
    "registerUseNaturalFormat": true,
    "variableUseNaturalFormat": true,
    "dbgServerLogfile": null,
    "showDevDebugOutput": "none"
    }
    },
    "environment": {
    "westExe": "west",
    "westEnv": {
    "ELECTRON_RUN_AS_NODE": "1",
    "HOME": "/Users/marcorussi",
    "PATH": "/Users/marcorussi/zephyr-sdk-0.15.2/arm-zephyr-eabi/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin",
    "ZEPHYR_BASE": "/Users/marcorussi/ncs/zephyr",
    "ZEPHYR_TOOLCHAIN_VARIANT": "zephyr",
    "USER": "marcorussi"
    },
    "inherited": {
    "ELECTRON_RUN_AS_NODE": "1",
    "HOME": "/Users/marcorussi",
    "PATH": "/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin",
    "USER": "marcorussi"
    },
    "toolchainPath": "PATH"
    },
    "terminal": {
    "shell": null,
    "defaultProfile": null
    }
    }


  • Hi,

    It looks like you installed tools manually. What happens to debugging if your build configuration does not include Enable Debug Options?

    Best regards,
    Dejan

  • Hi Dejan,

    sorry for my late reply.

    I don't know how but I got it to work. I use the "Enable Debug Options" feature of the configuration build.

    Anyway I have noticed that if I leave the firmware running (in Debug mode) without breakpoints then it runs fine. If instead I stop at a breakpoint and then step forward the firmware crashes (see attached picture). I tried to increase the stack size of a couple of tasks with no luck. Do you know what the problem could be? Thanks.

  • Hi,

    The error here might be related to the timing problems. Debugging might cause problems with time-sensitive applications. You could try using logging instead of breakpoints.

    Best regards,
    Dejan

  • Hi Dejan,

    yes I guess it has to do with Thread/radio timing and interrupt stuff.... 

    I use logging but I wish I could debug as that's the point of using VS code.

    I'll close this ticket and eventually open a new one.

    Thanks.

    Cheers.

    Marco

Related