Initial commit for nrf5340_audio
This commit is contained in:
82
doc/adapting_application.rst
Normal file
82
doc/adapting_application.rst
Normal file
@@ -0,0 +1,82 @@
|
||||
.. _nrf53_audio_app_adapting:
|
||||
|
||||
Adapting nRF5340 Audio applications for end products
|
||||
####################################################
|
||||
|
||||
.. contents::
|
||||
:local:
|
||||
:depth: 2
|
||||
|
||||
This page describes the relevant configuration sources and lists the steps required for adapting the :ref:`nrf53_audio_app` to end products.
|
||||
|
||||
Board configuration sources
|
||||
***************************
|
||||
|
||||
The nRF5340 Audio applications use the following files as board configuration sources:
|
||||
|
||||
* Devicetree Specification (DTS) files - These reflect the hardware configuration.
|
||||
See :ref:`zephyr:dt-guide` for more information about the DTS data structure.
|
||||
* Kconfig files - These reflect the hardware-related software configuration.
|
||||
See :ref:`kconfig_tips_and_tricks` for information about how to configure them.
|
||||
* Memory layout configuration files - These define the memory layout of the application.
|
||||
|
||||
You can see the :file:`zephyr/boards/nordic/nrf5340_audio_dk` directory as an example of how these files are structured.
|
||||
|
||||
For information about differences between DTS and Kconfig, see :ref:`zephyr:dt_vs_kconfig`.
|
||||
For detailed instructions for adding Zephyr support to a custom board, see Zephyr's :ref:`zephyr:board_porting_guide`.
|
||||
|
||||
.. _nrf53_audio_app_porting_guide_app_configuration:
|
||||
|
||||
Application configuration sources
|
||||
*********************************
|
||||
|
||||
The application configuration source file defines a set of options used by the given nRF5340 Audio application.
|
||||
This is a :file:`.conf` file that modifies the default Kconfig values defined in the Kconfig files.
|
||||
|
||||
Only one :file:`.conf` file is included at a time.
|
||||
The :file:`prj.conf` file is the default configuration file and it implements the debug application version.
|
||||
For the release application version, you need to include the :file:`prj_release.conf` configuration file.
|
||||
In the release application version no debug features should be enabled.
|
||||
|
||||
Each nRF5340 Audio application also uses its own :file:`Kconfig.default` file to change configuration defaults automatically.
|
||||
|
||||
You need to edit :file:`prj.conf` and :file:`prj_release.conf` if you want to add new functionalities to your application, but editing these files when adding a new board is not required.
|
||||
|
||||
.. _nrf53_audio_app_porting_guide_adding_board:
|
||||
|
||||
Adding a new board
|
||||
******************
|
||||
|
||||
.. note::
|
||||
The first three steps of the configuration procedure are identical to the steps described in Zephyr's :ref:`zephyr:board_porting_guide`.
|
||||
|
||||
To use the nRF5340 Audio application with your custom board:
|
||||
|
||||
1. Define the board files for your custom board:
|
||||
|
||||
a. Create a new directory in the :file:`nrf/boards/<vendor>/` directory with the name of the new board.
|
||||
#. Copy the nRF5340 Audio board files from the :file:`nrf5340_audio_dk` directory located in the :file:`zephyr/boards/nordic/` folder to the newly created directory.
|
||||
|
||||
#. Edit the DTS files to make sure they match the hardware configuration.
|
||||
Pay attention to the following elements:
|
||||
|
||||
* Pins that are used.
|
||||
* Interrupt priority that might be different.
|
||||
|
||||
#. Edit the board's Kconfig files to make sure they match the required system configuration.
|
||||
For example, disable the drivers that will not be used by your device.
|
||||
#. Build the application by selecting the name of the new board (for example, ``new_audio_board_name``) in your build system.
|
||||
For example, when building from the command line, add ``-b new_audio_board_name`` to your build command.
|
||||
|
||||
FOTA for end products
|
||||
*********************
|
||||
|
||||
Do not use the default MCUboot key for end products.
|
||||
See :ref:`ug_fw_update` and :ref:`west-sign` for more information.
|
||||
|
||||
To create your own app that supports DFU, you can use the `nRF Connect Device Manager`_ libraries for Android and iOS.
|
||||
|
||||
Changing default values
|
||||
***********************
|
||||
|
||||
Given the requirements for the Coordinated Set Identification Service (CSIS), make sure to change the Set Identity Resolving Key (SIRK) value when adapting the application.
|
||||
Reference in New Issue
Block a user