Skip to content

Commit a87c7c8

Browse files
committed
doc: wifi: Move Regulatory Certification Testing doc to NCS
Moved Regulatory Certification Testing documentation to NCS SHEL-3471 Signed-off-by: Richa Pandey <richa.pandey@nordicsemi.no>
1 parent 00a6650 commit a87c7c8

34 files changed

+2137
-4
lines changed

doc/nrf/glossary.rst

+18
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,9 @@ Glossary
227227
Dynamic Voltage and Frequency Scaling (DVFS)
228228
A power management technique that allows adjusting the operating voltage and operating frequency of a CPU, depending on the workload.
229229

230+
Dynamic Host Configuration Protocol (DHCP)
231+
A network management protocol used for automatic and centralized management of IP addresses within a network.
232+
230233
Docker
231234
A set of software tools using OS-level virtualization to create and run applications and their dependencies in self-contained environments called :term:`Docker containers <Docker container>`.
232235

@@ -260,6 +263,12 @@ Glossary
260263
Easy Direct Memory Access (EasyDMA)
261264
A module that some peripherals implement to gain direct access to data RAM.
262265

266+
Electromagnetic Compatibility (EMC)
267+
A measure of how well electrical equipment coexists with its electromagnetic environment without causing or experiencing interference.
268+
269+
Electrostatic Discharge (ESD)
270+
A sudden discharge of electric current between two electrically charged objects.
271+
263272
Embedded Universal Integrated Circuit Card (eUICC)
264273
A component of a SIM card that enables switching Mobile Network Operators over-the-air.
265274

@@ -656,6 +665,9 @@ Glossary
656665
Packet Traffic Arbitration (PTA)
657666
A collaborative coexistence mechanism for colocated wireless protocols.
658667

668+
Packet Error Rate (PER)
669+
The number of incorrectly received data packets divided by the total number of received packets.
670+
659671
Password-Authenticated Session Establishment (PASE)
660672
A method of establishing a secure session between two network nodes, using a pre-shared secret.
661673

@@ -864,6 +876,9 @@ Glossary
864876
Software Development Kit (SDK)
865877
A set of tools used for developing applications for a specific device or operating system.
866878

879+
Spectral Emission Mask (SEM)
880+
A spectrum mask where the spectrum emissions should not be higher at any frequency offset than the values specified in the mask.
881+
867882
Spin-Transfer Torque Magneto-Resistive Random Access Memory (MRAM (STT-MRAM))
868883
An alternative :term:`Non-volatile memory (NVM)` to flash memory.
869884
Compared to flash, MRAM does not have to be erased before writing and can simply be written, making it easier to use.
@@ -940,6 +955,9 @@ Glossary
940955
TrustZone
941956
Provides a cost-effective methodology to isolate security-critical components in an ARM Cortex CPU by hardware separating a rich operating system from smaller, secure operating system.
942957

958+
Two-wire Interface (TWI)
959+
An I\ :sup:`2`\ C compatible serial communication protocol that enables devices to exchange data by using a two-wire bus system, allowing multiple devices to be connected and controlled by a master device.
960+
943961
UART Hardware Flow Control (UART HWFC)
944962
A handshaking mechanism used to prevent a buffer overflow in the receiver (in embedded computing use cases).
945963
In a serial connection, when the transmission baud rate is high enough for data to appear faster than it can be processed by the receiver, the communicating devices can synchronize with each other, using :term:`Request to Send (RTS)` and :term:`Clear to Send (CTS)` pins.

doc/nrf/links.txt

+2
Original file line numberDiff line numberDiff line change
@@ -816,11 +816,13 @@
816816

817817
.. _`Measuring current`: https://docs.nordicsemi.com/bundle/ug_nrf7002_dk/page/UG/nrf7002_DK/hw_measure_current.html
818818
.. _`nRF70 Series`:
819+
.. _`Guidelines for nRF70 Series devices`:
819820
.. _`Guidelines and application notes for nRF70 Series devices`: https://docs.nordicsemi.com/category/nrf-70-series
820821

821822
.. _`nRF70 Series power states`: https://docs.nordicsemi.com/bundle/ps_nrf7002/page/chapters/functional/doc/power_states.html
822823

823824
.. _`nRF7002 EK`:
825+
.. _`nRF7002 EK Hardware`:
824826
.. _`nRF7002 EK User Guide`: https://docs.nordicsemi.com/bundle/ug_nrf7002_ek/page/UG/nrf7002_EK/intro.html
825827
.. _`nRF7002 EB User Guide`: https://docs.nordicsemi.com/bundle/ug_nrf7002_eb/page/UG/nrf7002_EB/intro.html
826828
.. _`nRF7002 EB PCB edge connector`: https://docs.nordicsemi.com/bundle/ug_nrf7002_eb/page/UG/nrf7002_EB/pcb_edge_connector.html

doc/nrf/protocols/wifi/index.rst

+1
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,4 @@ If you want to go through an online training course to familiarize yourself with
3838
regulatory_support
3939
debugging
4040
stack_configuration
41+
regulatory_certification/index
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
.. _ug_wifi_adaptivity_test_procedure:
2+
3+
EN 301 893 V2.1.1 based adaptivity test procedure
4+
#################################################
5+
6+
.. contents::
7+
:local:
8+
:depth: 2
9+
10+
This section describes two methods of adaptivity testing, using the Wi-Fi® Shell and Wi-Fi Radio test samples.
11+
12+
The test requirements and methods for adaptivity (channel access mechanism) are described in EN 301 893 V2.1.1:
13+
14+
* Test requirements in Section 4.2.7 Adaptivity (channel access mechanism)
15+
* Test method in Section 5.4.9 Adaptivity (channel access mechanism)
16+
17+
The nRF7002 device is a supervised device and complies with EN 301 893, clause 4.2.7.3.2.4, Table 8.
18+
19+
The following figure shows a test setup for adaptivity verification using two nRF7002 Development Kit (DK)s.
20+
21+
.. figure:: images/adaptivity_test_setup.svg
22+
:alt: Test set up for verifying the adaptivity of nRF7002 DK
23+
24+
Test set up for verifying the adaptivity of nRF7002 DK
25+
26+
The :term:`Device Under Test (DUT)` is an nRF7002 DK configured to a transmit (TX) mode through the following samples:
27+
28+
* Wi-Fi Shell sample that can connect to an access point and run DUT TX through a zperf session.
29+
For details, see :ref:`ug_using_wifi_shell_sample`.
30+
31+
* Wi-Fi Radio test sample which includes an internal traffic source used for the transmitted packets.
32+
33+
The companion device is an optional nRF7002 DK or :term:`Evaluation Kit (EK)` configured as a receiving device through the Wi-Fi Radio test sample.
34+
It only acts as a monitoring device for the transmissions from the DUT.
35+
This device can be omitted if the monitoring of the transmissions is accomplished by the spectrum analyzer.
36+
A Wi-Fi sniffer or any other compliant Wi-Fi device capable of monitoring Wi-Fi traffic can also be used.
37+
38+
The following test procedure is recommended:
39+
40+
1. Validate the test setup as shown in Test set up for verifying the adaptivity of nRF7002 DK.
41+
#. Set up the companion device for monitoring traffic on the required channel used by the DUT.
42+
If the monitoring device is another nRF7002 DK or EK, see :ref:`ug_wifi_radio_test_for_per_measurements` for setting it up in the receive mode for monitoring.
43+
Omit the transmit part of the instructions as the DUT will be configured to transmit continuously.
44+
45+
#. Set up the DUT to transmit on the required channel or mode either using the Wi-Fi Shell sample or the Wi-Fi Radio test sample.
46+
47+
* DUT as Wi-Fi Shell sample running UDP TX
48+
49+
.. toggle::
50+
51+
Set up the DUT to transmit on the required channel or mode using the Wi-Fi Shell sample.
52+
53+
The nRF7002 Wi-Fi device is designed for low-power IoT applications, featuring a low-power host device with low processing frequency and memory.
54+
When connected to an access point in infrastructure mode and utilizing the suggested User Datagram Protocol (UDP) transmit traffic, the DUT cannot maintain full transmission queues due to host limitations.
55+
56+
This leads to misleading results, despite the underlying channel access mechanism's compliance with the defined IEEE 802.11 standards.
57+
To achieve the required transmit packet duty cycle above 30%, it is necessary to limit the device to a lower data rate, such as 6 Mbps or MCS0.
58+
59+
Example command on the access point side:
60+
61+
.. code-block:: bash
62+
63+
iperf -s -i 1 -u
64+
65+
Example commands on the DUT side for fixing data rate to 6 Mbps:
66+
67+
.. code-block:: bash
68+
69+
wifi connect <SSID> <Password>
70+
wifi_util tx_rate 0 6
71+
zperf udp upload 192.168.1.20 5001 20 1k 20M
72+
73+
* DUT as Wi-Fi Radio test sample
74+
75+
.. toggle::
76+
77+
Set up the DUT to transmit on the required channel or mode using the Wi-Fi Radio test sample.
78+
79+
Use the Wi-Fi Radio test sample in transmit mode, which is built on top of the core Wi-Fi driver and firmware.
80+
This includes CSMA/CA, random backoff, and CCA engines, ensuring compliance with all transmission protocols defined in the IEEE 802.11 standards.
81+
82+
Any set of the TX commands given in :ref:`ug_wifi_radio_sample_for_transmit_tests` can be used for this testing based on required parameters.
83+
84+
The following example shows how to run a continuous (OFDM) TX traffic sequence in 11a mode:
85+
86+
* Channel: 100
87+
* Payload length: 1000 bytes
88+
* Inter-frame gap: 0 µs
89+
* Data rate: 5 Mbps
90+
91+
Execute the following sequence of commands:
92+
93+
.. code-block:: bash
94+
95+
uart:~$ wifi_radio_test init 100
96+
uart:~$ wifi_radio_test tx_pkt_tput_mode 0
97+
uart:~$ wifi_radio_test tx_pkt_rate 54
98+
uart:~$ wifi_radio_test tx_pkt_len 1000
99+
uart:~$ wifi_radio_test tx_pkt_gap 0
100+
uart:~$ wifi_radio_test tx_pkt_num -1
101+
uart:~$ wifi_radio_test tx 1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
.. _ug_wifi_antenna_gain_compensation:
2+
3+
Antenna gain compensation
4+
#########################
5+
6+
.. contents::
7+
:local:
8+
:depth: 2
9+
10+
Determine the accurate TX power on the nRF70 Series development platforms by taking into account the antenna gain of the PCB chip antenna and the corresponding PCB losses for various RF bands.
11+
This facilitates the interpretation of the transmit power measurements.
12+
13+
Kconfig parameter values are used as inputs to the host software to compensate for the transmit power based on the gain of the antenna.
14+
15+
To find the Kconfig value, subtract the PCB losses ``PCBLoss`` from the antenna gain ``AntGain`` and round up the result to the nearest whole number:
16+
17+
.. math::
18+
19+
\text{Kconfig value} = \text{AntGain} - \text{PCBLoss}
20+
21+
The PCB loss is defined as follows:
22+
23+
.. math::
24+
25+
\text{PCBLoss} = \text{PCBLossA} + \text{Coax loss for conducted testing}
26+
27+
.. math::
28+
29+
\text{PCBLoss} = \text{PCBLossA} + \text{PCBLossB for radiated testing}
30+
31+
The Coax loss is the loss in dB from the point on the PCB where a coaxial cable or equivalent is connected to the I/O connector of the measuring equipment.
32+
33+
The following figure shows the different losses between the nRF7002 and the PCB chip antenna or SMA.
34+
35+
.. figure:: images/antenna_gain.svg
36+
:alt: PCB losses
37+
38+
PCB losses
39+
40+
The following table shows an example of how to calculate the Kconfig parameter values.
41+
42+
+-------------------+---------------------------+----------------------+--------------+--------------+--------------------+
43+
| Bands | Kconfig parameter | Frequency range (MHz)| AntGain (dB) | PCBLoss (dB) | Kconfig value (dB) |
44+
+===================+===========================+======================+==============+==============+====================+
45+
| ANTGAIN_2G | NRF700X_ANT_GAIN_2G | 2402 to 2494 | 3.38 | 0.54 | 3 |
46+
+-------------------+---------------------------+----------------------+--------------+--------------+--------------------+
47+
| ANTGAIN_5G_BAND1 | NRF700X_ANT_GAIN_5G_BAND1 | 5150 to 5350 | 2.74 | 1.60 | 2 |
48+
+-------------------+---------------------------+----------------------+--------------+--------------+--------------------+
49+
| ANTGAIN_5G_BAND2 | NRF700X_ANT_GAIN_5G_BAND2 | 5470 to 5730 | 2.46 | 1.84 | 1 |
50+
+-------------------+---------------------------+----------------------+--------------+--------------+--------------------+
51+
| ANTGAIN_5G_BAND3 | NRF700X_ANT_GAIN_5G_BAND3 | 5730 to 5895 | 1.77 | 1.51 | 1 |
52+
+-------------------+---------------------------+----------------------+--------------+--------------+--------------------+
53+
54+
Setting antenna gain parameters
55+
*******************************
56+
57+
The Kconfig parameters and their default values are defined in the :file:`<ncs_repo>/nrf/drivers/wifi/nrf700x/Kconfig` file.
58+
To compensate for antenna gains, set the following Kconfig parameters in the project :file:`prj.conf` configuration file.
59+
60+
* :kconfig:option:`CONFIG_NRF700X_ANT_GAIN_2G` = ``<ant gain value>``
61+
* :kconfig:option:`CONFIG_NRF700X_ANT_GAIN_5G_BAND1` = ``<ant gain value>``
62+
* :kconfig:option:`CONFIG_NRF700X_ANT_GAIN_5G_BAND2` = ``<ant gain value>``
63+
* :kconfig:option:`CONFIG_NRF700X_ANT_GAIN_5G_BAND3` = ``<ant gain value>``
64+
65+
The Kconfig parameters can also be set in a relevant overlay file or entered as command-line arguments to the CMake build.

0 commit comments

Comments
 (0)