Cypress PSoC Creator 4.2 のアドバタイズ データに BLE デバイス アドレスを追加しようとしています。
GAP 設定で関連するボックスをチェックし、PSoC 4 デバイス (CYBLE-212006-01) のプロジェクトをビルドしました。
私の iOS アプリでは、次のルーチン (CBCentralManager) を使用して周辺機器を検出し、広告データを出力します。
func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber){
if peripheral.name != nil {
if peripheral.name!.contains("TEST") {
print(advertisementData)
self.internalPeripheralArray.append(BluetoothPeripheral(name: peripheral.name!, UUID: peripheral.identifier, RSSI: RSSI, peripheral: peripheral, selected: false))
self.internalPeripheralArray.sort(by: {($0.RSSI.intValue) > ($1.RSSI.intValue)})
}
}
}
コンソールに次のように出力されます。
[「kCBAdvDataLocalName」: テスト、「kCBAdvDataIsConnectable」: 1]
BLE デバイスのアドレスが出力されない理由がわかりません。
ところで:
TX 電力レベルなど、他のアドバタイズ データ パッケージを追加すると、すぐに印刷出力に表示されます。