Bagikan melalui


Tumpukan driver Bluetooth

Tumpukan driver Bluetooth terdiri dari bagian inti dari dukungan yang disediakan oleh Microsoft untuk protokol Bluetooth. Dengan tumpukan ini, perangkat yang mendukung Bluetooth dapat menemukan satu sama lain dan membangun koneksi. Di seluruh koneksi tersebut, perangkat dapat bertukar data dan berinteraksi satu sama lain melalui berbagai aplikasi.

Gambar berikut menunjukkan modul dalam tumpukan driver Bluetooth, bersama dengan kemungkinan mode pengguna kustom dan driver mode kernel yang tidak disertakan dalam Windows Vista dan yang lebih baru. Driver kustom ini dikenal sebagai driver profil.

Diagram memperlihatkan arsitektur tumpukan driver Bluetooth.

  • Mode pengguna

    • Aplikasi mode pengguna- Aplikasi mode pengguna yang mengakses tumpukan driver Bluetooth melalui API yang diterbitkan. Untuk informasi selengkapnya, lihat Tentang Bluetooth di dokumentasi Windows SDK.

      Aplikasi mode pengguna harus ditautkan terhadap BthProps.lib, alih-alih IrProps.lib, untuk menggunakan API, seperti BluetoothSetLocalServiceInfo.

  • Contoh driver profil

    • Driver Mode Kernel WAP- Komponen Protokol Aplikasi Nirkabel (WAP) adalah contoh driver profil yang berkomunikasi antara tumpukan jaringan Windows dan BthPort, mengakses antarmuka L2CAP dan, secara opsional, antarmuka SDP yang terkandung dalam L2CAP. Profil lain yang mungkin termasuk profil Distribusi Audio Tingkat Lanjut (A2DP), profil Kontrol Jarak Jauh A/V (AVRCP), profil Distribusi Generik A/V (GAVDP), dan profil Akses ISDN Umum (CIP).

    • Driver Mode Kernel Audio- Contoh driver profil yang berkomunikasi antara tumpukan audio Windows dan BthPort, mengakses antarmuka SCO yang terkandung dalam yang terakhir. Kemungkinan profil termasuk profil Hands Free (HFP), profil Headset (HSP), profil Telepon Cordless (CTP), dan profil Interkom (ICP). Pengandar profil ini disertakan dengan Windows yang dimulai dengan Windows 8.

    • Bluetooth LE Heart Rate Monitor Profile- Contoh driver profil LE Bluetooth yang berkomunikasi dengan Bluetooth Low Energy (LE) API.

  • Komponen tumpukan driver Bluetooth

    • IrProps- Komponen yang digunakan untuk kompatibilitas mundur untuk driver profil yang dibuat untuk versi pertama tumpukan driver Bluetooth. IrProps disediakan hanya untuk kompatibilitas mundur. Gunakan komponen BthProps untuk pengembangan baru.

    • BthProps- Komponen yang berisi implementasi antarmuka pengguna Bluetooth bersama dengan implementasi API Bluetooth yang diakses aplikasi mode pengguna. Komponen ini mengirimkan pertanyaan ke BthServ melalui panggilan prosedur jarak jauh (RPC). Selain itu, BthProps melakukan pertukaran pin dengan BthPort melalui IOCTL privat. Perhatikan bahwa BthProps berjalan pada sistem apa pun dengan radio berkemampuan Bluetooth.

    • BthServ- Layanan yang bertanggung jawab untuk penembolokan dan meneruskan data pertanyaan ke Bthport.

    • BthCi- Alat penginstal kelas Bluetooth.

    • WshBth- Komponen pembantu soket Windows Bluetooth. WshBth dipanggil oleh lapisan soket Windows untuk melakukan operasi soket. WshBth terutama memanggil RfComm melalui antarmuka TDI. WshBth juga memanggil BthServ untuk melakukan pertanyaan perangkat jarak jauh dan ke BthPort untuk melakukan pertanyaan radio lokal.

    • FSquirt- Komponen Nonextensible Object Exchange (OBEX) yang memungkinkan pengguna mengirim dan menerima file di seluruh koneksi Bluetooth yang terbuka. OBEX berkomunikasi dengan perangkat jarak jauh melalui RFCOMM yang menggunakan komponen WshBth.

    • BthPrint- Komponen yang mengimplementasikan Profil Penggantian Kabel Hardcopy (HCRP). Komponen ini memungkinkan sistem cetak untuk mengirim data ke dan menerima data dari printer berkemampukan Bluetooth. BthPrint berkomunikasi dengan antarmuka SDP di BthPort untuk meminta printer jarak jauh dan antarmuka L2CAP di BthPort untuk mengirim dan menerima data.

    • HidBth- Komponen yang mengimplementasikan profil Human Interface Device (HID). HidBth juga berkomunikasi dengan antarmuka L2CAP dan SDP di BthPort. HidBth terhubung ke tumpukan HID seperti modul USB HID.

    • BthPan- Komponen yang mengimplementasikan profil Personal Area Network (PAN), menyediakan koneksi TCP di seluruh koneksi Bluetooth yang terbuka. Di Windows Vista dan Windows XP, BthPan hanya mendukung koneksi keluar. BthPan juga merupakan klien komponen BthPort dan menggunakan antarmuka L2CAP dan SDP.

    • RfComm- Komponen yang mengimplementasikan protokol emulasi kabel serial Bluetooth. RfComm juga menggunakan antarmuka L2CAP dan SDP yang ditemukan di BthPort. Tepi atas RfComm mengekspos antarmuka TDI, memungkinkan komponen ini tampak sebagai transportasi jaringan. Ini adalah cara WshBth terhubung ke Bluetooth untuk mengirim dan menerima data dari API mode pengguna.

      Aplikasi mode pengguna dapat mengakses RfComm menggunakan antarmuka Winsock yang dijelaskan di Windows SDK.

    • BthModem- Komponen yang mengimplementasikan port COM virtual dan jaringan dial-up (DUN). BthModem mengarahkan semua I/O dan operasi kontrol ke RfComm melalui antarmuka TDI. Tepi atas BthModem berkomunikasi dengan Serial.sys untuk memberikan penampilan sebagai port COM nirkabel.

    • BthEnum- Pengemudi bus Bluetooth. BthEnum berkomunikasi dengan manajer Plug and Play (PnP) untuk membuat dan menghancurkan objek perangkat yang digunakan untuk mengaktifkan layanan Bluetooth. BthEnum membuat PDO untuk setiap layanan yang didukung perangkat jarak jauh yang terhubung. Misalnya, ketika pengguna menghubungkan mouse berkemampuan Bluetooth, Windows akan menemukan bahwa mouse mendukung layanan HID Bluetooth dan membuat PDO untuk layanan HID yang menyebabkan manajer PnP memuat HidBth.

      Catatan

      BthEnum tidak akan membuat PDO untuk layanan yang muncul di kunci registri UnsupportedServices seperti yang ditentukan dalam Bth.inf.

    • BthLEEnum- Pengemudi bus Bluetooth Low Energy (LE). BthLEEnum menerapkan protokol ATT dan profil GATT. Juga bertanggung jawab untuk membuat PDO untuk mewakili perangkat jarak jauh dan layanan utamanya.

    • BthPort- Minidriver yang dimuat oleh miniport BthUsb. BthPort menyediakan empat komponen:

      1. Komponen HCI berkomunikasi ke radio berkemampuan Bluetooth lokal melalui Antarmuka Pengontrol Host (HCI) yang ditentukan dalam spesifikasi Bluetooth. Karena semua radio berkemampuan Bluetooth mengimplementasikan spesifikasi HCI, BthPort dapat berkomunikasi dengan radio berkemampuan Bluetooth apa pun, terlepas dari produsen atau modelnya.
      2. Komponen SCO mengimplementasikan protokol Synchronous Connection-Oriented (SCO). Protokol ini mendukung pembuatan koneksi titik-ke-titik ke perangkat jarak jauh. Klien SCO berkomunikasi dengan antarmuka SCO dengan membangun dan mengirim blok permintaan Bluetooth (BRB).
      3. L2CAP mengimplementasikan kontrol tautan logis Bluetooth dan protokol adaptasi. Protokol ini mendukung pembuatan saluran lossless ke perangkat jarak jauh. Klien L2CAP berkomunikasi dengan antarmuka L2CAP dengan membangun dan mengirim blok permintaan Bluetooth (BRB).
      4. SDP mengimplementasikan Protokol Penemuan Layanan Bluetooth.
    • BthUsb.sys- Miniport yang mengabstraksi antarmuka bus dari BthPort.