Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

doc: fast_pair: Describe nRF54H20 support #19269

Merged
merged 1 commit into from
Dec 12, 2024

Conversation

alstrzebonski
Copy link
Contributor

Jira: NCSDK-30350

@alstrzebonski alstrzebonski requested review from a team as code owners December 4, 2024 17:37
@github-actions github-actions bot added the doc-required PR must not be merged without tech writer approval. label Dec 4, 2024
@alstrzebonski alstrzebonski added this to the 2.9.0 milestone Dec 4, 2024
@alstrzebonski
Copy link
Contributor Author

Release notes will be moved to release notes PR once they are approved here.

@NordicBuilder
Copy link
Contributor

You can find the documentation preview for this PR at this link. It will be updated about 10 minutes after the documentation build succeeds.

Note: This comment is automatically posted by the Documentation Publish GitHub Action.

@NordicBuilder
Copy link
Contributor

NordicBuilder commented Dec 4, 2024

CI Information

To view the history of this post, clich the 'edited' button above
Build number: 7

Inputs:

Sources:

sdk-nrf: PR head: 6e5f1aef8fcdee9d68a86572677045c2a002ced1

more details

sdk-nrf:

PR head: 6e5f1aef8fcdee9d68a86572677045c2a002ced1
merge base: a97ba919e45db56a60938d89ded2cb31920f985e
target head (main): 9b0cd12aed885f50894c9cb8f6f5873fcde4423e
Diff

Github labels

Enabled Name Description
ci-disabled Disable the ci execution
ci-all-test Run all of ci, no test spec filtering will be done
ci-force-downstream Force execution of downstream even if twister fails
ci-run-twister Force run twister
ci-run-zephyr-twister Force run zephyr twister
List of changed files detected by CI (4)
doc
│  ├── nrf
│  │  ├── external_comp
│  │  │  │ bt_fast_pair.rst
│  │  ├── libraries
│  │  │  ├── bluetooth
│  │  │  │  ├── services
│  │  │  │  │  │ fast_pair.rst
│  │  ├── releases_and_maturity
│  │  │  ├── releases
│  │  │  │  │ release-notes-changelog.rst
scripts
│  ├── nrf_provision
│  │  ├── fast_pair
│  │  │  │ README.rst

Outputs:

Toolchain

Version:
Build docker image:

Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped; ⚠️ Quarantine

  • ◻️ Toolchain
  • ◻️ Build twister
  • ◻️ Integration tests
Disabled integration tests
    • desktop52_verification
    • test_ble_nrf_config
    • test-fw-nrfconnect-apps
    • test-fw-nrfconnect-ble_mesh
    • test-fw-nrfconnect-ble_samples
    • test-fw-nrfconnect-boot
    • test-fw-nrfconnect-chip
    • test-fw-nrfconnect-fem
    • test-fw-nrfconnect-nfc
    • test-fw-nrfconnect-nrf-iot_libmodem-nrf
    • test-fw-nrfconnect-nrf-iot_lwm2m
    • test-fw-nrfconnect-nrf-iot_mosh
    • test-fw-nrfconnect-nrf-iot_nrf_provisioning
    • test-fw-nrfconnect-nrf-iot_positioning
    • test-fw-nrfconnect-nrf-iot_samples
    • test-fw-nrfconnect-nrf-iot_serial_lte_modem
    • test-fw-nrfconnect-nrf-iot_thingy91
    • test-fw-nrfconnect-nrf-iot_zephyr_lwm2m
    • test-fw-nrfconnect-nrf_crypto
    • test-fw-nrfconnect-ps
    • test-fw-nrfconnect-rpc
    • test-fw-nrfconnect-rs
    • test-fw-nrfconnect-tfm
    • test-fw-nrfconnect-thread
    • test-fw-nrfconnect-zigbee
    • test-low-level
    • test-sdk-audio
    • test-sdk-dfu
    • test-sdk-find-my
    • test-sdk-mcuboot
    • test-sdk-pmic-samples
    • test-sdk-sidewalk
    • test-sdk-wifi
    • test-secdom-samples-public

Note: This message is automatically posted and updated by the CI

@shanthanordic shanthanordic modified the milestones: 2.9.0, 2.9.0-nRF54H20 Dec 4, 2024
Comment on lines 183 to 186
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 final firmware hexadecimal file that can be flashed onto the device.
For devices with the :ref:`partition_manager` support for which the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option is automatically enabled by the Fast Pair build system, the ``bt_fast_pair`` partition is automatically created by the build system.
For other devices, you must declare the ``bt_fast_pair_partition`` partition manually in the device tree.
See :file:`samples/bluetooth/fast_pair/input_device/boards/nrf54h20dk_nrf54h20_cpuapp.overlay` for example how it can be done.
Copy link
Contributor

@annwoj annwoj Dec 5, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
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 final firmware hexadecimal file that can be flashed onto the device.
For devices with the :ref:`partition_manager` support for which the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option is automatically enabled by the Fast Pair build system, the ``bt_fast_pair`` partition is automatically created by the build system.
For other devices, you must declare the ``bt_fast_pair_partition`` partition manually in the device tree.
See :file:`samples/bluetooth/fast_pair/input_device/boards/nrf54h20dk_nrf54h20_cpuapp.overlay` for example how it can be done.
When building Fast Pair in the |NCS|, the build system automatically calls the Fast Pair provision script.
It then includes the resulting hexadecimal file in the final firmware that you can flash onto the device.
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.
For other devices, you must declare the ``bt_fast_pair_partition`` partition manually in the devicetree.
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.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@annwoj edited your suggestion a bit. Active voice and device tree -> devicetree

@@ -556,6 +560,9 @@ Bluetooth libraries and services
* Updated the :c:func:`bt_hogp_rep_read` function to forward the GATT read error code through the registered user callback.
This ensures that API user is aware of the error.

* :ref:`bt_fast_pair_readme` library:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the entries should be moved to the release notes PR, as it's already open

Copy link
Contributor

@peknis peknis Dec 5, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To this one #19241, please. As a comment.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I want to get approves here and then I will move it to the release notes PR.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The #19241 is merged now. Hence, we could keep this entry in the PR itself.

@@ -167,7 +167,7 @@ Partition Manager
-----------------

The Fast Pair provisioning data is preprogrammed to a dedicated flash memory partition.
The GFPS selects the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option to enable the :ref:`partition_manager`.
For targets that have the :ref:`partition_manager` support, the GFPS selects the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option to enable the :ref:`partition_manager`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
For targets that have the :ref:`partition_manager` support, the GFPS selects the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option to enable the :ref:`partition_manager`.
For targets that support the :ref:`partition_manager`, the GFPS selects the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option to enable it.

@@ -556,6 +560,9 @@ Bluetooth libraries and services
* Updated the :c:func:`bt_hogp_rep_read` function to forward the GATT read error code through the registered user callback.
This ensures that API user is aware of the error.

* :ref:`bt_fast_pair_readme` library:
* Added support in build system for devices that do not support the :ref:`partition_manager`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Added support in build system for devices that do not support the :ref:`partition_manager`.
* Added support in build system for devices that do not support the :ref:`partition_manager`.
The :ref:`zephyr:nrf54h20dk_nrf54h20` board target is the only example of such a device.

Copy link
Contributor Author

@alstrzebonski alstrzebonski Dec 9, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to add this entry to NCS 2.9.0 release changelog, because the support is already introduced in this release. @peknis, what is the process for that?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove the changelog entry from this PR and add it as a comment to #19240, if this is going to 2.9.0 (not 2.9.0-nRF54H20).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done here: #19240 (review).

@@ -646,7 +653,7 @@ This section provides detailed lists of changes by :ref:`integration <integratio
Google Fast Pair integration
Copy link
Contributor

@kapi-no kapi-no Dec 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My small observation (for technical writers):

We had this "Integrations" section in NCS 2.7 documentation but removed it for NCS 2.8.
It seems that it is back again.

I think we should consistently use one solution. It may be confusing to the users to sometimes report these updates in the "Integrations" section and other times in the "Documentation" section.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@divipillai, what should we do with that?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The process we follow is, While create the release notes PR, if there are no entries for a section, we remove that section. This could have been the case. But, the team can surely point to the correct sections the entries belong to (or add new sections) like we normally do for the Changelog file.
In this case, I agree, we should keep updates in one place and would say the "Integrations" section would be apt.

Copy link
Contributor Author

@alstrzebonski alstrzebonski Dec 9, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, thanks! I'm leaving it as is then.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe, I wasn't specific enough.

In NCS 2.7 we documented the changes to the Google Fast Pair integration guide as part of the Integrations section.

In NCS 2.8 we documented the changes to the same content (the Google Fast Pair integration guide) as part of the Documentation section.

@alstrzebonski
Copy link
Contributor Author

Addressed review comments.

@alstrzebonski
Copy link
Contributor Author

Rebased on main.

Comment on lines 239 to 242
* :ref:`fast_pair_input_device` sample:

* Added support for the :ref:`zephyr:nrf54h20dk_nrf54h20` board target.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This part I would also like to add to 2.9.0 release.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@alstrzebonski
Copy link
Contributor Author

Removed entries that should be added to 2.9.0 release changelog.


Partition definition using the Devicetree (DTS)
-----------------------------------------------
For devices that don't support :ref:`partition_manager`, you must declare the ``bt_fast_pair_partition`` partition manually in the devicetree.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
For devices that don't support :ref:`partition_manager`, you must declare the ``bt_fast_pair_partition`` partition manually in the devicetree.
For devices that do not support :ref:`partition_manager`, you must declare the ``bt_fast_pair_partition`` partition manually in the devicetree.

Partition definition using the Devicetree (DTS)
-----------------------------------------------
For devices that don't support :ref:`partition_manager`, you must declare the ``bt_fast_pair_partition`` partition manually in the devicetree.
Currently the :ref:`zephyr:nrf54h20dk_nrf54h20` board is the only device that requires manual partition definition.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Currently the :ref:`zephyr:nrf54h20dk_nrf54h20` board is the only device that requires manual partition definition.
Currently, the :ref:`zephyr:nrf54h20dk_nrf54h20` is the only device that requires manual partition definition.

@@ -167,7 +167,8 @@ Partition Manager
-----------------

The Fast Pair provisioning data is preprogrammed to a dedicated flash memory partition.
The GFPS selects the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option to enable the :ref:`partition_manager`.
For targets that support the :ref:`partition_manager`, the GFPS selects the :kconfig:option:`CONFIG_PM_SINGLE_IMAGE` Kconfig option to enable it.
The :ref:`zephyr:nrf54h20dk_nrf54h20` board target is the only example of a device that doesn't support it.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The :ref:`zephyr:nrf54h20dk_nrf54h20` board target is the only example of a device that doesn't support it.
The :ref:`zephyr:nrf54h20dk_nrf54h20` is the only device that does not support this feature.

Comment on lines 477 to 478
* Added instruction on how to provision the Fast Pair data onto devices without the :ref:`partition_manager` support.
The :ref:`zephyr:nrf54h20dk_nrf54h20` board target is the only example of such device.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Added instruction on how to provision the Fast Pair data onto devices without the :ref:`partition_manager` support.
The :ref:`zephyr:nrf54h20dk_nrf54h20` board target is the only example of such device.
* 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`.

Copy link
Contributor

@kapi-no kapi-no left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SML update should be done as part of a separate PR that is cherry-picked into NCS 2.9

Partition definition using the Devicetree (DTS)
-----------------------------------------------
For devices that don't support :ref:`partition_manager`, you must declare the ``bt_fast_pair_partition`` partition manually in the devicetree.
Currently the :ref:`zephyr:nrf54h20dk_nrf54h20` board is the only device that requires manual partition definition.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wouldn't write that as we will have to maintain it with every new board. Maybe change that nrf54h20 is an example of SoC which uses it

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd leave it as is and remove this sentence completely once new target without partition manager support appears.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have this line of code:

select PM_SINGLE_IMAGE if !(SOC_SERIES_NRF54HX)
so it has to be maintained anyway.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok :)

@alstrzebonski alstrzebonski removed this from the 2.9.0-nRF54H20 milestone Dec 10, 2024
Jira: NCSDK-30350

Signed-off-by: Aleksander Strzebonski <[email protected]>
@alstrzebonski alstrzebonski requested a review from peknis December 10, 2024 11:24
@alstrzebonski
Copy link
Contributor Author

@peknis, please rereview :)

@rlubos rlubos merged commit 510aaaf into nrfconnect:main Dec 12, 2024
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc-required PR must not be merged without tech writer approval.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants