You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/nrf/ug_nrf5340.rst
+20-16Lines changed: 20 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,9 +22,11 @@ The network core is an Arm Cortex-M33 processor with a reduced feature set, desi
22
22
This core is used for radio communication.
23
23
With regards to the nRF5340 samples, this means that the network core runs the radio stack and real-time procedures.
24
24
Currently, the following solutions are available for the network core:
25
-
* Bluetooth Low Energy Controller - compatible with several BLE samples,
26
-
* An application running only on network core, used for testing the Radio peripheral; requires any
27
-
sample for application core - just to start the network MCU
25
+
* Bluetooth Low Energy Controller - compatible with several BLE samples.
26
+
Both the BLE Controller from Zephyr and :ref:`nrfxlib:ble_controller` are supported.
27
+
* the :ref:`radio_test` sample that runs only on the network core and is used for testing the Radio peripheral.
28
+
To start the network core, this sample requires any sample programmed on the application core.
29
+
For example, you can use :ref:`zephyr:hello_world` for this purpose.
28
30
29
31
In general, this core should be used for real-time processing tasks involving low-level protocols and layers.
30
32
@@ -36,8 +38,9 @@ Application core
36
38
The application core is a full-featured Arm Cortex-M33 processor including DSP instructions and FPU.
37
39
38
40
Currently, the |NCS| provides the following solutions for the application core:
39
-
* High-level radio stack (the host part of the Bluetooth Low Energy stack) and application logic,
40
-
* Samples running only on the application core: e.g. NFC samples for nRF53
41
+
* high-level radio stack (the host part of the Bluetooth Low Energy stack) and application logic,
42
+
* samples running only on the application core.
43
+
For example, NFC samples with nRF53 support.
41
44
42
45
In general, this core should be used for tasks that require high performance and application-level logic.
43
46
@@ -70,31 +73,31 @@ nRF5340 samples consist of two separate images: one that runs on the network cor
70
73
Network samples
71
74
===============
72
75
73
-
The nRF Connect SDK provides the following samples for the nRF53 network core:
76
+
The |NCS| provides the following samples for the nRF53 network core:
74
77
* :ref:`zephyr:bluetooth-hci-rpmsg-sample` - a Zephyr sample that implements a Bluetooth Low Energy controller.
75
-
This sample must be programmed to the network core to run standard Bluetooth Low Energy samples on nRF5340.
78
+
This sample must be programmed to the network core to run standard Bluetooth Low Energy samples on nRF5340.
76
79
77
80
You might need to adjust the Kconfig configuration of this sample to make it compatible with the peer application.
78
81
For example:
79
82
80
83
* :option:`zephyr:CONFIG_BT_MAX_CONN` must be equal to the maximum number of connections supported by the application sample.
81
-
* If the application sample uses specific Bluetooth LE functionality, this functionality must be enabled in the network sample as well.
84
+
* If the application sample uses a specific Bluetooth LE functionality, this functionality must be enabled in the network sample as well.
82
85
For example, you must modify the configuration of the network sample to make it compatible with the :ref:`ble_throughput` sample::
83
86
84
87
CONFIG_BT_CTLR_TX_BUFFER_SIZE=251
85
88
CONFIG_BT_CTLR_DATA_LENGTH_MAX=251
86
89
87
90
This configuration guarantees that the network sample can handle the Bluetooth LE DLE update procedure, which is used in the :ref:`ble_throughput` sample.
88
91
89
-
* :ref:`radio_test` - an application used for testing available modes of the Radio peripheral
92
+
* :ref:`radio_test` - an sample application used for testing available modes of the Radio peripheral.
90
93
91
94
Application samples
92
95
===================
93
96
94
97
The |NCS| provides a series of :ref:`Bluetooth Low Energy samples <ble_samples>`, in addition to the :ref:`Bluetooth samples in Zephyr <zephyr:bluetooth-samples>`.
95
98
Most of these samples should run on the nRF5340 PDK, but not all have been thoroughly tested.
96
99
Samples that use non-standard features of the Bluetooth Low Energy controller, like the :ref:`ble_llpm` sample, are not supported.
97
-
Additionally, the |NCS| NFC samples are also available for nRF53 - they run only on the application core and don't require any firmware for the network core.
100
+
Additionally, the |NCS| NFC samples are also available for nRF53 - they run only on the application core and do not require any firmware for the network core.
98
101
99
102
Some samples require configuration adjustments to the :ref:`zephyr:bluetooth-hci-rpmsg-sample` sample as described in the `Network samples`_ section.
100
103
@@ -104,18 +107,19 @@ These samples must be programmed to the application core, in the secure domain.
104
107
Building and programming a sample
105
108
*********************************
106
109
107
-
Depending on the chosen sample, you must program just the application core (e.g. when using NFC samples) or both the network and the application cores.
110
+
Depending on the sample, you must program only the application core (for example, when using NFC samples) or both the network and the application core.
108
111
109
112
.. note::
110
-
On nRF53 the application core is responsible for starting the network core and connecting its GPIO pins. Therefore, to run any sample on nRF53,
111
-
the application core must be programmed (e.g. with the :ref:`zephyr:hello_world` sample) even if the firmware is supposed to run only on the network MCU.
112
-
For details see the code in: ``zephyr/boards/arm/nrf5340_dk_nrf5340/nrf5340_cpunet_reset.c``.
113
+
On nRF53, the application core is responsible for starting the network core and connecting its GPIO pins.
114
+
Therefore, to run any sample on nRF53, the application core must be programmed, even if the firmware is supposed to run only on the network core.
115
+
You can use the :ref:`zephyr:hello_world` sample for this purpose.
116
+
For details, see the code in :file:`zephyr/boards/arm/nrf5340_dk_nrf5340/nrf5340_cpunet_reset.c`.
113
117
114
118
Build and program both samples separately by following the instructions in :ref:`gs_programming_ses`.
115
119
Make sure to use ``nrf5340_dk_nrf5340_cpunet`` as board name when building the network sample, and ``nrf5340_dk_nrf5340_cpuapp`` when building the application sample.
116
120
117
121
.. important::
118
-
When programming the samples from an old version of |SES|, you might get an error message stating that the target cannot be identified.
122
+
When programming the samples built with an older version of |SES|, you might get an error message stating that the target cannot be identified.
119
123
In this case, you can either modify your |SES| installation and projects to add support for programming nRF5340, or program the generated HEX files from the command line instead.
120
124
121
125
See the following sections for more information.
@@ -124,7 +128,7 @@ Make sure to use ``nrf5340_dk_nrf5340_cpunet`` as board name when building the n
124
128
Adding support for programming nRF5340 in SES (versions earlier than v4.40a)
0 commit comments