From 07aadafc8eb28a49cbc6a9de5dce4f792f731a34 Mon Sep 17 00:00:00 2001 From: Tomasz Tyzenhauz Date: Mon, 15 Apr 2024 14:39:52 +0200 Subject: [PATCH 1/4] doc: Add nRF54L15 PDK MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add nRF54L15 PDK to supported platforms. Update memory requirements. Update provisioning section about new address offset for nRF54L15 PDK Co-authored-by: Anna WojdyƂo <104991729+annwoj@users.noreply.github.com> Signed-off-by: Tomasz Tyzenhauz --- doc/ncs_links.rst | 3 + doc/ncs_links_update.sh | 3 + doc/samples/samples_list.rst | 31 ++++---- doc/samples/sid_end_device.rst | 22 +++--- .../requirements.rst | 73 +++++++++++-------- .../setting_up_hardware.rst | 1 + .../setting_up_sidewalk_product.rst | 28 ++++--- 7 files changed, 98 insertions(+), 63 deletions(-) diff --git a/doc/ncs_links.rst b/doc/ncs_links.rst index 1a7f97db1a..2a4853f9d3 100644 --- a/doc/ncs_links.rst +++ b/doc/ncs_links.rst @@ -6,13 +6,16 @@ .. _nrf52840 DK: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/config_and_build/board_support.html#boards-included-in-sdk-zephyr .. _nrf5340 DK: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/config_and_build/board_support.html#boards-included-in-sdk-zephyr .. _Thingy53: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/config_and_build/board_support.html#boards-included-in-sdk-zephyr +.. _nRF54L15 PDK: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/config_and_build/board_support.html#boards-included-in-sdk-zephyr .. _Getting started with nRF52 Series: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/device_guides/working_with_nrf/nrf52/gs.html .. _Getting started with nRF53 Series: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/device_guides/nrf53.html +.. _Getting started with nRF54L Series: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/device_guides/nrf54l.html .. _Zephyr toolchain: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/gs_installing.html#install-a-toolchain .. _nRF Connect SDK Getting started: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/getting_started.html .. _nRF52840dk_nrf52840: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/zephyr/boards/arm/nrf52840dk_nrf52840/doc/index.html .. _nrf5340dk_nrf5340: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/zephyr/boards/arm/nrf5340dk_nrf5340/doc/index.html#nrf5340dk-nrf5340 .. _thingy53_nrf5340: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/zephyr/boards/arm/thingy53_nrf5340/doc/index.html#thingy53-nrf5340 +.. _nrf54l15pdk_nrf54l15: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/zephyr/boards/arm/nrf54l15pdk_nrf54l15/doc/index.html .. _Building and programming an application: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/getting_started/programming.html#gs-programming .. _Testing and debugging an application: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/getting_started/testing.html#gs-testing .. _Bootloader and DFU solutions for NCS: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.6.0/nrf/app_bootloaders.html diff --git a/doc/ncs_links_update.sh b/doc/ncs_links_update.sh index c81d4a15f7..6d2e0edbea 100755 --- a/doc/ncs_links_update.sh +++ b/doc/ncs_links_update.sh @@ -12,13 +12,16 @@ links=( ".. _nRF Connect SDK: https://developer.nordicsemi.com/nRF_Connect_SDK/d ".. _nrf52840 DK: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/config_and_build/board_support.html#boards-included-in-sdk-zephyr" ".. _nrf5340 DK: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/config_and_build/board_support.html#boards-included-in-sdk-zephyr" ".. _Thingy53: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/config_and_build/board_support.html#boards-included-in-sdk-zephyr" + ".. _nRF54L15 PDK: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/config_and_build/board_support.html#boards-included-in-sdk-zephyr" ".. _Getting started with nRF52 Series: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/device_guides/working_with_nrf/nrf52/gs.html" ".. _Getting started with nRF53 Series: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/device_guides/nrf53.html" + ".. _Getting started with nRF54L Series: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/device_guides/nrf54l.html" ".. _Zephyr toolchain: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/gs_installing.html#install-a-toolchain" ".. _nRF Connect SDK Getting started: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/getting_started.html" ".. _nRF52840dk_nrf52840: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//zephyr/boards/arm/nrf52840dk_nrf52840/doc/index.html" ".. _nrf5340dk_nrf5340: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//zephyr/boards/arm/nrf5340dk_nrf5340/doc/index.html#nrf5340dk-nrf5340" ".. _thingy53_nrf5340: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//zephyr/boards/arm/thingy53_nrf5340/doc/index.html#thingy53-nrf5340" + ".. _nrf54l15pdk_nrf54l15: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//zephyr/boards/arm/nrf54l15pdk_nrf54l15/doc/index.html" ".. _Building and programming an application: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/getting_started/programming.html#gs-programming" ".. _Testing and debugging an application: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/getting_started/testing.html#gs-testing" ".. _Bootloader and DFU solutions for NCS: https://developer.nordicsemi.com/nRF_Connect_SDK/doc//nrf/app_bootloaders.html" diff --git a/doc/samples/samples_list.rst b/doc/samples/samples_list.rst index b6eaaae124..0c6029de93 100644 --- a/doc/samples/samples_list.rst +++ b/doc/samples/samples_list.rst @@ -8,19 +8,24 @@ In the Sidewalk repository, all samples are placed in the :file:`samples` direct The current sample structure includes the :ref:`sidewalk_end_device` sample with available variants. The following table demonstrates the variants' configuration for the supported development kits: -+-----------------------------------+------------------------------------------+-----------------------------+--------------------------------------------------------------------------+-----------------------------------------------+-------------------------------+ -| Sample variant | Description | Development kit | Additional hardware | Bootloader (in release and debug configs) | Application overlays | -+===================================+==========================================+=============================+==========================================================================+===============================================+===============================+ -| :ref:`variant_sidewalk_hello` | Sample application showing communication | * `nRF52840 DK`_ | * External flash (included in the DK) | * MCUboot - DFU partition in external flash | * ``overlay-hello.conf`` | -| | over Sidewalk network. | * `nRF5340 DK`_ | * `Semtech SX1262MB2CAS`_ (only for the configurations with LoRa or FSK) | * Application partition size = 956 kB | | -+-----------------------------------+------------------------------------------+-----------------------------+--------------------------------------------------------------------------+-----------------------------------------------+-------------------------------+ -| :ref:`variant_sensor_monitoring` | Demo application of Sidewalk protocol | * `nRF52840 DK`_ | * External flash (included in the DK) | * MCUboot - DFU partition in external flash | * ``overlay-demo.conf`` | -| | with temperature sensor monitoring. | * `nRF5340 DK`_ | * `Semtech SX1262MB2CAS`_ (only for the configurations with LoRa or FSK) | * Application partition size = 956 kB | | -| | | * `Thingy53`_ | | | | -+-----------------------------------+------------------------------------------+-----------------------------+--------------------------------------------------------------------------+-----------------------------------------------+-------------------------------+ -| :ref:`variant_sidewalk_dut` | Device under test generic application | * `nRF52840 DK`_ | * External flash (included in the DK) | * MCUboot - DFU partition in external flash | * ``overlay-dut.conf`` | -| | having activated CLI. | * `nRF5340 DK`_ | * `Semtech SX1262MB2CAS`_ (only for the configurations with LoRa or FSK) | * Application partition size = 956 kB | | -+-----------------------------------+------------------------------------------+-----------------------------+--------------------------------------------------------------------------+-----------------------------------------------+-------------------------------+ ++-----------------------------------+------------------------------------------+--------------------------------+---------------------------------------------------------------------------+-----------------------------------------------+---------------------------+ +| Sample variant | Description | Development kit | Additional hardware | Bootloader (in release and debug configs) | Application overlays | ++===================================+==========================================+================================+===========================================================================+===============================================+===========================+ +| :ref:`variant_sidewalk_hello` | Sample application showing communication | * `nRF52840 DK`_ | * External flash (included in the DK) except `nRF54L15 PDK`_ | * MCUboot - DFU partition in external flash | * ``overlay-hello.conf`` | +| | over Sidewalk network. | * `nRF5340 DK`_ | * `Semtech SX1262MB2CAS`_ (only for the configurations with LoRa or FSK) | * Application partition size = 956 kB | | +| | | * `nRF54L15 PDK`_ ``*`` | | | | ++-----------------------------------+------------------------------------------+--------------------------------+---------------------------------------------------------------------------+-----------------------------------------------+---------------------------+ +| :ref:`variant_sensor_monitoring` | Demo application of Sidewalk protocol | * `nRF52840 DK`_ | * External flash (included in the DK) except `nRF54L15 PDK`_ | * MCUboot - DFU partition in external flash | * ``overlay-demo.conf`` | +| | with temperature sensor monitoring. | * `nRF5340 DK`_ | * `Semtech SX1262MB2CAS`_ (only for the configurations with LoRa or FSK) | * Application partition size = 956 kB | | +| | | * `Thingy53`_ | | | | +| | | * `nRF54L15 PDK`_ ``*`` | | | | ++-----------------------------------+------------------------------------------+--------------------------------+---------------------------------------------------------------------------+-----------------------------------------------+---------------------------+ +| :ref:`variant_sidewalk_dut` | Device under test generic application | * `nRF52840 DK`_ | * External flash (included in the DK) except `nRF54L15 PDK`_ | * MCUboot - DFU partition in external flash | * ``overlay-dut.conf`` | +| | having activated CLI. | * `nRF5340 DK`_ | * `Semtech SX1262MB2CAS`_ (only for the configurations with LoRa or FSK) | * Application partition size = 956 kB | | +| | | * `nRF54L15 PDK`_ ``*`` | | | | ++-----------------------------------+------------------------------------------+--------------------------------+---------------------------------------------------------------------------+-----------------------------------------------+---------------------------+ + +``*`` - `nRF54L15 PDK`_ does not support LoRa and FSK configurations. .. note:: diff --git a/doc/samples/sid_end_device.rst b/doc/samples/sid_end_device.rst index 74367e97b5..ed84342b74 100644 --- a/doc/samples/sid_end_device.rst +++ b/doc/samples/sid_end_device.rst @@ -18,15 +18,19 @@ Requirements This sample supports the following development kits: -+--------------------+----------+------------------------+------------------------------+ -| Hardware platforms | PCA | Board name | Build target | -+====================+==========+========================+==============================+ -| nRF52840 DK | PCA10056 | `nrf52840dk_nrf52840`_ | ``nrf52840dk_nrf52840`` | -+--------------------+----------+------------------------+------------------------------+ -| nRF5340 DK | PCA10095 | `nrf5340dk_nrf5340`_ | ``nrf5340dk_nrf5340_cpuapp`` | -+--------------------+----------+------------------------+------------------------------+ -| Thingy53 | PCA20053 | `thingy53_nrf5340`_ | ``thingy53_nrf5340_cpuapp`` | -+--------------------+----------+------------------------+------------------------------+ ++--------------------+----------+----------------------------+----------------------------------+ +| Hardware platforms | PCA | Board name | Build target | ++====================+==========+============================+==================================+ +| nRF52840 DK | PCA10056 | `nrf52840dk_nrf52840`_ | ``nrf52840dk_nrf52840`` | ++--------------------+----------+----------------------------+----------------------------------+ +| nRF5340 DK | PCA10095 | `nrf5340dk_nrf5340`_ | ``nrf5340dk_nrf5340_cpuapp`` | ++--------------------+----------+----------------------------+----------------------------------+ +| Thingy53 | PCA20053 | `thingy53_nrf5340`_ | ``thingy53_nrf5340_cpuapp`` | ++--------------------+----------+----------------------------+----------------------------------+ +| nRF54L15 PDK ``*`` | PCA10156 | `nrf54l15pdk_nrf54l15`_ | ``nrf54l15pdk_nrf54l15_cpuapp`` | ++--------------------+----------+----------------------------+----------------------------------+ + +``*`` - `nRF54L15 PDK`_ does not support LoRa and FSK configurations. To run the sample in the Bluetooth LE link mode, you only need the development kit. However, if you want to run the sample with LoRa or FSK configuration, you also need the LoRa radio module. diff --git a/doc/setting_up_sidewalk_environment/requirements.rst b/doc/setting_up_sidewalk_environment/requirements.rst index 6ccd1c5d4c..6ff6251ef6 100644 --- a/doc/setting_up_sidewalk_environment/requirements.rst +++ b/doc/setting_up_sidewalk_environment/requirements.rst @@ -48,45 +48,56 @@ RAM and flash memory requirements RAM and flash memory requirement values differ depending on the DK and programmed sample. -All values are provided in kilobytes (KB). .. tabs:: .. tab:: nRF52840 DK - The following table lists memory requirements for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF52840 DK`_. - - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ - | Sample | MCUboot ROM | Application ROM | Sidewalk Settings | Total ROM | Total RAM | - +==================================================================================+===============+===================+=====================+=============+=============+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 36 | 494 | 28 | 558 | 109 | - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE ` | 36 | 409 | 28 | 473 | 89 | - | (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | | | | | | - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE ` | 36 | 350 | 28 | 414 | 84 | - | (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | | | | | | - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release)| 36 | 431 | 28 | 495 | 104 | - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ + The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF52840 DK`_. + + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | Sample | App partition size | App RAM | Total App partition size | Total RAM | + +================================================================================================================+======================+===========+============================+=============+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 412.20 kB | 94.08 kB | 983.50 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 351.50 kB | 89.21 kB | 983.50 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 494.87 kB | 109.58 kB | 983.50 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 430.05 kB | 104.71 kB | 983.50 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ .. tab:: nRF5340 DK - The following table lists memory requirements for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF5340 DK`_. - - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ - | Sample | MCUboot ROM | Application ROM | Sidewalk Settings | Total ROM | Total RAM | - +==================================================================================+===============+===================+=====================+=============+=============+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 40 | 429 | 28 | 497 | 99 | - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE ` | 40 | 348 | 28 | 416 | 80 | - | (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | | | | | | - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE ` | 40 | 286 | 28 | 354 | 75 | - | (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | | | | | | - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release)| 40 | 364 | 28 | 432 | 94 | - +----------------------------------------------------------------------------------+---------------+-------------------+---------------------+-------------+-------------+ + The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF5340 DK`_. + + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | Sample | App partition size | App RAM | Total App partition size | Total RAM | + +================================================================================================================+======================+===========+============================+=============+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 354.09 kB | 82.97 kB | 975.50 kB | 440.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 290.48 kB | 78.26 kB | 975.50 kB | 440.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 432.80 kB | 98.18 kB | 975.50 kB | 440.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 365.91 kB | 93.46 kB | 975.50 kB | 440.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + + .. tab:: nRF54L15 PDK + + The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF54L15 PDK`_. + + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | Sample | App partition size | App RAM | Total App partition size | Total RAM | + +================================================================================================================+======================+===========+============================+=============+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 350.58 kB | 87.74 kB | 730.00 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 285.88 kB | 82.89 kB | 730.00 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 350.83 kB | 87.74 kB | 730.00 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 286.00 kB | 82.89 kB | 730.00 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ .. include:: ../ncs_links.rst diff --git a/doc/setting_up_sidewalk_environment/setting_up_hardware.rst b/doc/setting_up_sidewalk_environment/setting_up_hardware.rst index 4554fec7b9..c525e07817 100644 --- a/doc/setting_up_sidewalk_environment/setting_up_hardware.rst +++ b/doc/setting_up_sidewalk_environment/setting_up_hardware.rst @@ -19,6 +19,7 @@ Depending on the device, refer to the getting started guide for setup instructio * `Getting started with nRF52 Series`_ * `Getting started with nRF53 Series`_ +* `Getting started with nRF54L Series`_ Semtech SX1262 ************** diff --git a/doc/setting_up_sidewalk_environment/setting_up_sidewalk_product.rst b/doc/setting_up_sidewalk_environment/setting_up_sidewalk_product.rst index b6ef86b2af..9042d068bb 100644 --- a/doc/setting_up_sidewalk_environment/setting_up_sidewalk_product.rst +++ b/doc/setting_up_sidewalk_environment/setting_up_sidewalk_product.rst @@ -18,25 +18,31 @@ The tools required for provisioning are located in the repository (`sdk-nrf`_ an 1. Follow the `Provision your Sidewalk endpoint and flash the binary image`_ documentation. .. note:: - The default address of the the :file:`mfg.hex` file provided in the official Amazon Sidewalk documentation is incompatible with the nRF Connect SDK applications. - You must add the ``--addr 0xFF000`` argument to the :file:`provision.py` script in order to generate the :file:`mfg.hex` file that is compatible with the nRF Connect SDK memory map. + The default address of the :file:`mfg.hex` file provided in the official Amazon Sidewalk documentation is incompatible with the nRF Connect SDK applications. + To fix it, you must add an argument to the :file:`provision.py` script in order to generate the :file:`mfg.hex` file that is compatible with the nRF Connect SDK memory map. + Depending on the device, the argument will differ: + + * Add the ``--addr 0x17c000`` argument for the `nRF54L15 PDK`_. + * Add the ``--addr 0xFF000`` argument for other boards. * If you are using the combined device JSON file obtained from the AWS IoT console, use the ``certificate_json`` parameter. It will specify this file as an input when running the provisioning script. - .. code-block:: python + .. parsed-literal:: + :class: highlight - python3 provision.py nordic aws --output_bin mfg.bin --certificate_json certificate.json --addr 0xFF000 + python3 provision.py nordic aws --output_bin mfg.bin --certificate_json certificate.json --addr *argument* * If you are using separate device JSON files obtained as responses from the GetDeviceProfile and GetWirelessDevice API operations, use the ``wireless_device_json`` and ``device_profile_json`` parameters. This will specify both files as input when running the provisioning script. - .. code-block:: python + .. parsed-literal:: + :class: highlight - python3 provision.py nordic aws --output_bin mfg.bin \ - --wireless_device_json wireless_device.json \ - --device_profile_json device_profile.json \ - --addr 0xFF000 + python3 provision.py nordic aws --output_bin mfg.bin + --wireless_device_json wireless_device.json + --device_profile_json device_profile.json + --addr *argument* .. note:: The default name of the :file:`mfg.hex` file generated from the :file:`provision.py` script is :file:`nordic_aws_nrf52840.hex`. @@ -46,7 +52,7 @@ The tools required for provisioning are located in the repository (`sdk-nrf`_ an .. code-block:: console - $ nrfjprog --sectorerase --program nordic_aws_nrf52840.hex --reset + nrfjprog --sectorerase --program nordic_aws_nrf52840.hex --reset * If you reflashed the :file:`nordic_aws_nrf52840.hex` file on an already working device, you need to deregister the previously flashed device. To do this, perform a factory reset by long pressing **Button 1**. @@ -88,6 +94,8 @@ Use MQTT client .. figure:: /images/AWSIoTCoreMQTT.png +.. include:: ../ncs_links.rst + .. _sdk-sidewalk: https://github.com/nrfconnect/sdk-sidewalk .. _Onbarding your Sidewalk devices: https://docs.aws.amazon.com/iot/latest/developerguide/sidewalk-gs-workflow.html .. _Provision your Sidewalk endpoint and flash the binary image: https://docs.sidewalk.amazon/provisioning/iot-sidewalk-provision-endpoint.html From 9ad5f4de8639f49409a98e8311b9531ad6cfce8c Mon Sep 17 00:00:00 2001 From: Tomasz Tyzenhauz Date: Mon, 15 Apr 2024 14:40:48 +0200 Subject: [PATCH 2/4] doc: remove support for plantuml from build script plantuml is not used anymore in documentation Signed-off-by: Tomasz Tyzenhauz --- doc/build_doc_in_docker.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/doc/build_doc_in_docker.sh b/doc/build_doc_in_docker.sh index 492b459608..6083a42b4e 100755 --- a/doc/build_doc_in_docker.sh +++ b/doc/build_doc_in_docker.sh @@ -31,10 +31,7 @@ if [ $# -eq 0 ]; then docker run -it --rm -e USER_ID=$(id -u) -e GRP_ID=$(id -g) -v "$(pwd)":/work -v "$(pwd)"/build_doc_in_docker.sh:/run.sh "${DOCKER}" /run.sh "RUN_IN_DOCKER" echo "Docker exited" elif [ $# -eq 1 ]; then - apt update - apt install default-jre graphviz -y cd /work - curl -sSL https://github.com/plantuml/plantuml/releases/download/v1.2023.13/plantuml-1.2023.13.jar --output /usr/local/bin/plantuml.jar pip install -r requirements-doc.txt sphinx-build -M html . build chown -R $USER_ID:$GRP_ID build From de4c03155ec1329f0207f27608dd76c646241cea Mon Sep 17 00:00:00 2001 From: Tomasz Tyzenhauz Date: Mon, 15 Apr 2024 14:42:18 +0200 Subject: [PATCH 3/4] doc: Remove memory_requirements.py script memroy requirements table is now generate in CI Signed-off-by: Tomasz Tyzenhauz --- scripts/ci/memory_requirements.py | 250 ------------------------------ 1 file changed, 250 deletions(-) delete mode 100755 scripts/ci/memory_requirements.py diff --git a/scripts/ci/memory_requirements.py b/scripts/ci/memory_requirements.py deleted file mode 100755 index f358ff1e50..0000000000 --- a/scripts/ci/memory_requirements.py +++ /dev/null @@ -1,250 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright (c) 2022 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause - -import argparse -from collections import namedtuple -from pathlib import Path -import subprocess -from tabulate import tabulate -from typing import Generator, Optional -import yaml - - -class Sample: - def __init__(self, relative_dir: str, test_name: str, title: str): - self.relative_dir = relative_dir - self.test_name = test_name - self.title = title - - def full_test_name(self) -> str: - """ - Return twister test name of the sample. - - The test name consists of the relative path to the sample followed by - a common prefix for all tests defined in the sample.yaml file of the - sample. - """ - return f'{self.relative_dir}/{self.test_name}' - - -class SampleVariant: - def __init__(self, sample: Sample, variant: str, title: str): - self.sample = sample - self.variant = variant - self.title = title - - def full_test_name(self) -> str: - """ - Return twister test name of the sample variant. - - The test name consists of the relative path to the sample followed by - a test name defined in the sample.yaml file of the sample. It can be - be specified as twister's '--test' argument. - """ - return self.sample.full_test_name() + self.variant - - def full_title(self) -> str: - """ - Return human-readable name of the sample variant. - """ - return f'{self.sample.title} ({self.title})' - - -SampleVariantStats = namedtuple('SampleVariantStats', [ - 'sample', - 'mcuboot_rom', - 'app_rom', - 'settings', - 'total_rom', - 'total_ram' -]) - - -BOARDS = { - 'nrf52840dk_nrf52840': '`nRF52840 DK`_', - 'nrf5340dk_nrf5340_cpuapp': '`nRF5340 DK`_', -} - - -SAMPLES = [ - Sample('sid_end_device', 'sample.sidewalk.demo', - ':ref:`Sensor monitoring `'), - Sample('sid_end_device', 'sample.sidewalk.hello', - ':ref:`End device Bluetooth LE and sub-GHz `'), - Sample('sid_end_device', 'sample.sidewalk.hello.ble_only', - ':ref:`End device Bluetooth LE `'), -] - -VARIANTS = { - '': 'Debug', - '.release': 'Release', -} - - -def removeprefix(text: str, prefix: str) -> str: - return text[len(prefix):] if text.startswith(prefix) else text - - -class PartitionParser: - def __init__(self, partitions_yml_path: Path): - with open(partitions_yml_path) as partitions_yml: - self.partitions = yaml.safe_load(partitions_yml) - - def region_size(self, region_name) -> int: - """ - Return size of a region defined in partitions.yml file in bytes. - """ - return int(self.partitions.get(region_name, {}).get('size', 0)) - - def region_size_kb(self, *region_name) -> int: - """ - Return size of one or more regions defined in partitions.yml file in kBs. - """ - return round(sum(self.region_size(rn) for rn in region_name)/1024) - - -class ElfSizeParser: - def __init__(self, elf_path: Path): - sizes = subprocess.check_output( - ['arm-zephyr-eabi-size', '-B', elf_path]) - sizes = sizes.decode('ascii').splitlines() - self.sizes = dict(zip(sizes[0].split(), sizes[1].split())) - - def region_size(self, region_name: str) -> int: - """ - Return size of a region returned by arm-zephyr-eabi-size in bytes. - """ - return int(self.sizes[region_name]) - - def region_size_kb(self, *region_name: str) -> int: - """ - Return size of one or more regions returned by arm-zephyr-eabi-size in kBs. - """ - return round(sum(self.region_size(rn) for rn in region_name)/1024) - - -class ReportGenerator: - - HEADERS = ['Sample', 'MCUboot ROM', 'Application ROM', - 'Sidewalk Settings', 'Total ROM', 'Total RAM'] - - def __init__(self): - print() - print('.. tabs::') - - def add_board(self, board: str) -> None: - """ - Generate a new RST tab for holding results for a given board. - """ - self.variants = [] - tab_title = removeprefix(BOARDS[board], ':ref:`').split('<')[0].strip() - print() - print(f' .. tab:: {tab_title}') - print() - print( - f' The following table lists memory requirements for samples running on the {BOARDS[board]}.') - - def add_variant(self, stats: SampleVariantStats) -> None: - """ - Add sample variant statistics to the internal buffer. - """ - self.variants += [(stats.sample, stats.mcuboot_rom, stats.app_rom, - stats.settings, stats.total_rom, stats.total_ram)] - - def flush_variants(self) -> None: - """ - Consume the buffer of sample variant statistics and generate an RST table. - """ - print() - for line in tabulate(self.variants, ReportGenerator.HEADERS, tablefmt='grid').splitlines(): - print(f' {line}') - - -def select_sample_variant(test_name: str) -> Optional[SampleVariant]: - """ - Take test name returned by 'twister --list-tests' and turn it into a sample variant. - """ - for sample in SAMPLES: - if not test_name.startswith(sample.test_name): - continue - variant = removeprefix(test_name, sample.test_name) - if variant in VARIANTS: - return SampleVariant(sample, variant, VARIANTS[variant]) - return None - - -def select_sample_variants(twister_path: str, twister_out_dir: str, ncs_dir: str) -> Generator[SampleVariant, None, None]: - """ - Detect available sample variants and return relevant ones. - """ - cmd = [ - twister_path, - '--testsuite-root', Path(ncs_dir) / 'sidewalk' / 'samples', - '--outdir', twister_out_dir, - '--no-clean', - '--integration', - '--list-tests' - ] - - for test in subprocess.check_output(cmd).decode('ascii').splitlines(): - if variant := select_sample_variant(removeprefix(test, ' - ').strip()): - yield variant - - -def build_report(twister_out_dir: str, variants: list) -> None: - """ - Analyze build directories of selected sample variants and generate report. - - Generate size report in the RST format for each selected board and sample - variant. The statistics are generated based on partitions.yml file and - section sizes of zephyr.elf file. - """ - report = ReportGenerator() - - for board in BOARDS: - report.add_board(board) - - for variant in variants: - build_dir = Path(twister_out_dir) / board / \ - variant.full_test_name() - - if not (build_dir / 'zephyr' / 'zephyr.elf').exists(): - continue - - elf = ElfSizeParser(build_dir / 'zephyr' / 'zephyr.elf') - partitions = PartitionParser(build_dir / 'partitions.yml') - total_rom = elf.region_size_kb('text', 'data') + partitions.region_size_kb( - 'mcuboot', - 'settings_storage', - 'sidewalk_storage', - 'mfg_storage' - ) - - report.add_variant(SampleVariantStats(sample=variant.full_title(), - mcuboot_rom=partitions.region_size_kb( - 'mcuboot', 'settings_storage'), - app_rom=elf.region_size_kb('text', 'data'), - settings=partitions.region_size_kb( - 'sidewalk_storage', 'mfg_storage'), - total_rom=total_rom, - total_ram=elf.region_size_kb('bss', 'data'))) - - report.flush_variants() - - -if __name__ == '__main__': - parser = argparse.ArgumentParser() - parser.add_argument('--twister-out-dir', required=True, - help='Path to twister output directory') - parser.add_argument('--ncs-dir', required=True, - help='Path to nRF Connect SDK directory') - - args = parser.parse_args() - twister_path = str(Path(args.ncs_dir) / 'zephyr' / 'scripts' / 'twister') - variants = list(select_sample_variants( - twister_path, args.twister_out_dir, args.ncs_dir)) - - build_report(args.twister_out_dir, variants) From 6d91cb2588a5d06fc0402b9294ece4a9f6854339 Mon Sep 17 00:00:00 2001 From: Tomasz Tyzenhauz Date: Wed, 17 Apr 2024 13:36:39 +0200 Subject: [PATCH 4/4] doc: Move memory requirement section Move memory requirement to includes/memory_requirement.txt Signed-off-by: Tomasz Tyzenhauz --- doc/includes/memory_requirement.txt | 49 ++++++++++++++++++ .../requirements.rst | 51 +------------------ 2 files changed, 50 insertions(+), 50 deletions(-) create mode 100644 doc/includes/memory_requirement.txt diff --git a/doc/includes/memory_requirement.txt b/doc/includes/memory_requirement.txt new file mode 100644 index 0000000000..ae6959148b --- /dev/null +++ b/doc/includes/memory_requirement.txt @@ -0,0 +1,49 @@ +.. tabs:: + + .. tab:: nRF52840 DK + + The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF52840 DK`_. + + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | Sample | App partition size | App RAM | Total App partition size | Total RAM | + +================================================================================================================+======================+===========+============================+=============+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 412.20 kB | 94.08 kB | 983.50 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 351.50 kB | 89.21 kB | 983.50 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 494.87 kB | 109.58 kB | 983.50 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 430.05 kB | 104.71 kB | 983.50 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + + .. tab:: nRF5340 DK + + The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF5340 DK`_. + + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | Sample | App partition size | App RAM | Total App partition size | Total RAM | + +================================================================================================================+======================+===========+============================+=============+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 354.09 kB | 82.97 kB | 975.50 kB | 440.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 290.48 kB | 78.26 kB | 975.50 kB | 440.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 432.80 kB | 98.18 kB | 975.50 kB | 440.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 365.91 kB | 93.46 kB | 975.50 kB | 440.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + + .. tab:: nRF54L15 PDK + + The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF54L15 PDK`_. + + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | Sample | App partition size | App RAM | Total App partition size | Total RAM | + +================================================================================================================+======================+===========+============================+=============+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 350.58 kB | 87.74 kB | 730.00 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 285.88 kB | 82.89 kB | 730.00 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 350.83 kB | 87.74 kB | 730.00 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ + | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 286.00 kB | 82.89 kB | 730.00 kB | 256.00 kB | + +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ diff --git a/doc/setting_up_sidewalk_environment/requirements.rst b/doc/setting_up_sidewalk_environment/requirements.rst index 6ff6251ef6..012d7c177e 100644 --- a/doc/setting_up_sidewalk_environment/requirements.rst +++ b/doc/setting_up_sidewalk_environment/requirements.rst @@ -48,56 +48,7 @@ RAM and flash memory requirements RAM and flash memory requirement values differ depending on the DK and programmed sample. - -.. tabs:: - - .. tab:: nRF52840 DK - - The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF52840 DK`_. - - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | Sample | App partition size | App RAM | Total App partition size | Total RAM | - +================================================================================================================+======================+===========+============================+=============+ - | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 412.20 kB | 94.08 kB | 983.50 kB | 256.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 351.50 kB | 89.21 kB | 983.50 kB | 256.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 494.87 kB | 109.58 kB | 983.50 kB | 256.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 430.05 kB | 104.71 kB | 983.50 kB | 256.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - - .. tab:: nRF5340 DK - - The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF5340 DK`_. - - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | Sample | App partition size | App RAM | Total App partition size | Total RAM | - +================================================================================================================+======================+===========+============================+=============+ - | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 354.09 kB | 82.97 kB | 975.50 kB | 440.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 290.48 kB | 78.26 kB | 975.50 kB | 440.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 432.80 kB | 98.18 kB | 975.50 kB | 440.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 365.91 kB | 93.46 kB | 975.50 kB | 440.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - - .. tab:: nRF54L15 PDK - - The following table lists memory requirements (without MCUboot partition) for the default variant of the :ref:`Sidewalk_End_device` sample running on the `nRF54L15 PDK`_. - - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | Sample | App partition size | App RAM | Total App partition size | Total RAM | - +================================================================================================================+======================+===========+============================+=============+ - | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Debug) | 350.58 kB | 87.74 kB | 730.00 kB | 256.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE ` (``CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n``, Release) | 285.88 kB | 82.89 kB | 730.00 kB | 256.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Debug) | 350.83 kB | 87.74 kB | 730.00 kB | 256.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ - | :ref:`Hello Sidewalk Bluetooth LE and sub-GHz ` (Release) | 286.00 kB | 82.89 kB | 730.00 kB | 256.00 kB | - +----------------------------------------------------------------------------------------------------------------+----------------------+-----------+----------------------------+-------------+ +.. include:: ../includes/memory_requirement.txt .. include:: ../ncs_links.rst