Hubungkan ke Perangkat Bluetooth yang Dipasangkan iOS8.1

Pemula dalam segala hal CoreBlooth di sini. Saya telah berhasil menulis aplikasi kecil untuk terhubung ke monitor detak jantung Wahoo Blue HR dan mengambil bpm untuk detak jantung saya, dll. Saya menggunakan tutorial di bawah ini tetapi menulis ulang kodenya menjadi swift.

Tautan ke tutorial

Saya sekarang mencoba menulis aplikasi sederhana untuk mengambil pembacaan Tekanan Darah dari pembaca Bluetooth LE BP yang saya miliki. Model yang dimaksud adalah iHealth BP5.

Saat saya memindai perangkat ini menggunakan kode berikut, saya tidak mendapatkan apa pun.

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)
    }

}

Saya jelas telah mengubah UUID layanan menjadi monitor BP dan memeriksa menggunakan iPad yang menjalankan LightBlue dan memulai layanan tekanan darah. Ini berfungsi baik dengan iPad yang mensimulasikan layanan BP tetapi tidak dengan perangkat BP5 itu sendiri?

Saya telah membaca sesuatu tentang produsen yang dapat menyembunyikan perangkat? Mungkinkah ini yang sedang terjadi.

Saya perhatikan bahwa perangkat BP5 harus benar-benar 'Dipasangkan' melalui pengaturan Bluetooth iOS agar dapat berfungsi dengan aplikasi resmi sedangkan monitor detak jantung tidak. Apakah ini menunjukkan monitor detak jantung disiarkan kepada siapa pun kecuali BP5 memiliki jenis koneksi yang lebih aman?

Mohon maaf jika terminologinya tidak aktif tetapi saya baru mengenal dunia bluetooth.

Bantuan atau bimbingan apa pun dihargai.

salam

Olly

PS Setelah memeriksa perangkat 'terhubung' di aplikasi pengaturan bluetooth dan dengan lampu bluetooth pada perangkat berubah dari berkedip ke solid, saya menggunakan metode berikut tetapi hasilnya nol.

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

person CpBulletSponge    schedule 20.11.2014    source sumber
comment
Bisakah Anda memposting kode yang Anda tulis ulang di suatu tempat? GitHub misalnya? :)   -  person Niek Nijland    schedule 18.06.2015
comment
Hai Olly, bisakah Anda mengatasi masalah ini? Jika ya, bisakah Anda membagikan beberapa kode? Terima kasih!   -  person Jorge    schedule 02.05.2017


Jawaban (1)


halaman web produk menyatakan bahwa produk tersebut menggunakan "Nirkabel komunikasi: Bluetooth V3.0+EDR Kelas 2 SPP", yang merupakan protokol port serial Bluetooth "lama", bukan Bluetooth Low Energy/Bluetooth 4.0. Ini cocok dengan deskripsi Anda tentang perlunya memasangkan perangkat dan perangkat tidak terlihat oleh Core Bluetooth.

Perangkat jenis ini dikelola oleh Kerangka Aksesori Eksternal. Anda perlu mengidentifikasi ID vendor yang telah mereka daftarkan di bawah program MFi dan kemudian mencari dokumentasi pada protokol mereka atau merekayasa balik protokol mereka karena ini tidak akan sama dengan monitor BLE BP, yang menggunakan protokol GATT.

person Paulw11    schedule 20.11.2014
comment
Terima kasih atas tanggapannya, itu sangat masuk akal. Kalau begitu, aku akan menyerah pada hal itu! Bersulang - person CpBulletSponge; 21.11.2014
comment
Singkatnya, perangkat BLE tidak pernah terlihat di aplikasi Pengaturan sampai aplikasi khusus memindai dan menghubungkannya. Sedangkan perangkat BT 'lama' dapat dilihat dari aplikasi Pengaturan. Dengan pengecualian perangkat BLE yang meminta mis. Koneksi layanan ANCS. Astaga - coba buat aplikasi yang ramah pengguna di antara banyak aplikasi itu!! - person Nick T; 01.12.2014