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: bluetooth: Add Channel Sounding Reflector with Ranging Responder sample #18894

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

alexstanoev-nordic
Copy link
Contributor

This sample can be used to set up a Channel Sounding Reflector with the GATT Ranging Responder service.
A Channel Sounding Initiator with Ranging Requestor can connect to this sample to receive CS Ranging Data and perform distance estimation.

The corresponding initiator sample will follow shortly and will update the docs with exact path references.

@github-actions github-actions bot added the doc-required PR must not be merged without tech writer approval. label Nov 14, 2024
@alexstanoev-nordic alexstanoev-nordic requested a review from a team November 14, 2024 13:04
@NordicBuilder
Copy link
Contributor

NordicBuilder commented Nov 14, 2024

CI Information

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

Inputs:

Sources:

sdk-nrf: PR head: d9e2653f1667afcdf1f80e30bcc133215d9fd9d0

more details

sdk-nrf:

PR head: d9e2653f1667afcdf1f80e30bcc133215d9fd9d0
merge base: 423981109ef39b942e73e2b8e91c64692bc4d566
target head (main): d0cdd9babd7a5904dc931f917e6af3920f083aab
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 (6)
CODEOWNERS
samples
│  ├── bluetooth
│  │  ├── channel_sounding_ras
│  │  │  ├── reflector
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── README.rst
│  │  │  │  ├── prj.conf
│  │  │  │  ├── sample.yaml
│  │  │  │  ├── src
│  │  │  │  │  │ main.c

Outputs:

Toolchain

Version: f51bdba1d9
Build docker image: docker-dtr.nordicsemi.no/sw-production/ncs-build:f51bdba1d9_912848a074

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

  • ◻️ Toolchain - Skipped: existing toolchain is used
  • ✅ Build twister
    • sdk-nrf test count: 432
  • ✅ Integration tests
    • ✅ test-fw-nrfconnect-ble_samples
Disabled integration tests
    • desktop52_verification
    • doc-internal
    • test_ble_nrf_config
    • test-fw-nrfconnect-apps
    • test-fw-nrfconnect-ble_mesh
    • test-fw-nrfconnect-boot
    • test-fw-nrfconnect-chip
    • 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_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

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

CONFIG_BT_L2CAP_TX_MTU=498
CONFIG_BT_BUF_ACL_TX_SIZE=502
CONFIG_BT_BUF_ACL_RX_SIZE=502
CONFIG_BT_CTLR_DATA_LENGTH_MAX=251
Copy link
Contributor

Choose a reason for hiding this comment

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

is DLE needed ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@@ -0,0 +1,79 @@
.. _channel_sounding_ras_reflector:

Bluetooth: Channel Sounding Reflector with Ranging Responder
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this name from a BT spec or something? If not, no need to capitalize other than the first word.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Channel Sounding, Ranging Responder and Reflector are names from BT specs where they're capitalized as such, but I can change this if you think it's better.


.. table-from-sample-yaml::

The sample also requires a device running a Channel Sounding Initiator with Ranging Requestor to connect to.
Copy link
Contributor

Choose a reason for hiding this comment

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

Same question as above about the capitalization. In all places.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Will take whatever decision is made in #18894 (comment) and update all instances accordingly

********

The sample demonstrates a basic Bluetooth® Low Energy Peripheral role functionality that exposes the GATT Ranging Responder Service and configures the Channel Sounding reflector role.
When Channel Sounding Ranging Data is generated by the controller, it will be forwarded to the Ranging Requestor Central via the Ranging Service.
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
When Channel Sounding Ranging Data is generated by the controller, it will be forwarded to the Ranging Requestor Central via the Ranging Service.
When Channel Sounding Ranging Data is generated by the controller, it will be forwarded to the Ranging Requestor Central through the Ranging Service.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Changed this line in #18894 (comment)


1. |connect_terminal_specific|
#. Reset the kit.
#. Program the other kit with a Channel Sounding Initiator with Ranging Requestor sample.
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
#. Program the other kit with a Channel Sounding Initiator with Ranging Requestor sample.
#. Program the other kit with the Channel Sounding Initiator with Ranging Requestor sample.

I guess we do not have such sample in NCS. I did not see one in Zephyr either. Link when there is such sample available.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Will update when we have merged the initiator sample

********

The sample demonstrates a basic Bluetooth® Low Energy Peripheral role functionality that exposes the GATT Ranging Responder Service and configures the Channel Sounding reflector role.
When Channel Sounding Ranging Data is generated by the controller, it will be forwarded to the Ranging Requestor Central via the Ranging Service.
Copy link
Contributor

@olivier-le-sage olivier-le-sage Nov 14, 2024

Choose a reason for hiding this comment

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

is this accurate ? Or would it be better to write "When Channel Sounding Ranging Data is generated by the controller, it will be automatically stored by the Ranging Service, and can be queried at any time by the Ranging Requestor"

Copy link
Contributor Author

Choose a reason for hiding this comment

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

By 'forwarded' I was abstracting the process happening inside the ranging service, but I like your wording better so I'll update.

This sample can be used to set up a Channel Sounding Reflector with
the GATT Ranging Responder service.
A Channel Sounding Initiator with Ranging Requestor can connect to this
sample to receive CS Ranging Data and perform distance estimation.

Signed-off-by: Aleksandar Stanoev <[email protected]>
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.

4 participants