I'm trying to get the new Bluetooth Channel Sounding distance measurement working between an iPhone 17 running iOS 27 Beta4 and a Nordic nRF54L15DK board.
- I enabled bonding in the latest ipt_reflector sample from Nordic. Someone get the sample working with iOS 27 beta1.
- I paired the board with AccessorySetupKit.
I suspect that the Channel Sounding feature is subject to regional restrictions by country (China).
Here's the code to check if CS is available on my iPhone
func centralManagerDidUpdateState(_ central: CBCentralManager) {
switch central.state {
case .poweredOn:
print("central update")
if CBCentralManager.supports(.channelSounding) {
print("Supports channel sounding - YES")
} else {
print("Supports channel sounding - NO")
}
if let id = pendingPeripheralIdentifier, let name = pendingPeripheralName {
pendingPeripheralIdentifier = nil
pendingPeripheralName = nil
retrieveAndConnect(identifier: id, name: name)
}
case .poweredOff: connectionState = .bluetoothOff
case .unauthorized: connectionState = .error("Bluetooth not authorized — check Settings")
case .unsupported: connectionState = .error("BLE not supported on this device")
default: break
}
}
The console log shows
[ASK] Session activated — accessories: 1
central update
Supports channel sounding - NO
[CS] startChannelSounding skipped — channelSounding not supported
Please also check the topic. it's very similar.