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

samples: matter: Add guide on how to flash factory data on nRF54H #18398

Merged

Conversation

ArekBalysNordic
Copy link
Contributor

Until we do not have a proper solution for merging the factory data hex file with the firmware hex file, we need to flash the factory data manually. This commit allows doing that on nRF54H20 DK and describes how to do it in Matter samples.

@ArekBalysNordic ArekBalysNordic requested review from a team as code owners October 30, 2024 15:31
@github-actions github-actions bot added doc-required PR must not be merged without tech writer approval. manifest changelog-entry-required Update changelog before merge. Remove label if entry is not needed or already added. labels Oct 30, 2024
@NordicBuilder
Copy link
Contributor

NordicBuilder commented Oct 30, 2024

The following west manifest projects have been modified in this Pull Request:

Name Old Revision New Revision Diff
matter nrfconnect/sdk-connectedhomeip@668f104 nrfconnect/sdk-connectedhomeip@95a8c0f (master) nrfconnect/[email protected]

Note: This message is automatically posted and updated by the Manifest GitHub Action.

@NordicBuilder
Copy link
Contributor

NordicBuilder commented Oct 30, 2024

CI Information

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

Inputs:

Sources:

sdk-nrf: PR head: e464a7bfa5b7225f7a4aeaaf5ed9861900d7c67b
matter: PR head: 95a8c0fbcc94deb32c9365c5e88279d9292f8fdd

more details

sdk-nrf:

PR head: e464a7bfa5b7225f7a4aeaaf5ed9861900d7c67b
merge base: 152acb8205de28b3cff293e2a6c0ac026f2ba48c
target head (main): 658d36e7679b2c490b77881e101f8e1e1df902c8
Diff

matter:

PR head: 95a8c0fbcc94deb32c9365c5e88279d9292f8fdd
merge base: 668f104204ca3856818283d970501bd2a0e21f91
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 (7)
applications
│  ├── matter_bridge
│  │  ├── doc
│  │  │  │ matter_bridge_description.rst
modules
│  ├── lib
│  │  ├── matter
│  │  │  ├── config
│  │  │  │  ├── nrfconnect
│  │  │  │  │  ├── chip-module
│  │  │  │  │  │  │ generate_factory_data.cmake
│  │  │  ├── src
│  │  │  │  ├── platform
│  │  │  │  │  ├── nrfconnect
│  │  │  │  │  │  │ FactoryDataProvider.h
samples
│  ├── matter
│  │  ├── common
│  │  │  ├── dts
│  │  │  │  ├── nrf54h20
│  │  │  │  │  │ nrf54h20_cpuapp_memory_map.dtsi
│  │  ├── lock
│  │  │  │ README.rst
│  │  ├── template
│  │  │  │ README.rst
west.yml

Outputs:

Toolchain

Version:
Build docker image:

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

  • ◻️ Toolchain
  • ◻️ Build twister
  • ◻️ Integration tests
    • ◻️ test-fw-nrfconnect-chip
Disabled integration tests
    • desktop52_verification
    • doc-internal
    • 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-fem
    • test-fw-nrfconnect-nfc
    • test-fw-nrfconnect-nrf-iot_cloud
    • 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_thingy91
    • test-fw-nrfconnect-nrf-iot_zephyr_lwm2m
    • test-fw-nrfconnect-nrf_crypto
    • test-fw-nrfconnect-proprietary_esb
    • 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

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

@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 Publishing GitHub Action.

Copy link
Contributor

@kkasperczyk-no kkasperczyk-no left a comment

Choose a reason for hiding this comment

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

Two comments, the rest looks good to me:

  1. Should we add the same peace of docs into bridge .rst?
  2. Should we create a known issue for this limitation?

samples/matter/lock/README.rst Outdated Show resolved Hide resolved
samples/matter/lock/README.rst Outdated Show resolved Hide resolved
samples/matter/lock/README.rst Outdated Show resolved Hide resolved
samples/matter/lock/README.rst Outdated Show resolved Hide resolved
west flash --erase

The ``west flash --erase`` command does not clear the factory data partition.
If you want to clear it, use the following command, and fill the ``<address>`` argument as an address of the factory data partition, by default it is set to ``0xe174000``:
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
If you want to clear it, use the following command, and fill the ``<address>`` argument as an address of the factory data partition, by default it is set to ``0xe174000``:
If you want to clear it, use the following command, and fill the ``<address>`` argument as an address of the factory data partition.
By default, the address is set to ``0xe174000``.

Could also be that the argument defaults to the value, not sure.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

They can modify that value in the dts file, so maybe we should do it generically but point out the default value to ensure that it will work for the first attempt.

@wiba-nordic
Copy link
Contributor

@FrancescoSer Since this is about nRF54H, do you want to take a look?

@ArekBalysNordic ArekBalysNordic force-pushed the nrf54h20_factory_data_workaround branch 2 times, most recently from 67a8ac5 to 1c00a39 Compare October 31, 2024 08:42
@ArekBalysNordic ArekBalysNordic added this to the 2.8.0 milestone Oct 31, 2024
@ArekBalysNordic ArekBalysNordic added the bugfix Fixes a known bug label Oct 31, 2024
@wiba-nordic
Copy link
Contributor

2. Should we create a known issue for this limitation?

I believe factory data was not supported for v2.7.0 for nRF54H20, so no known issue is needed.

Until we do not have a proper solution for merging the factory data
hex file with the firmware hex file, we need to flash the factory
data manually. This commit allows doing that on nRF54H20 DK and
describes how to do it in Matter samples.

Signed-off-by: Arkadiusz Balys <[email protected]>
@ArekBalysNordic ArekBalysNordic force-pushed the nrf54h20_factory_data_workaround branch from 1c00a39 to e464a7b Compare October 31, 2024 10:57
@NordicBuilder NordicBuilder removed the DNM label Oct 31, 2024
@rlubos rlubos merged commit 5736ed3 into nrfconnect:main Oct 31, 2024
13 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugfix Fixes a known bug changelog-entry-required Update changelog before merge. Remove label if entry is not needed or already added. doc-required PR must not be merged without tech writer approval. manifest manifest-matter
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants