Unable to install SDK via VS Code

I have installed nRF connect 2025.9.732 on my VS code Version: 1.103.2 on Ubuntu 22.04.

I am able to install the toolchains successful but I am getting this weird error message

[14:05:44] nrfutil-sdk-manager install,v3.1.0,--sdk-path,/home/akshay/ncs/v3.1.0,--type,nrf: Install toolchain v3.1.0
[14:05:44] nrfutil-sdk-manager install,v3.1.0,--sdk-path,/home/akshay/ncs/v3.1.0,--type,nrf: Toolchain with version v3.1.0 already installed: success
[14:05:44] nrfutil-sdk-manager install,v3.1.0,--sdk-path,/home/akshay/ncs/v3.1.0,--type,nrf: Calculating SDK checksum
[14:05:53] nrfutil-sdk-manager install,v3.1.0,--sdk-path,/home/akshay/ncs/v3.1.0,--type,nrf: Verified previously download file: success
[14:05:53] nrfutil-sdk-manager install,v3.1.0,--sdk-path,/home/akshay/ncs/v3.1.0,--type,nrf: Unpack SDK v3.1.0
[14:06:06] nrfutil-sdk-manager install,v3.1.0,--sdk-path,/home/akshay/ncs/v3.1.0,--type,nrf: Unpacked SDK tarball: success
[west]: usage: west [-h] [-z ZEPHYR_BASE] [-v] [-q] [-V] <command> ...
[west]: west: unknown command "zephyr-export"; workspace /home/akshay/ncs/v3.1.0 does not define this extension command -- try "west help" and "west -vv status"

[west]: exited with code 1.

[west]: FATAL ERROR: failed manifest import in zephyr (zephyr):
[west]:   Failed importing "west.yml" from revision "ncs-v3.1.0"
[west]:   Hint: zephyr must be cloned, owned by the user and its manifest-rev ref must point to a commit with the import data
[west]:   To fix, run "west update. If it still fails, try "west -vv ..."

[west]: exited with code 1.

[west]: FATAL ERROR: failed manifest import in zephyr (zephyr):
[west]:   Failed importing "west.yml" from revision "ncs-v3.1.0"
[west]:   Hint: zephyr must be cloned, owned by the user and its manifest-rev ref must point to a commit with the import data
[west]:   To fix, run "west update. If it still fails, try "west -vv ..."

[west]: exited with code 1.

I have west installed globally via pip, but I do NOT have ZEPHYR os installed in ~/zephyrproject.

I am not sure what that error is, do I have to go to /home/akshay/ncs/v3.1.0 and type west update?

  • Same issue with SDK v3.0.2, this is the one before v3.1.0

  • I have also tried, using the nrfutil with sdk-manager

    These are the steps I took:

    1. Uninstall the toolchain and SDK
    2. nrfutil sdk-manager toolchain install --ncs-version v3.1.0
    3. cd ncs && nrfutil sdk-manager toolchain launch --ncs-version v3.1.0 --shell
    4. west init -m github.com/.../sdk-nrf --mr v3.1.0 v3.1.0
    5. cd v3.1.0/
    6. west update

    And this is the output

    === updating zephyr (zephyr):
    --- zephyr: initializing
    Initialized empty Git repository in /home/akshay/ncs/v3.1.0/zephyr/.git/
    --- zephyr: fetching, need revision ncs-v3.1.0
    remote: Enumerating objects: 1342084, done.
    remote: Total 1342084 (delta 0), reused 0 (delta 0), pack-reused 1342084 (from 1)
    Receiving objects: 100% (1342084/1342084), 675.76 MiB | 6.49 MiB/s, done.
    Resolving deltas: 100% (1014834/1014834), done.
    From https://github.com/nrfconnect/sdk-zephyr
     * tag                       ncs-v3.1.0                -> FETCH_HEAD
     * [new tag]                 ncs-v3.0.99-snapshot1     -> ncs-v3.0.99-snapshot1
     * [new tag]                 ncs-v3.1.0                -> ncs-v3.1.0
     * [new tag]                 ncs-v3.1.0-rc1            -> ncs-v3.1.0-rc1
     * [new tag]                 ncs-v3.1.0-rc2            -> ncs-v3.1.0-rc2
     * [new tag]                 v1.13.99-ncs1             -> v1.13.99-ncs1
     * [new tag]                 v1.13.99-ncs1-rc1         -> v1.13.99-ncs1-rc1
     * [new tag]                 v1.13.99-ncs2             -> v1.13.99-ncs2
     * [new tag]                 v1.13.99-ncs2-rc1         -> v1.13.99-ncs2-rc1
     * [new tag]                 v1.13.99-ncs2-rc2         -> v1.13.99-ncs2-rc2
     * [new tag]                 v1.14.99-ncs1             -> v1.14.99-ncs1
     * [new tag]                 v1.14.99-ncs1-rc1         -> v1.14.99-ncs1-rc1
     * [new tag]                 v1.14.99-ncs1-rc2         -> v1.14.99-ncs1-rc2
     * [new tag]                 v1.14.99-ncs2             -> v1.14.99-ncs2
     * [new tag]                 v1.14.99-ncs2-rc1         -> v1.14.99-ncs2-rc1
     * [new tag]                 v1.14.99-ncs2-rc2         -> v1.14.99-ncs2-rc2
     * [new tag]                 v1.14.99-ncs2-rc3         -> v1.14.99-ncs2-rc3
     * [new tag]                 v1.14.99-ncs2-rc4         -> v1.14.99-ncs2-rc4
     * [new tag]                 v1.14.99-ncs3-snapshot1   -> v1.14.99-ncs3-snapshot1
     * [new tag]                 v1.14.99-ncs3-snapshot2   -> v1.14.99-ncs3-snapshot2
     * [new tag]                 v2.0.99-ncs1              -> v2.0.99-ncs1
     * [new tag]                 v2.0.99-ncs1-rc1          -> v2.0.99-ncs1-rc1
     * [new tag]                 v2.0.99-ncs1-rc2          -> v2.0.99-ncs1-rc2
     * [new tag]                 v2.0.99-ncs1-rc3          -> v2.0.99-ncs1-rc3
     * [new tag]                 v2.0.99-ncs1-snapshot1    -> v2.0.99-ncs1-snapshot1
     * [new tag]                 v2.1.0-ncs1-snapshot1     -> v2.1.0-ncs1-snapshot1
     * [new tag]                 v2.1.99-ncs1              -> v2.1.99-ncs1
     * [new tag]                 v2.1.99-ncs1-rc1          -> v2.1.99-ncs1-rc1
     * [new tag]                 v2.1.99-ncs1-rc2          -> v2.1.99-ncs1-rc2
     * [new tag]                 v2.1.99-ncs1-snapshot1    -> v2.1.99-ncs1-snapshot1
     * [new tag]                 v2.3.0-rc1-ncs1           -> v2.3.0-rc1-ncs1
     * [new tag]                 v2.3.0-rc1-ncs1-rc1       -> v2.3.0-rc1-ncs1-rc1
     * [new tag]                 v2.3.0-rc1-ncs1-rc2       -> v2.3.0-rc1-ncs1-rc2
     * [new tag]                 v2.3.0-rc1-ncs1-rc3       -> v2.3.0-rc1-ncs1-rc3
     * [new tag]                 v2.3.0-rc1-ncs1-snapshot1 -> v2.3.0-rc1-ncs1-snapshot1
     * [new tag]                 v2.3.0-rc1-ncs2           -> v2.3.0-rc1-ncs2
     * [new tag]                 v2.3.0-rc1-ncs3           -> v2.3.0-rc1-ncs3
     * [new tag]                 v2.4.0-ncs1               -> v2.4.0-ncs1
     * [new tag]                 v2.4.0-ncs1-rc1           -> v2.4.0-ncs1-rc1
     * [new tag]                 v2.4.0-ncs1-rc2           -> v2.4.0-ncs1-rc2
     * [new tag]                 v2.4.0-ncs1-snapshot1     -> v2.4.0-ncs1-snapshot1
     * [new tag]                 v2.4.0-ncs2               -> v2.4.0-ncs2
     * [new tag]                 v2.4.0-ncs2-rc1           -> v2.4.0-ncs2-rc1
     * [new tag]                 v2.4.99-ncs1              -> v2.4.99-ncs1
     * [new tag]                 v2.4.99-ncs1-rc1          -> v2.4.99-ncs1-rc1
     * [new tag]                 v2.4.99-ncs1-snapshot1    -> v2.4.99-ncs1-snapshot1
     * [new tag]                 v2.4.99-ncs2              -> v2.4.99-ncs2
     * [new tag]                 v2.4.99-ncs2-1            -> v2.4.99-ncs2-1
     * [new tag]                 v2.4.99-ncs2-rc1          -> v2.4.99-ncs2-rc1
     * [new tag]                 v2.6.0-ncs1-rc3           -> v2.6.0-ncs1-rc3
     * [new tag]                 v2.6.0-rc1-ncs1           -> v2.6.0-rc1-ncs1
     * [new tag]                 v2.6.0-rc1-ncs1-rc1       -> v2.6.0-rc1-ncs1-rc1
     * [new tag]                 v2.6.0-rc1-ncs1-snapshot1 -> v2.6.0-rc1-ncs1-snapshot1
     * [new tag]                 v2.6.99-ncs1              -> v2.6.99-ncs1
     * [new tag]                 v2.6.99-ncs1-1            -> v2.6.99-ncs1-1
     * [new tag]                 v2.6.99-ncs1-rc1          -> v2.6.99-ncs1-rc1
     * [new tag]                 v2.6.99-ncs1-rc2          -> v2.6.99-ncs1-rc2
     * [new tag]                 v2.6.99-ncs1-snapshot1    -> v2.6.99-ncs1-snapshot1
     * [new tag]                 v2.7.0-ncs1               -> v2.7.0-ncs1
     * [new tag]                 v2.7.0-ncs1-rc1           -> v2.7.0-ncs1-rc1
     * [new tag]                 v2.7.0-ncs1-rc2           -> v2.7.0-ncs1-rc2
     * [new tag]                 v2.7.0-ncs1-snapshot1     -> v2.7.0-ncs1-snapshot1
     * [new tag]                 v2.7.0-ncs1-snapshot2     -> v2.7.0-ncs1-snapshot2
     * [new tag]                 v2.7.99-ncs1              -> v2.7.99-ncs1
     * [new tag]                 v2.7.99-ncs1-1            -> v2.7.99-ncs1-1
     * [new tag]                 v2.7.99-ncs1-rc1          -> v2.7.99-ncs1-rc1
     * [new tag]                 v2.7.99-ncs1-rc2          -> v2.7.99-ncs1-rc2
     * [new tag]                 v3.0.99-ncs1              -> v3.0.99-ncs1
     * [new tag]                 v3.0.99-ncs1-1            -> v3.0.99-ncs1-1
     * [new tag]                 v3.0.99-ncs1-rc1          -> v3.0.99-ncs1-rc1
     * [new tag]                 v3.0.99-ncs1-rc2          -> v3.0.99-ncs1-rc2
     * [new tag]                 v3.0.99-ncs1-snapshot1    -> v3.0.99-ncs1-snapshot1
     * [new tag]                 v3.1.99-ncs1              -> v3.1.99-ncs1
     * [new tag]                 v3.1.99-ncs1-1            -> v3.1.99-ncs1-1
     * [new tag]                 v3.1.99-ncs1-2            -> v3.1.99-ncs1-2
     * [new tag]                 v3.1.99-ncs1-3            -> v3.1.99-ncs1-3
     * [new tag]                 v3.1.99-ncs1-rc1          -> v3.1.99-ncs1-rc1
     * [new tag]                 v3.1.99-ncs1-rc2          -> v3.1.99-ncs1-rc2
     * [new tag]                 v3.1.99-ncs1-snapshot1    -> v3.1.99-ncs1-snapshot1
     * [new tag]                 v3.2.99-ncs1              -> v3.2.99-ncs1
     * [new tag]                 v3.2.99-ncs1-rc1          -> v3.2.99-ncs1-rc1
     * [new tag]                 v3.2.99-ncs1-rc2          -> v3.2.99-ncs1-rc2
     * [new tag]                 v3.2.99-ncs1-snapshot1    -> v3.2.99-ncs1-snapshot1
     * [new tag]                 v3.2.99-ncs2              -> v3.2.99-ncs2
     * [new tag]                 v3.2.99-ncs2-rc1          -> v3.2.99-ncs2-rc1
     * [new tag]                 v3.2.99-ncs2-rc2          -> v3.2.99-ncs2-rc2
     * [new tag]                 v3.2.99-ncs2-snapshot1    -> v3.2.99-ncs2-snapshot1
     * [new tag]                 v3.3.99-ncs1              -> v3.3.99-ncs1
     * [new tag]                 v3.3.99-ncs1-1            -> v3.3.99-ncs1-1
     * [new tag]                 v3.3.99-ncs1-2            -> v3.3.99-ncs1-2
     * [new tag]                 v3.3.99-ncs1-3            -> v3.3.99-ncs1-3
     * [new tag]                 v3.3.99-ncs1-rc1          -> v3.3.99-ncs1-rc1
     * [new tag]                 v3.3.99-ncs1-rc2          -> v3.3.99-ncs1-rc2
     * [new tag]                 v3.3.99-ncs1-snapshot1    -> v3.3.99-ncs1-snapshot1
     * [new tag]                 v3.4.99-ncs1              -> v3.4.99-ncs1
     * [new tag]                 v3.4.99-ncs1-1            -> v3.4.99-ncs1-1
     * [new tag]                 v3.4.99-ncs1-1-rc1        -> v3.4.99-ncs1-1-rc1
     * [new tag]                 v3.4.99-ncs1-2            -> v3.4.99-ncs1-2
     * [new tag]                 v3.4.99-ncs1-3            -> v3.4.99-ncs1-3
     * [new tag]                 v3.4.99-ncs1-rc1          -> v3.4.99-ncs1-rc1
     * [new tag]                 v3.4.99-ncs1-rc2          -> v3.4.99-ncs1-rc2
     * [new tag]                 v3.4.99-ncs1-snapshot1    -> v3.4.99-ncs1-snapshot1
     * [new tag]                 v3.5.99-ncs1              -> v3.5.99-ncs1
     * [new tag]                 v3.5.99-ncs1-1            -> v3.5.99-ncs1-1
     * [new tag]                 v3.5.99-ncs1-2            -> v3.5.99-ncs1-2
     * [new tag]                 v3.5.99-ncs1-3            -> v3.5.99-ncs1-3
     * [new tag]                 v3.5.99-ncs1-4            -> v3.5.99-ncs1-4
     * [new tag]                 v3.5.99-ncs1-rc1          -> v3.5.99-ncs1-rc1
     * [new tag]                 v3.5.99-ncs1-rc2          -> v3.5.99-ncs1-rc2
     * [new tag]                 v3.5.99-ncs1-snapshot1    -> v3.5.99-ncs1-snapshot1
     * [new tag]                 v3.6.99-ncs2              -> v3.6.99-ncs2
     * [new tag]                 v3.6.99-ncs2-rc1          -> v3.6.99-ncs2-rc1
     * [new tag]                 v3.6.99-ncs2-rc2          -> v3.6.99-ncs2-rc2
     * [new tag]                 v3.6.99-ncs2-rc3          -> v3.6.99-ncs2-rc3
     * [new tag]                 v3.6.99-ncs2-snapshot1    -> v3.6.99-ncs2-snapshot1
     * [new tag]                 v3.7.99-ncs1              -> v3.7.99-ncs1
     * [new tag]                 v3.7.99-ncs1-rc1          -> v3.7.99-ncs1-rc1
     * [new tag]                 v3.7.99-ncs1-rc2          -> v3.7.99-ncs1-rc2
     * [new tag]                 v3.7.99-ncs1-snapshot1    -> v3.7.99-ncs1-snapshot1
     * [new tag]                 v3.7.99-ncs1-snapshot2    -> v3.7.99-ncs1-snapshot2
     * [new tag]                 v3.7.99-ncs2              -> v3.7.99-ncs2
     * [new tag]                 v3.7.99-ncs2-1            -> v3.7.99-ncs2-1
     * [new tag]                 v3.7.99-ncs2-2            -> v3.7.99-ncs2-2
     * [new tag]                 v3.7.99-ncs2-rc1          -> v3.7.99-ncs2-rc1
     * [new tag]                 v3.7.99-ncs2-rc2          -> v3.7.99-ncs2-rc2
     * [new tag]                 v3.7.99-ncs3              -> v3.7.99-ncs3
     * [new tag]                 v4.0.99-ncs1              -> v4.0.99-ncs1
     * [new tag]                 v4.0.99-ncs1-1            -> v4.0.99-ncs1-1
     * [new tag]                 v4.0.99-ncs1-2            -> v4.0.99-ncs1-2
     * [new tag]                 v4.0.99-ncs1-rc1          -> v4.0.99-ncs1-rc1
     * [new tag]                 v4.0.99-ncs1-rc2          -> v4.0.99-ncs1-rc2
     * [new tag]                 v4.0.99-ncs1-snapshot1    -> v4.0.99-ncs1-snapshot1
     * [new tag]                 v4.1.99-ncs1-snapshot1    -> v4.1.99-ncs1-snapshot1
    Updating files: 100% (47108/47108), done.
    HEAD is now at 1612683d401 [nrf fromlist] tests: spi: spi ctrl peri: nrf54h20dk cpurad uart135 device runtime
    HEAD is now at 1612683d401 [nrf fromlist] tests: spi: spi ctrl peri: nrf54h20dk cpurad uart135 device runtime
    FATAL ERROR: command exited with status 128: show refs/heads/manifest-rev:west.yml

    It still fails to install

  • Hi Akshay,

    Yes, a west update from the /home/akshay/ncs/v3.1.0 should be able to fix this. Yu don't necessarily need a ~/zephyrproject. installed with the NCS, since it contains all the necessary nrf, zephyr etc in it's workspace.

    -Priyanka

  • I tried that, Priyanka. I even tried the nrfutil way, but it still fails. Please see my latest comment

  • Hi Akshay,

    Could you try to open the nRF Connect terminal in the VSCode and then:

    cd  /home/akshay/ncs/v3.1.0

    after that, could you try to:

    west -v update

    Do try this and let me know how it goes.

    -Priyanka

    P.S Please make sure that your SDK and Toolchain are the same.

Related