Skip to content

Commit 7549353

Browse files
greg-fernordicjm
authored andcommitted
doc: requirements: nRF Util bundled with toolchain
Added nRF Util to the list of required tools bundled with the toolchain. Updated ncs_tool_versions.py to account for the subcommand version. Updated nRF Util section in recommended_versions.rst. Updated install_ncs.rst prerequisites for command line. Updated install_sdk_common_prerequisites.txt to remove mention of nRF Util. PR #22969 and NRFU-1571. Signed-off-by: Grzegorz Ferenc <[email protected]>
1 parent b6e5d8e commit 7549353

File tree

5 files changed

+48
-18
lines changed

5 files changed

+48
-18
lines changed

doc/_extensions/ncs_tool_versions.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@
1313
1414
For tool-versions-{os} files:
1515
{TOOL_NAME}_VERSION_{OS}
16+
{TOOL_NAME}_{SUBCOMMAND}_VERSION_{OS}
1617
where OS is one of WIN10, LINUX or DARWIN
18+
where SUBCOMMAND is one of nRF Util subcommands, like DEVICE, SDK-MANAGER, etc.
1719
1820
For pip requirement files:
1921
{TOOL_NAME}_VERSION
@@ -22,6 +24,7 @@
2224
- :ncs-tool-version:`CMAKE_VERSION_LINUX`
2325
- :ncs-tool-version:`SPHINX_VERSION`
2426
- :ncs-tool-version:`SPHINX_NCS_THEME_VERSION`
27+
- :ncs-tool-version:`NRFUTIL_DEVICE_VERSION_LINUX`
2528
2629
"""
2730

@@ -92,6 +95,13 @@ def tool_version_replace(app: Sphinx) -> Callable:
9295
entry = f"{tool_upper}_VERSION_{os}"
9396
versions[entry] = yaml_object[tool]["version"]
9497

98+
# Handle subcommands if they exist
99+
if "subcommands" in yaml_object[tool]:
100+
for subcommand, subcommand_version in yaml_object[tool]["subcommands"].items():
101+
subcommand_upper = subcommand.upper()
102+
subcommand_entry = f"{tool_upper}_{subcommand_upper}_VERSION_{os}"
103+
versions[subcommand_entry] = subcommand_version
104+
95105
elif path.suffix == ".txt":
96106
for line in path.read_text().strip().split("\n"):
97107
tool, version = line.split("=")

doc/nrf/includes/install_sdk_common_prerequisites.txt

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,5 @@
11
* All operating systems:
22

3-
* The latest version of nRF Util, a unified command-line utility for Nordic Semiconductor products.
4-
Check :ref:`operating system versions that support this tool <additional_nordic_sw_tools>` and `download the executable <nRF Util Downloads_>`_.
5-
6-
.. note::
7-
After downloading the nRF Util executable, move it to a directory that is in the system :envvar:`PATH`.
8-
On macOS and Linux, the downloaded file also needs to be given execute permission by typing `chmod +x nrfutil` or by checking the checkbox in the file properties.
9-
10-
* In nRF Util, the latest version of the ``device`` command.
11-
Check `Installing and upgrading nRF Util commands`_ for installation information.
123
* The |jlink_ver| of SEGGER J-Link.
134
Download it from the `J-Link Software and Documentation Pack`_ page.
145
On Windows, `install it manually together with SEGGER USB Driver for J-Link <nRF Util prerequisites_>`_.

doc/nrf/installation/install_ncs.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,14 @@ Depending on your preferred development environment, install the following softw
5858

5959
.. include:: /includes/install_sdk_common_prerequisites.txt
6060

61+
Additionally, just for the development in command line, you need a separate nRF Util download to install the |NCS| toolchain:
62+
63+
* `Download the executable <nRF Util Downloads_>`_ for the latest version of nRF Util.
64+
65+
.. note::
66+
After downloading the nRF Util executable, move it to a directory that is in the system :envvar:`PATH`.
67+
On macOS and Linux, the downloaded file also needs to be given execute permission by typing `chmod +x nrfutil` or by checking the checkbox in the file properties.
68+
6169
.. prerequisites-include-end
6270
6371
.. _gs_installing_toolchain:

doc/nrf/installation/recommended_versions.rst

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ Required tools
7272

7373
The following table shows the tools that are required for working with |NCS| v\ |version|.
7474

75-
The table lists the versions that are used for testing and are installed when using the :ref:`nRF Connect for VS Code extension or nRF Util <install_ncs>`.
75+
The table lists the versions that are used for testing and are installed with the toolchain bundle when using the :ref:`nRF Connect for VS Code extension or command line <install_ncs>`.
7676
Other versions might also work, but are not verified.
7777

7878
.. _req_tools_table:
@@ -102,6 +102,10 @@ Other versions might also work, but are not verified.
102102
- :ncs-tool-version:`PYTHON_VERSION_WIN10`
103103
* - :ref:`west <ncs_west_intro>`
104104
- :ncs-tool-version:`WEST_VERSION_WIN10`
105+
* - nRF Util
106+
- :ncs-tool-version:`NRFUTIL_VERSION_WIN10`
107+
* - nRF Util's `device command <Device command overview_>`_
108+
- :ncs-tool-version:`NRFUTIL_DEVICE_VERSION_WIN10`
105109

106110
.. group-tab:: Linux
107111

@@ -114,7 +118,7 @@ Other versions might also work, but are not verified.
114118
- :ncs-tool-version:`ZEPHYR_SDK_VERSION_LINUX`
115119
* - CMake
116120
- :ncs-tool-version:`CMAKE_VERSION_LINUX`
117-
* - dtc
121+
* - Devicetree compiler (dtc)
118122
- :ncs-tool-version:`DTC_VERSION_LINUX`
119123
* - :ref:`Git <ncs_git_intro>`
120124
- :ncs-tool-version:`GIT_VERSION_LINUX`
@@ -126,6 +130,10 @@ Other versions might also work, but are not verified.
126130
- :ncs-tool-version:`PYTHON_VERSION_LINUX`
127131
* - :ref:`west <ncs_west_intro>`
128132
- :ncs-tool-version:`WEST_VERSION_LINUX`
133+
* - nRF Util
134+
- :ncs-tool-version:`NRFUTIL_VERSION_LINUX`
135+
* - nRF Util's `device command <Device command overview_>`_
136+
- :ncs-tool-version:`NRFUTIL_DEVICE_VERSION_LINUX`
129137

130138
Additionally, you need to install `nrf-udev`_ rules for accessing USB ports on Nordic Semiconductor devices and programming the firmware.
131139

@@ -140,7 +148,7 @@ Other versions might also work, but are not verified.
140148
- :ncs-tool-version:`ZEPHYR_SDK_VERSION_DARWIN`
141149
* - CMake
142150
- :ncs-tool-version:`CMAKE_VERSION_DARWIN`
143-
* - dtc
151+
* - Devicetree compiler (dtc)
144152
- :ncs-tool-version:`DTC_VERSION_DARWIN`
145153
* - :ref:`Git <ncs_git_intro>`
146154
- :ncs-tool-version:`GIT_VERSION_DARWIN`
@@ -152,6 +160,10 @@ Other versions might also work, but are not verified.
152160
- :ncs-tool-version:`PYTHON_VERSION_DARWIN`
153161
* - :ref:`west <ncs_west_intro>`
154162
- :ncs-tool-version:`WEST_VERSION_DARWIN`
163+
* - nRF Util
164+
- :ncs-tool-version:`NRFUTIL_VERSION_DARWIN`
165+
* - nRF Util's `device command <Device command overview_>`_
166+
- :ncs-tool-version:`NRFUTIL_DEVICE_VERSION_DARWIN`
155167

156168
Checking tool versions
157169
.. toggle::
@@ -397,12 +409,15 @@ The `nRF Util development tool`_ is a unified command line utility for Nordic pr
397409
Its functionality is provided through installable and upgradeable commands that are served on a central package registry on the Internet.
398410

399411
The utility follows its own release cycle and has its own `operating system requirements <nRF Util_>`_.
400-
Use the latest available release for development.
412+
The |NCS| toolchain bundle includes the nRF Util version :ncs-tool-version:`NRFUTIL_VERSION_WIN10` and the device command version :ncs-tool-version:`NRFUTIL_DEVICE_VERSION_WIN10`, as listed in :ref:`requirements_toolchain_tools`.
413+
414+
.. note::
415+
416+
When you :ref:`install the nRF Connect SDK <install_ncs>`:
401417

402-
When you :ref:`install the nRF Connect SDK <install_ncs>`, you need to install the following nRF Util commands:
418+
* If you plan to work with command line, you also need to download nRF Util and install the following command in order to get the toolchain bundle:
403419

404-
* `device command <Device command overview_>`_ - The latest version is required as the default :ref:`west runner <programming_selecting_runner>`.
405-
* `sdk-manager command`_ - The latest version is required for working with |NCS| toolchain packages.
406-
You only need to install this command if you are working with command line in the |NCS|.
420+
* `sdk-manager command`_ - The latest version is required for working with |NCS| toolchain packages.
421+
See `Installing and upgrading nRF Util commands`_ for information about how to install this command.
407422

408-
See `Installing and upgrading nRF Util commands`_ for information about how to install these commands.
423+
* If you plan to work with the :ref:`nRF Connect for VS Code extension <requirements_nrfvsc>`, you do not need a separate nRF Util installation to get the toolchain bundle.

doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,12 @@ IDE, OS, and tool support
3434
=========================
3535

3636
* Updated the required `SEGGER J-Link`_ version to v8.42.
37+
* Removed the separate requirement for installation of the `nRF Util's device command <Device command overview_>`_ from the :ref:`install_ncs` page under :ref:`installing_vsc`.
38+
The tool and the command are now included in the |NCS| toolchain bundle.
39+
40+
.. note::
41+
42+
If you plan to work with command line, you still need to download nRF Util and install the ``sdk-manager`` command in order to get the toolchain bundle.
3743

3844
Board support
3945
=============

0 commit comments

Comments
 (0)