簡體   English   中英

連接到配對的藍牙設備iOS8.1

[英]Connect to Paired Bluetooth Device iOS8.1

CoreBlooth的所有事物的新手。 我已經成功編寫了一個小應用程序,可以連接到Wahoo Blue HR心率監測器並獲取我的心率等的bpm。我使用了下面的教程,但是將代碼重新編寫了下來。

鏈接到教程

我現在正在嘗試編寫一個簡單的應用程序,以從我擁有的Bluetooth LE BP閱讀器中檢索血壓讀數。 所討論的模型是iHealth BP5。

當我使用以下代碼掃描此設備時,我什么也沒得到。

func centralManagerDidUpdateState(central: CBCentralManager!) {

    if central.state == CBCentralManagerState.PoweredOff {
        println("CoreBluetooth BLE hardware is powered off")
    }
    else if central.state == CBCentralManagerState.PoweredOn {
        println("CoreBluetooth BLE hardware is powered on and ready")
        let IHEALTHBP5_BP_DEVICE_INFO_SERVICE_UUID = CBUUID(string:"1810")
        let services = [IHEALTHBP5_BP_DEVICE_INFO_SERVICE_UUID]
        centralManager!.scanForPeripheralsWithServices(services, options: nil)
    }

}

我顯然已將服務UUID更改為BP監視器,並使用運行LightBlue並啟動血壓服務的iPad進行了檢查。 它可以在iPad上模擬BP服務,但不能與BP5設備本身一起正常工作嗎?

我一直在閱讀有關制造商能夠隱藏設備的信息? 這可能是正在發生的事情。

我注意到,實際上必須通過iOS藍牙設置對“ BP5”設備進行“配對”,才能與官方應用程序一起使用,而對心率監視器則不能。 這是否表明除了BP5具有更安全的連接類型之外,其他任何人都可以廣播心率監視器?

抱歉,如果不使用該術語,但我對藍牙世界是陌生的。

任何幫助或指導表示贊賞。

問候

奧莉

PS在檢查藍牙設置應用程序中的設備是否已“連接”並且設備上的藍牙指示燈從閃爍變為穩定后,我使用了以下方法,但返回的結果為零。

let connectedPeripherals =   centralManager!.retrieveConnectedPeripheralsWithServices(services)
        println("Number of Connected Devices : \(connectedPeripherals.count)")

該產品的網頁指出,它使用“無線通信:Bluetooth V3.0 + EDR 2類SPP”,這是一種“傳統” Bluetooth串行端口協議,而不是Bluetooth Low Energy / Bluetooth 4.0。 這與您需要配對設備以及Core Bluetooth不可見的設備的描述相符。

這種類型的設備由外部附件框架管理。 您將需要標識他們已在MFi程序下注冊的供應商ID,然后查找其協議的文檔或對它們的協議進行反向工程,因為它與使用GATT協議的BLE BP監視器不同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM