Updating repositories and tools

After you install the nRF Connect SDK, regularly check for updates to repositories and tools. The west tool is updated regularly, like any other required Python dependency package.

You might also want to switch to a newer release or check out the latest state of development. However, if you work with a specific release of the nRF Connect SDK, you do not need to update your repositories, because the release will not change. For an overview of changes in the latest releases, see Release notes.

Updating the repositories

Use the method corresponding to the way you installed the nRF Connect SDK, as described in the following sections.

Updating in Visual Studio Code

The nRF Connect for VS Code extension lets you update the associated nRF Connect SDK repositories within the Source Control View. For detailed instructions, see the West integration section of the extension’s documentation.

Updating in Toolchain Manager

Note

The SDK versions available in Toolchain Manager are for specific releases. Updating the SDK repositories in Toolchain Manager might therefore be required only in exceptional situations.

If you installed the nRF Connect SDK automatically using the Toolchain Manager, complete the following steps to update the repositories in Toolchain Manager:

  1. Open the Toolchain Manager application in nRF Connect for Desktop.

  2. Click the button with the arrow pointing down next to the installed nRF Connect SDK version to expand the drop-down menu with options.

    The Toolchain Manager dropdown menu for the installed nRF Connect SDK version, cropped

    The Toolchain Manager dropdown menu options

  3. In the drop-down menu, click Update SDK.

Updating from command line

To manage the nrf repository (the manifest repository) from command line, use Git. To make sure that you have the latest changes, run git fetch origin to fetch the latest code from the sdk-nrf repository. Checking out a branch or tag in the nrf repository gives you a different version of the manifest file. Running west update updates the project repositories to the state specified in this manifest file.

Note

If you get an error message when running west, update west to the latest version. See Troubleshooting West if you need more information.

Examples of commands

To switch to release v2.1.1 of the nRF Connect SDK, enter the following commands in the ncs/nrf directory:

git fetch origin
git checkout v2.1.1
west update

To update to a particular revision (SHA), make sure that you have that particular revision locally before you check it out (by running git fetch origin):

git fetch origin
git checkout 224bee9055d986fe2677149b8cbda0ff10650a6e
west update

To switch to the latest state of development, enter the following commands:

git fetch origin
git checkout origin/main
west update

Note

Run west update every time you change or modify the current working branch (for example, when you pull, rebase, or check out a different branch). This will bring the project repositories to the matching revision defined by the manifest file.

Updating nRF Connect for VS Code extension

Visual Studio Code checks for extension updates and automatically installs them when they are available. After an extension is updated, Visual Studio Code prompts you to reload the application.

If you disabled automatic updates:

  1. Open the Extensions tab and locate the nRF Connect for VS Code extension.

  2. The Update button appears when an update is available. Click the button to install the update.

Updating toolchain in Toolchain Manager

If you installed the nRF Connect SDK automatically using the Toolchain Manager, complete the following steps to update the toolchain in Toolchain Manager:

  1. Open the Toolchain Manager application in nRF Connect for Desktop.

  2. Click the button with the arrow pointing down next to the installed nRF Connect SDK version to expand the drop-down menu with options.

    The Toolchain Manager dropdown menu for the installed nRF Connect SDK version, cropped

    The Toolchain Manager dropdown menu options

  3. In the drop-down menu, click Update toolchain.

Updating west from command line

To update west to the latest available version in the PyPi repository, run the following command in the command window:

pip3 install -U west

Pointing the repositories to the right remotes after they were moved

Before the nRF Connect SDK version 1.3.0, the Git repositories were moved from the NordicPlayground GitHub organization to the nrfconnect organization. They were also renamed, replacing the fw-nrfconnect- prefix with sdk-.

The full list of repositories with their old and new URLs is in the following table:

Old URL

New URL

File system path

https://github.com/NordicPlayground/fw-nrfconnect-nrf

https://github.com/nrfconnect/sdk-nrf

ncs/nrf

https://github.com/NordicPlayground/fw-nrfconnect-zephyr

https://github.com/nrfconnect/sdk-zephyr

ncs/zephyr

https://github.com/NordicPlayground/fw-nrfconnect-mcuboot

https://github.com/nrfconnect/sdk-mcuboot

ncs/bootloader/mcuboot

https://github.com/NordicPlayground/fw-nrfconnect-mcumgr

https://github.com/nrfconnect/sdk-mcumgr

ncs/modules/lib/mcumgr

https://github.com/NordicPlayground/nrfxlib

https://github.com/nrfconnect/sdk-nrfxlib

ncs/nrfxlib

If you cloned the repositories before the move, your local repositories and forks of the nRF Connect SDK repositories are automatically be redirected to the new ones. However, you should point them directly to their new locations as described in this section.

To change the remotes, complete the following steps:

  1. Rename any personal forks that you have of the nRF Connect SDK repositories to their new names:

    1. Visit your personal fork in a browser. For example, to rename the fw-nrfconnect-nrf repository, access your fork on GitHub (https://github.com/<username>/fw-nrfconnect-nrf, where <username> is your GitHub account name).

    2. Switch to the Settings tab and edit the name in the Repository name field to sdk-nrf.

  2. Rename the remotes:

    1. Go to your local copy of each of the repositories listed in the preceding table.

    2. Enter the following command:

      git remote set-url remote_name new_url

      In this command, replace remote_name with the name of your remote (for example, origin for your fork or ncs for the upstream repository) and new_url with the URL of your fork or the new URL from the preceding table. If you are not sure about the remotes that are configured in your local repository, enter git remote -v to see your remotes.

For example, to point your existing fw-nrfconnect-nrf clone to its new URL, enter the following command:

cd ncs/nrf
git remote set-url origin https://github.com/nrfconnect/sdk-nrf

Similarly, to point your existing fw-nrfconnect-zephyr clone to the new URL, enter the following command:

cd  ncs/zephyr
git remote set-url ncs https://github.com/nrfconnect/sdk-zephyr

For more information about remotes and how to handle them, see Forking a repository of the nRF Connect SDK.