I'm integrating AccessorySetupKit for BLE earbuds discovery and running into an issue with ASDiscoveryDescriptor configuration.
Our earbuds don't have a fixed Bluetooth SIG company identifier. So I'm trying to use bluetoothNameSubstring + bluetoothServiceUUID instead.
However, this combination never discovers any devices. The picker appears but stays empty. As soon as I add a bluetoothCompanyIdentifier, the device is found instantly. I reproduced this with my Bose QC35 II as well, so it's not specific to our hardware.
My configuration:
bluetoothServiceUUID:set to our custom UUIDbluetoothNameSubstring:set to a substring matching the advertised device nameNSAccessorySetupBluetoothServices+NSAccessorySetupBluetoothNamesboth set in Info.plistsupportedOptions: .bluetoothPairingLE- iOS 26.3.1, iPhone 11
The documentation doesn't mention that bluetoothCompanyIdentifier is required.
Is bluetoothCompanyIdentifier actually required for BLE discovery? If so, is there a recommended approach for devices that don't have a fixed company identifier?