Skip to content

Commit

Permalink
doc: wifi: Add a section about nRF7002 EK
Browse files Browse the repository at this point in the history
Added a section about nRF7002 EK in the Getting started guide.

SHEL-1826

Signed-off-by: Richa Pandey <richa.pandey@nordicsemi.no>
  • Loading branch information
richabp committed Aug 22, 2023
1 parent 91308a0 commit 5d463d4
Show file tree
Hide file tree
Showing 4 changed files with 155 additions and 20 deletions.
168 changes: 148 additions & 20 deletions doc/nrf/device_guides/working_with_nrf/nrf70/gs.rst
Original file line number Diff line number Diff line change
@@ -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.
Expand All @@ -31,15 +39,15 @@ The ``nrf7002dk_nrf5340_cpunet`` build target provides support for the network c


Hardware
********
--------

The nRF7002 DK has two external oscillators:

* The frequency of the slow clock is 32.768 kHz.
* The frequency of the main clock is 32 MHz.

Supported features
==================
^^^^^^^^^^^^^^^^^^

The ``nrf7002dk_nrf5340_cpuapp`` board configuration supports the following hardware features:

Expand Down Expand Up @@ -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
Expand All @@ -146,7 +154,7 @@ Wi-Fi control
* COEX_GRANT = P0.24

Security components
===================
^^^^^^^^^^^^^^^^^^^

The following security components are available:

Expand All @@ -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.
Expand All @@ -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).
Expand All @@ -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:

Expand All @@ -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:

Expand All @@ -217,26 +225,26 @@ 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.

.. note::
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|:

Expand All @@ -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 <nRF52840 DK product page_>`_, `nRF5340 DK <nRF5340 DK product page_>`_, or `nRF9160 DK <nRF9160 DK product page_>`_.
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`_
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions doc/nrf/links.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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:

Expand Down

0 comments on commit 5d463d4

Please sign in to comment.