Hi Nordic team,
I am working on BLE Channel Sounding (Initiator + Reflector) on nRF54L15
using Zephyr / nRF Connect SDK v3.1.1.
I would like to clarify the expected behavior regarding RSSI after a BLE
connection is established.
Environment:
- Device: nRF54L15 DK
- SDK: nRF Connect SDK v3.1.1
- OS: Zephyr
- Role: Central (Initiator), connected to a Reflector
- Feature: BLE Channel Sounding (CS)
What I have observed so far:
1) Scan / Advertising RSSI works as expected
- RSSI values are available during scanning
- Matches what is shown on a mobile phone BLE scanner
2) After BLE connection is established:
- Calling HCI Read RSSI (BT_HCI_OP_READ_RSSI) always returns:
rssi = 127
- According to the spec, 127 indicates "RSSI not available"
- This happens consistently even when the link is stable and active
3) Zephyr currently does not provide an API such as:
bt_conn_le_get_rssi()
(at least not in NCS v3.1.1)
4) Mobile phones still show an RSSI value while connected,
but I understand this is not necessarily the BLE connection RSSI,
and may be derived from other measurements.
My questions are:
- Is it expected that Connection RSSI is not available on nRF54L15?
- Is the HCI Read RSSI command intentionally unsupported or not implemented
for LE connections on this SoC?
- Is there any recommended alternative to estimate link quality
after connection (e.g. Link Quality, packet statistics, CS-related metrics)?
- Are there plans to expose connection RSSI in future Zephyr / NCS releases?
At the moment, we are considering:
- Using Scan RSSI (ADV RSSI) before connection
- Using Channel Sounding tone quality / success rate as a link quality indicator
- Dropping Connection RSSI entirely if it is not supported
I would appreciate confirmation on whether this behavior is expected,
and if there is an official recommendation.
Thanks!
Note:
We are able to run Channel Sounding successfully (RTT / IFFT / PBR),
so the link is clearly active. The lack of connection RSSI seems to be
a limitation rather than a connectivity issue.