diff --git a/doc/nrf/device_guides/working_with_nrf/nrf70/gs.rst b/doc/nrf/device_guides/working_with_nrf/nrf70/gs.rst index 1e2932fc8f8b..26566c13662b 100644 --- a/doc/nrf/device_guides/working_with_nrf/nrf70/gs.rst +++ b/doc/nrf/device_guides/working_with_nrf/nrf70/gs.rst @@ -1,18 +1,26 @@ .. _nrf7002dk_nrf5340: -Getting started with nRF7002 DK -############################### +Getting started with nRF70 Series +################################# .. contents:: :local: - :depth: 2 + :depth: 4 + +This page gets you started with your nRF70 Series devices using the |NCS|. + +Supported development boards +**************************** + +nRF7002 DK +========== The nRF7002 DK (PCA10143) is a single-board development kit for evaluation and development on the nRF7002, a Wi-Fi® companion IC to Nordic Semiconductor's nRF5340 System-on-Chip (SoC) host processor. Overview -******** +-------- -The nRF7002 is an IEEE 802.11ax (Wi-Fi 6) compliant solution that implements the Wi-Fi physical layer and MAC layer protocols. +The nRF7002 is an IEEE 802.11ax (Wi-Fi 6) compliant solution that implements the Wi-Fi physical layer and Medium Access Control (MAC) layer protocols. It implements the Wi-Fi driver software on the nRF5340 host processor communicating over the QSPI bus. The nRF5340 host is a dual-core SoC based on the Arm® Cortex®-M33 architecture. @@ -31,7 +39,7 @@ The ``nrf7002dk_nrf5340_cpunet`` build target provides support for the network c Hardware -******** +-------- The nRF7002 DK has two external oscillators: @@ -39,7 +47,7 @@ The nRF7002 DK has two external oscillators: * The frequency of the main clock is 32 MHz. Supported features -================== +^^^^^^^^^^^^^^^^^^ The ``nrf7002dk_nrf5340_cpuapp`` board configuration supports the following hardware features: @@ -117,25 +125,25 @@ The ``nrf7002dk_nrf5340_cpunet`` board configuration supports the following hard Other hardware features are not supported by the |NCS| kernel. Connections and IOs -=================== +^^^^^^^^^^^^^^^^^^^ The connections and IOs supported by the development kit are listed in this section. LED ---- +""" * LED1 (green) = P1.06 * LED2 (green) = P1.07 Push buttons ------------- +"""""""""""" * BUTTON1 = SW1 = P1.08 * BUTTON2 = SW2 = P1.09 * BOOT = SW5 = boot/reset Wi-Fi control -------------- +""""""""""""" * BUCKEN = P0.12 * IOVDD CONTROL = P0.31 @@ -146,7 +154,7 @@ Wi-Fi control * COEX_GRANT = P0.24 Security components -=================== +^^^^^^^^^^^^^^^^^^^ The following security components are available: @@ -158,7 +166,7 @@ The following security components are available: * Secure boot. Programming and debugging -************************* +------------------------- The nRF5340 application core supports the Armv8-M Security Extension. Applications built for the ``nrf7002dk_nrf5340_cpuapp`` board boot by default in the secure state. @@ -168,7 +176,7 @@ nRF5340 IDAU can configure bus accesses by the nRF5340 network core to have the This allows to build and run secure-only applications on the nRF5340 SoC. Building |NCS| applications with Arm TrustZone -============================================== +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Applications on nRF5340 can use Cortex-M Security Extensions (CMSE) and separate firmware for the application core between Secure Processing Environment (SPE) and Non-Secure Processing Environment (NSPE). You can build SPE using either |NCS| or `Trusted Firmware M`_ (TF-M). @@ -180,7 +188,7 @@ For information about Cortex-M Security Extensions (CMSE) and the difference bet By default, SPE for the nRF5340 application core is built using TF-M. Building the firmware with TF-M -------------------------------- +""""""""""""""""""""""""""""""" If you want to use |NCS| to build the firmware image separated in SPE with TF-M and NSPE, complete the following steps: @@ -202,7 +210,7 @@ If you want to use |NCS| to build the firmware image separated in SPE with TF-M Building the secure firmware using |NCS| ----------------------------------------- +"""""""""""""""""""""""""""""""""""""""" If you want to use |NCS| to build the firmware images with CMSE enabled, but without TF-M, complete the following steps: @@ -217,12 +225,12 @@ When building application with SPE and NSPE for the nRF5340 application core, th SPU configuration must be applied before jumping to the application in NSPE. Building application without CMSE -================================= +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Build the |NCS| application as described in :ref:`gs_programming`, using the ``nrf7002dk_nrf5340_cpuapp`` build target for the firmware running on the nRF5340 application core and the ``nrf7002dk_nrf5340_cpunet`` build target for the firmware running on the nRF5340 network core. Programming the firmware to the DK -================================== +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Follow the instructions in the :ref:`gs_programming` page to build and flash applications. @@ -230,13 +238,13 @@ Follow the instructions in the :ref:`gs_programming` page to build and flash app To flash and debug applications on the nRF7002 DK, you must use the `nRF Command Line Tools`_ version 10.12.0 or above. Debugging -========= +^^^^^^^^^ See the :ref:`testing` page for information about debugging. Testing the LEDs and buttons in the nRF7002 DK -********************************************** +---------------------------------------------- The following samples allow you to test if the buttons (or switches) and LEDs on the development kit are working properly with |NCS|: @@ -245,3 +253,123 @@ The following samples allow you to test if the buttons (or switches) and LEDs on Build and flash the samples to make sure |NCS| is running correctly on your development kit. For the button and LED definitions, see the :file:`boards/arm/nrf7002dk_nrf5340/nrf5340_cpuapp_common.dts` file. + +.. _nrf70_gs_shields_expansion_boards: + +Shields and expansion boards +**************************** + +Shields and expansion boards are add-on hardware that can be attached to a development kit or prototyping platform to extend their features and functionalities. + +nRF7002 EK +========== + +The nRF7002 :term:`Evaluation Kit (EK)` is a versatile evaluation kit in the form of an Arduino shield. +The kit can be used to provide Wi-Fi connectivity and Wi-Fi-based locationing to compatible development or evaluation boards through the nRF7002 Wi-Fi 6 companion :term:`Integrated Circuit (IC)`. + +The nRF7002 EK features the nRF7002 companion IC. +In addition, the shield may be used to emulate the nRF7001 and nRF7000 companion IC variants. + +Overview +-------- + +The nRF7002 EK (PCA63556) is designed to provide Wi-Fi connectivity and Wi-Fi (SSID) scanning capabilities via the nRF7002 companion IC to a compatible host development board. + +The nRF7002 EK features an Arduino shield form factor and interface connector that allows it to be used with Arduino compatible boards, such as the `nRF52840 DK `_, `nRF5340 DK `_, or `nRF9160 DK `_. +This interface is used to connect the nRF7002 companion device to a host :term:`System on Chip (SoC)`, Microprocessor Unit (MPU), or :term:`Microcontroller Unit (MCU)`. + +.. figure:: images/nRF7002ek.png + :alt: nRF7002 EK + + nRF7002 EK + +Pin assignment +-------------- + +Arduino interface connector +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The Arduino interface of the nRF7002 EK is compatible with the Nordic nRF52840 DK, nRF5340 DK, and nRF9160 DK. +The interface connectors are described in the following table: + ++------------------+-----------------------+----------------------------------+ +| Arduino pin name | nRF7002 Signal | Function | ++==================+=======================+==================================+ +| D0 | IOVDD_EN | Enable power to I/O interface | ++------------------+-----------------------+----------------------------------+ +| D1 | BUCK_EN | Enable power to nRF7002 | ++------------------+-----------------------+----------------------------------+ +| D2 | COEX_STATUS0 | Coexistence status 0 | ++------------------+-----------------------+----------------------------------+ +| D3 | COEX_REQ | Coexistence request from host | ++------------------+-----------------------+----------------------------------+ +| D4 | COEX_GRANT | Coexistence grant to host | ++------------------+-----------------------+----------------------------------+ +| D5 | SW_CTRL0 | Switch control 0 | ++------------------+-----------------------+----------------------------------+ +| D6 | COEX_STATUS1 | Coexistence status 1 | ++------------------+-----------------------+----------------------------------+ +| D7 | HOST_IRQ | Interrupt request to host | ++------------------+-----------------------+----------------------------------+ +| D8 | DATA2 | QSPI data line 2 | ++------------------+-----------------------+----------------------------------+ +| D9 | DATA3 | QSPI data line 3 | ++------------------+-----------------------+----------------------------------+ +| D10 | SS | Slave select | ++------------------+-----------------------+----------------------------------+ +| D11 | MISO/DATA1 | QSPI/SPI Data line 1/ Slave Out | ++------------------+-----------------------+----------------------------------+ +| D12 | MOSI/DATA0 | QSPI/SPI Data line 0/ Slave In | ++------------------+-----------------------+----------------------------------+ +| D13 | CLK | QSPI/SPI Clock | ++------------------+-----------------------+----------------------------------+ +| GND | GND | Ground | ++------------------+-----------------------+----------------------------------+ +| AREF | N.C. | Not used | ++------------------+-----------------------+----------------------------------+ +| SDA | N.C. | Not used | ++------------------+-----------------------+----------------------------------+ +| SCL | N.C. | Not used | ++------------------+-----------------------+----------------------------------+ + +Programming +----------- + +To add support for the nRF7002 EK on an application running on a compatible host development board, the ``SHIELD`` setting must be specified. + +To add support for the nRF7002 EK and the nRF7002 IC, set ``-DSHIELD=nrf7002ek`` when you invoke ``west build`` or ``cmake`` in your |NCS| application. +To emulate support for the nRF7001 or nRF7000 ICs, specify ``-DSHIELD=nrf7002ek_nrf7001`` or ``-DSHIELD=nrf7002ek_nrf7000``, respectively. + +Alternatively, add the shield in the project's :file:`CMakeLists.txt` file, specifying the below settings, depending on which IC is to be used: + +.. code-block:: console + + set(SHIELD nrf7002ek) + +.. code-block:: console + + set(SHIELD nrf7002ek_nrf7001) + +.. code-block:: console + + set(SHIELD nrf7002ek_nrf7000) + +To build with the |nRFVSC|, specify ``-DSHIELD=nrf7002ek`` in the **Extra Cmake arguments** field. +See :ref:`cmake_options`. + +To build for the nRF7002 EK and the nRF7002 IC with nRF5340 DK, use the ``nrf5340dk_nrf5340_cpuapp`` build target with the CMake ``SHIELD`` variable set to ``nrf7002ek``. +For example, you can use the following command when building on the command line: + +.. code-block:: console + + west build -b nrf5340dk_nrf5340_cpuapp -- -DSHIELD=nrf7002ek + +To build for the nRF7002 EK and the nRF7001 or nRF7000 ICs, you can use the corresponding shield name in the above command. + +References +---------- + +* `nRF70 Series product page`_ +* `nRF70 Series hardware documentation`_ +* `nRF7002 Product Specification`_ +* `nRF7001 Product Specification`_ diff --git a/doc/nrf/device_guides/working_with_nrf/nrf70/images/nRF7002ek.png b/doc/nrf/device_guides/working_with_nrf/nrf70/images/nRF7002ek.png new file mode 100644 index 000000000000..aa376586de6b Binary files /dev/null and b/doc/nrf/device_guides/working_with_nrf/nrf70/images/nRF7002ek.png differ diff --git a/doc/nrf/links.txt b/doc/nrf/links.txt index dba4776e489e..801f4408372c 100644 --- a/doc/nrf/links.txt +++ b/doc/nrf/links.txt @@ -378,12 +378,14 @@ .. _`Energy efficiency`: https://www.nordicsemi.com/Products/Low-power-cellular-IoT/What-is-cellular-IoT#energy_efficiency .. _`nRF52840 DK Downloads`: https://www.nordicsemi.com/Products/Development-hardware/nRF52840-DK/Download#infotabs +.. _`nRF52840 DK product page`: https://www.nordicsemi.com/Products/Development-hardware/nRF52840-DK/ .. _`nRF52833 DK Downloads`: https://www.nordicsemi.com/Products/Development-hardware/nRF52833-DK/Download#infotabs .. _`nRF52 DK Downloads`: https://www.nordicsemi.com/Products/Development-hardware/nRF52-DK/Download#infotabs .. _`nRF5340 DK Downloads`: https://www.nordicsemi.com/Products/Development-hardware/nRF5340-DK/Download?lang=en#infotabs +.. _`nRF5340 DK product page`: https://www.nordicsemi.com/Products/Development-hardware/nRF5340-DK/ .. _`Nordic Thingy:53`: .. _`Thingy:53 product page`: https://www.nordicsemi.com/thingy53 @@ -520,9 +522,13 @@ .. _`nRF21540`: https://infocenter.nordicsemi.com/topic/struct_fem/struct/nrf21540.html .. _`nRF21540 Product Specification`: https://infocenter.nordicsemi.com/topic/struct_fem/struct/nrf21540_ps.html +.. _`nRF7001 Product Specification`: https://infocenter.nordicsemi.com/topic/ps_nrf7001/keyfeatures_html5.html +.. _`nRF7002 Product Specification`: .. _`Product specification for nRF70 Series devices`: https://infocenter.nordicsemi.com/topic/ps_nrf7002/keyfeatures_html5.html .. _`nRF7002 DK Hardware`: https://infocenter.nordicsemi.com/topic/ug_nrf7002_dk/UG/nrf7002_DK/intro.html +.. _`nRF70 Series hardware documentation`: .. _`nRF70 Series`: https://infocenter.nordicsemi.com/topic/struct_nrf70/struct/nrf70.html +.. _`nRF70 Series product page`: https://www.nordicsemi.com/Products/WiFi/Products#infotabs .. _`Measuring current`: https://infocenter.nordicsemi.com/topic/ug_nrf7002_dk/UG/nrf7002_DK/hw_measure_current.html .. _`Guidelines and application notes for nRF70 Series devices`: https://infocenter.nordicsemi.com/topic/struct_nrf70/struct/nrf70_guidelines.html diff --git a/doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst b/doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst index 04badc3012bb..330ba87f3287 100644 --- a/doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst +++ b/doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst @@ -801,6 +801,7 @@ Documentation * A page on :ref:`ug_wireless_coexistence` in :ref:`protocols`. * Pages on :ref:`thread_device_types` and :ref:`thread_sed_ssed` to the :ref:`ug_thread` documentation. * A new section :ref:`ug_pmic`, containing :ref:`ug_npm1300_features` and :ref:`ug_npm1300_gs`. + * A section about :ref:`nrf70_gs_shields_expansion_boards` in :ref:`nrf7002dk_nrf5340` user guide. * Updated: