Skip to content

Commit 510aaaf

Browse files
alstrzebonskirlubos
authored andcommitted
doc: fast_pair: Describe nRF54H20 support
Jira: NCSDK-30350 Signed-off-by: Aleksander Strzebonski <[email protected]>
1 parent 4f7540e commit 510aaaf

File tree

4 files changed

+27
-6
lines changed

4 files changed

+27
-6
lines changed

doc/nrf/external_comp/bt_fast_pair.rst

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -180,13 +180,33 @@ Provisioning registration data onto device
180180
The Fast Pair standard requires provisioning the device with Model ID and Anti-Spoofing Private Key obtained during device model registration.
181181
In the |NCS|, the provisioning data is generated as a hexadecimal file using the :ref:`bt_fast_pair_provision_script`.
182182

183-
When building the Fast Pair in the |NCS|, the build system automatically calls the Fast Pair provision script and includes the resulting hexadecimal file in the firmware (the :file:`merged.hex` file).
183+
When building Fast Pair in the |NCS|, the build system automatically calls the Fast Pair provision script.
184+
It then includes the resulting hexadecimal file in the final firmware that you can flash onto the device.
185+
The Fast Pair provisioning data is stored on the dedicated Fast Pair partition, which has to be defined.
186+
187+
Partition definition using the Partition Manager (PM)
188+
-----------------------------------------------------
189+
190+
For devices that support :ref:`partition_manager` and have the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option automatically enabled by the Fast Pair build system, the system also automatically creates the ``bt_fast_pair`` partition.
191+
The partition is defined in the :file:`subsys/partition_manager/pm.yml.bt_fast_pair` file.
192+
The :ref:`fast_pair_input_device` sample follows this approach.
193+
Alternatively, the Fast Pair partition can be defined manually in the application's configuration file.
194+
To see how to do this, refer to the example in the :file:`samples/bluetooth/fast_pair/locator_tag/configuration/pm_static_nrf52840dk_nrf52840.yml` file which is a part of the :ref:`fast_pair_locator_tag` sample.
195+
For more information about defining Partition Manager partitions, see the :ref:`Configuration <pm_configuration>` section of the :ref:`partition_manager` page.
196+
197+
Partition definition using the Devicetree (DTS)
198+
-----------------------------------------------
199+
200+
For devices that do not support :ref:`partition_manager`, you must declare the ``bt_fast_pair_partition`` partition manually in the devicetree.
201+
Currently, the :ref:`zephyr:nrf54h20dk_nrf54h20` is the only device that requires manual partition definition.
202+
To see how to do this, refer to the example in the :file:`samples/bluetooth/fast_pair/input_device/boards/nrf54h20dk_nrf54h20_cpuapp.overlay` file.
203+
184204
To build an application with the Fast Pair support, include the following additional CMake options:
185205

186206
* ``FP_MODEL_ID`` - Fast Pair Model ID in format ``0xXXXXXX``,
187207
* ``FP_ANTI_SPOOFING_KEY`` - base64-encoded Fast Pair Anti-Spoofing Private Key.
188208

189-
The ``bt_fast_pair`` partition address is provided automatically by the build system.
209+
The Fast Pair partition address is provided automatically by the build system.
190210

191211
For example, when building an application with the |nRFVSC|, you need to add the following parameters in the **Extra CMake arguments** field on the **Add Build Configuration view**: ``-DFP_MODEL_ID=0xFFFFFF -DFP_ANTI_SPOOFING_KEY=AbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbA=``.
192212
Make sure to replace ``0xFFFFFF`` and ``AbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbAbA=`` with values obtained for your device.
@@ -1070,5 +1090,5 @@ The following are the required dependencies for the Fast Pair integration:
10701090
* :ref:`nrfxlib:crypto`
10711091
* :ref:`zephyr:bluetooth`
10721092
* :ref:`zephyr:settings_api`
1073-
* :ref:`partition_manager`
1093+
* :ref:`partition_manager` (only for supported board targets)
10741094
* :ref:`dult_readme`

doc/nrf/libraries/bluetooth/services/fast_pair.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,8 @@ Partition Manager
167167
-----------------
168168

169169
The Fast Pair provisioning data is preprogrammed to a dedicated flash memory partition.
170-
The GFPS selects the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option to enable the :ref:`partition_manager`.
170+
For targets that support the :ref:`partition_manager`, the GFPS selects the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option to enable it.
171+
The :ref:`zephyr:nrf54h20dk_nrf54h20` is the only device that does not support this feature.
171172

172173
Settings
173174
--------

doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -502,7 +502,7 @@ This section provides detailed lists of changes by :ref:`integration <integratio
502502
Google Fast Pair integration
503503
----------------------------
504504

505-
|no_changes_yet_note|
505+
* Added instructions on how to provision the Fast Pair data onto devices without the :ref:`partition_manager` support, specifically for the :ref:`zephyr:nrf54h20dk_nrf54h20`.
506506

507507
Edge Impulse integration
508508
------------------------

scripts/nrf_provision/fast_pair/README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ The ID and the key are required by the Google Fast Pair Service and are provided
9090
The magic data with predefined value is placed right before the mentioned provisioning data.
9191
The SHA-256 hash is calculated using the magic data and the provisioning data, and then placed right after the provisioning data to ensure data integrity.
9292

93-
The generated data must be placed on a dedicated ``bt_fast_pair`` partition defined by the :ref:`partition_manager`.
93+
The generated data must be placed on a dedicated Fast Pair partition defined by the build system.
9494
The :ref:`bt_fast_pair_readme` knows both the offset sizes and lengths of the individual data fields in the provisioning data.
9595
The service accesses the data by reading flash content.
9696
The service calculates the hash on its own and checks whether it matches the hash stored on the partition.

0 commit comments

Comments
 (0)