Use nRF54L15DK PCA10156 to test Bluetooth Channel Sounding

I'm use latest ncs source code and nRF54L15DK PCA10156 to test Bluetooth Channel Sounding, but i'm find the result not very accurate, and also echo such like warnings:

ter. (peer: 3329, local: 3330)
[2025-06-10 14:39:21.176] W: Mismatch of local and peer step mode 1 != 2
[2025-06-10 14:39:21.421] E: Tried to parse empty step data.
[2025-06-10 14:39:23.284] I: Dropped subevent results. Waiting for ranging data from peer.
[2025-06-10 14:39:23.373] I: Ranging data dropped as peer ranging counter doesn't match local ranging data counter. (peer: 3339, local: 3338)
[2025-06-10 14:39:24.309] I: Dropped subevent results. Waiting for ranging data from peer.
[2025-06-10 14:39:24.808] I: Dropped subevent results. Waiting for ranging data from peer.
[2025-06-10 14:39:24.885] I: Distance estimates on antenna path 0: ifft: 0.530323, phase_slope: 1.803744, rtt: 1.178596
[2025-06-10 14:39:24.893] I: Sleeping for a few seconds...
[2025-06-10 14:39:25.024] I: Ranging data dropped as peer ranging counter doesn't match local ranging data counter. (peer: 3345, local: 3344)

╰─➤ west list 2 ↵
manifest nrf HEAD N/A
zephyr zephyr d07064e0c1c9f6b8f5c52d1ae9280b2b13894c99 github.com/.../sdk-zephyr
wfa-qt-control-app modules/lib/wfa-qt-control-app af011c8a8d338ba529f17aed2cc2ef4c1c591a58 github.com/.../sdk-wi-fiquicktrack-controlappc
mcuboot bootloader/mcuboot b37f58b7fa7221fe2fd4e9d0ca0a2567e5279bc0 github.com/.../sdk-mcuboot
qcbor modules/tee/tf-m/qcbor 751d36583a9ce1a640900c57e13c9b6b8f3a2ba2 github.com/.../QCBOR
mbedtls modules/crypto/mbedtls 44ce293d1d9bf4251e337160250d7dd477f52edd github.com/.../sdk-mbedtls
oberon-psa-crypto modules/crypto/oberon-psa-crypto 0c047bb1ab0bc92450906b451c706c7255938903 github.com/.../sdk-oberon-psa-crypto
nrfxlib nrfxlib b6675b02789cf0c34d7bb9dd9c0694e6dc05bf77 github.com/.../sdk-nrfxlib
trusted-firmware-m modules/tee/tf-m/trusted-firmware-m bf3105bd6f49a758dee722e124e0dc0db9119afe github.com/.../sdk-trusted-firmware-m
psa-arch-tests modules/tee/tf-m/psa-arch-tests 3da9313e64806d352c519e3205e81cf959067588 github.com/.../sdk-psa-arch-tests
matter modules/lib/matter 3ccd6078b9b33af0fa6ddb71e51bb9860f9198a0 github.com/.../sdk-connectedhomeip
cjson modules/lib/cjson c6af068b7f05207b28d68880740e4b9ec1e4b50a github.com/.../sdk-cjson
azure-sdk-for-c modules/lib/azure-sdk-for-c 308c171cb4b5eed266649012a68406487ec81fb2 github.com/.../azure-sdk-for-c
cirrus modules/hal/cirrus-logic 3873a08377d93a479105a75ac390d3bbcd31d690 github.com/.../sdk-mcu-drivers
openthread modules/lib/openthread ncs-thread-reference-20250402 github.com/.../sdk-openthread
suit-generator modules/lib/suit-generator 0725f0c362ab8428048a977080045bb5e73e0d9d github.com/.../suit-generator
suit-processor modules/lib/suit-processor 94effb7561b3a970195df76165e4b15e4ac0c34e github.com/.../suit-processor
cmock test/cmock f65066f15d8248e6dcb778efb8739904a4512087 github.com/.../cmock
memfault-firmware-sdk modules/lib/memfault-firmware-sdk 1.18.0 github.com/.../memfault-firmware-sdk
bsim tools/bsim a88d3353451387ca490a6a7f7c478a90c4ee05b7 github.com/.../bsim_west
coremark modules/benchmark/coremark d5fad6bd094899101a4e5fd53af7298160ced6ab github.com/.../coremark
canopennode modules/lib/canopennode dec12fa3f0d790cafa8414a4c2930ea71ab72ffd github.com/.../canopennode
chre modules/lib/chre 3b32c76efee705af146124fb4190f71be5a4e36e github.com/.../chre
lz4 modules/lib/lz4 11b8a1e22fa651b524494e55d22b69d3d9cebcfd github.com/.../lz4
nanopb modules/lib/nanopb 7307ce399b81ddcb3c3a5dc862c52d4754328d38 github.com/.../nanopb
tf-m-tests modules/tee/tf-m/tf-m-tests c712761dd5391bf3f38033643d28a736cae89a19 github.com/.../tf-m-tests
zscilib modules/lib/zscilib ee1b287d9dd07208d2cc52284240ac25bb66eae3 github.com/.../zscilib
cmsis modules/hal/cmsis d1b8b20b6278615b00e136374540eb1c00dcabe7 github.com/.../cmsis
cmsis-dsp modules/lib/cmsis-dsp d80a49b2bb186317dc1db4ac88da49c0ab77e6e7 github.com/.../cmsis-dsp
cmsis-nn modules/lib/cmsis-nn e9328d612ea3ea7d0d210d3ac16ea8667c01abdd github.com/.../cmsis-nn
cmsis_6 modules/hal/cmsis_6 6dd50439a9b83398ff2ae1376eef0a2a0b95913b github.com/.../CMSIS_6
edtt tools/edtt b9ca3c7030518f07b7937dacf970d37a47865a76 github.com/.../edtt
fatfs modules/fs/fatfs 16245c7c41d2b79e74984f49b5202551786b8a9b github.com/.../fatfs
hal_nordic modules/hal/nordic 1f169d927e367eb1e161972e9504da5aa1f10c42 github.com/.../hal_nordic
hal_st modules/hal/st 05fd4533730a9aea845261c5d24ed9832a6f0b6e github.com/.../hal_st
hal_tdk modules/hal/tdk 6727477af1e46fa43878102489b9672a9d24e39f github.com/.../hal_tdk
hal_wurthelektronik modules/hal/wurthelektronik e3e2797b224fc48fdef1bc3e5a12a7c73108bba2 github.com/.../hal_wurthelektronik
hostap modules/lib/hostap 8412f4b23b6267ee6035d25515a23aaf243f6ad7 github.com/.../hostap
liblc3 modules/lib/liblc3 48bbd3eacd36e99a57317a0a4867002e0b09e183 github.com/.../liblc3
libmetal modules/hal/libmetal 14f519529a1e4a46aaea6826f5a41d99a3347276 github.com/.../libmetal
littlefs modules/fs/littlefs ed0531d59ee37f5fb2762bcf2fc8ba4efaf82656 github.com/.../littlefs
loramac-node modules/lib/loramac-node fb00b383072518c918e2258b0916c996f2d4eebe github.com/.../loramac-node
lvgl modules/lib/gui/lvgl 1ed1ddd881c3784049a92bb9fe37c38c6c74d998 github.com/.../lvgl
mipi-sys-t modules/debug/mipi-sys-t 33e5c23cbedda5ba12dbe50c4baefb362a791001 github.com/.../mipi-sys-t
net-tools tools/net-tools 986bfeb040df3d9029366de8aea4ce1f84e93780 github.com/.../net-tools
nrf_hw_models modules/bsim_hw_models/nrf_hw_models d5b95fdd0260e8189e788d40d2863d1e2d4be159 github.com/.../nrf_hw_models
nrf_wifi modules/lib/nrf_wifi 5e185a2b33b4f5b9524999a5bfd96121d25ffdbc github.com/.../nrf_wifi
open-amp modules/lib/open-amp f7f4d083c7909a39d86e217376c69b416ec4faf3 github.com/.../open-amp
percepio modules/debug/percepio 49e6dc202aa38c2a3edbafcc2dab85dec6aee973 github.com/.../percepio
picolibc modules/lib/picolibc 82d62ed1ac55b4e34a12d0390aced2dc9af13fc9 github.com/.../picolibc
segger modules/debug/segger cf56b1d9c80f81a26e2ac5727c9cf177116a4692 github.com/.../segger
tinycrypt modules/crypto/tinycrypt 1012a3ebee18c15ede5efc8332ee2fc37817670f github.com/.../tinycrypt
uoscore-uedhoc modules/lib/uoscore-uedhoc 54abc109c9c0adfd53c70077744c14e454f04f4a github.com/.../uoscore-uedhoc
zcbor modules/lib/zcbor 9b07780aca6fb21f82a241ba386ad9b379809337 github.com/.../zcbor
(.venv-3.10) ╭─mi@lingao ~/ncs
╰─➤

  • Hello,

    I am sorry to hear that. So you are using the latest tagged version of the nordic samples (ie. this and this, don't confuse them with the one directly from Zephyr)? Or are you using the main branch?

    accurate

    When it comes to accuracy it is worth noting that these samples aren't made to demonstrate the best accuracy you can find, but how to get eg. the I/Q values from which you can get the distance. You could always create your own algorithm for the rest, or purchase a third party one. Though with that said, how bad is it? I would recommend looking at IFFT for shorter distances and RTT for longer ones. 

    If you wonder about what sort of accuracy you should be able to achieve with BT Channel Sounding I would recommend having a look at this older webinar for the nordic distance toolbox (which is a proprietary older solution we have available for nRF52/53). It is based on a bit of the same technology as channel sounding, so the results should be similar but a bit better for channel sounding.

    and also echo such like warnings:

    Are these default unmodified samples? It looks to me as if one of them has modified its step mode, and there is a certain mismatch there.

    Regards,

    Elfving

Related