Cara Pairing Bluetooth pada Komputer dengan Dual Boot Linux (Ubuntu) dan Windows

Pada komputer yang terpasang dua sistem operasi dengan pengaturan dual boot, semisal Linux dan Windows, pasti pernah mengalami kejadian di mana perangkat Bluetooth seperti Speaker, Mouse, dan sebagainya, yang sebelumnya di-pairing di Windows harus di-pairing ulang ketika menggunakan Linux, dan sebaliknya.

Hal ini disebabkan karena ketika melakukan proses pairing, perangkat menyimpan nomor MAC beserta kode pairing untuk mengidentifikasi dan mengijinkan koneksi perangkat yang sudah ter-pairing sebelumnya. Karena nomor MAC tercatat pada hardware, perangkat menganggap bahwa proses pairing di Linux dan Windows adalah proses pairing antara perangkat yang sama, sehingga kode pairing yang tersimpan sebelumnya akan terhapus dan digantikan dengan hasil pairing terakhir.

Padahal setiap kali pairing baik Windows maupun Linux akan menghasilkan dan menyimpan kode pairing yang berbeda. Inilah sebabnya perangkat Bluetooth menjadi tidak bisa terhubung ketika berpindah sistem operasi sekalipun sudah di-pairing sebelumnya.

Dari uraian di atas terlihat jelas bahwa masalah ini bisa diselesaikan jika kita bisa menyamakan kode pairing yang tersimpan di kedua sistem operasi.

Berikut ini cara yang bisa dilakukan untuk komputer dengan dual boot Ubuntu dan Windows.

Catatan: Jika perangkat Bluetooth memiliki fitur BLE (Bluetooth Low Energy), langkah-langkahnya sedikit berbeda dan kamu bisa baca artikelnya di sini.

Lakukan pairing di kedua sistem operasi

Pertama-tama pairing di Ubuntu, kemudian dilanjutkan dengan pairing di Windows.

Urutan ini penting agar kode pairing yang tersimpan di Speaker, Mouse, atau perangkat Bluetooth adalah kode yang ter-pairing terakhir dengan Windows. Ini karena meng-copy kode dari Windows ke Linux lebih mudah dilakukan ketimbang sebaliknya.

Cari dan dapatkan kode pairing pada Windows

Ini bisa dilakukan dari Ubuntu dengan bantuan program chntpw.

  1. Pertama-tama instal program tersebut:
    sudo apt install chntpw
  2. Lakukan mount disk drive Windows. Untuk mudahnya bisa buka aplikasi Disks, cari volume dimana Windows terpasang, lalu tekan tombol Mount.
  3. Pindah ke direktori berikut:
    cd (lokasi mount-point Windows)/Windows/System32/config
  4. Buka konsol chntpw pada direktori tersebut:
    chntpw -e SYSTEM
  5. Pada konsol chntpw, lakukan perintah ls lalu cari subkey dengan nama <CurrentControlSet> atau <ControlSetXXX>
    ls
    Node has 17 subkeys and 0 values
      key name
      &li;ActivationBroker>
      &li;ControlSet001>
      &li;DriverDatabase>
      &li;HardwareConfig>
      &li;Input>
    ...
  6. Pindah ke subkey di dalam ControlSet tersebut:
    cd ControlSet001\Services\BTHPORT\Parameters\Keys
  7. Jalankan lagi ls untuk mengetahui nomor MAC port Bluetooth pada komputer:
    ls
    Node has 1 subkeys and 0 values
      key name
      <e8f40839d72f>
  8. Pindah ke subkey tersebut:
    cd e8f40839d72f
  9. Jalankan lagi ls untuk melihat daftar nomor MAC yang ter-pairing di Windows:
    ls
    Node has 1 subkeys and 3 values
      key name
      
      size     type              value name             [value if type DWORD]
        16  3 REG_BINARY         <MasterIRK>
        16  3 REG_BINARY         <e417d88a8805>
        16  3 REG_BINARY         <0452c7b0a18f>
  10. Cari value name yang cocok dengan nomor MAC perangkat Bluetooth. Misalnya pada contoh di atas perangkat Speaker memiliki nomor Bluetooth 04:52:C7:B0:A1:8F, maka gunakan perintah hex pada baris ketiga untuk mendapatkan kode pairing-nya:
    hex 0452c7b0a18f
    Value <0452c7b0a18f> of type REG_BINARY (3), data length 16 [0x10]
    :00000  70 D8 26 E5 8C 66 14 B1 FB 2A FC B7 22 55 EF A8 p.&..f...*.."U..

    Di Ubuntu, nomor MAC perangkat bisa dilihat dari System SettingsBluetooth lalu klik perangkat yang dimaksud dan cek kolom Address.

    Catatan: Jika nomor MAC yang dicari merupakan subkey dan ada di kolom <key name>, ini berarti perangkat tersebut menggunakan metode pairing yang lebih baru. Silakan baca penjelasan tahap-tahapnya di artikel cara pairing untuk Bluetooth BLE.

  11. Gunakan perintah q untuk keluar dari konsol.
    q

Pada tahap ke-10 terdapat 16 pasang bilangan heksadesimal (70 D8 26 E5 8C 66 14 B1 FB 2A FC B7 22 55 EF A8) yang merupakan kode pairing pada windows. Catat kode ini.

Mengubah kode pairing di Ubuntu

Lakukan tahap-tahap ini di Terminal untuk mencari dan mengubah kode pairing di Ubuntu.

  1. Pindah konteks ke root:
    sudo su
  2. Pindah ke direktori perangkat bluetooth berikut:
    cd /var/lib/bluetooth/(nomor MAC port Bluetooth)/(nomor MAC perangkat)
    Nomor MAC bluetooth bisa dilihat di tahap ke-7 pada langkah sebelumnya di atas. Pada tahap ke-7 contoh di atas didapatkan key , maka direktori nomor MAC yang dimaksud di Ubuntu adalah E8:F4:08:39:D7:2F
    Sedangkan Nomor MAC perangkat sesuai dengan yang dicari pada tahap ke-10 di atas, dalam contoh ini yaitu 04:52:C7:B0:A1:8F.
  3. Gunakan aplikasi pengedit teks seperti nano untuk mengubah file “info” yang terdapat dalam direktori tersebut:
    nano info
    Lalu cari baris berikut dan ubah nilainya dengan kode pairing yang diperoleh pada langkah sebelumnya:
    [LinkKey]
    Key=5175B4BCF2ED203728432A652ABB4955
    
    Isikan dengan 16 pasang bilangan heksadesimal tanpa spasi.

Restart service Bluetooth dan hubungkan perangkat

Restart komputer atau restart service Bluetooth dengan systemctl restart bluetooth lalu coba hubungkan perangkat.

Selamat perangkat Bluetooth sekarang sudah bisa terhubung baik pada Windows maupun Linux tanpa harus pairing ulang!

Referensi:
https://unix.stackexchange.com/questions/255509/bluetooth-pairing-on-dual-boot-of-windows-linux-mint-ubuntu-stop-having-to-p

Tulis Komentar