Apa yang kutemukan
Saya akan meluangkan waktu untuk menjelaskan beberapa hal yang saya temukan. Ini harus membantu orang memahami mengapa ini adalah proses yang rumit, dan apa yang dapat mereka lakukan untuk membantu menjadikannya lebih baik, setidaknya untuk mereka.
Pertama, radio Bluetooth pada MBP adalah perangkat "USB". Ini sangat umum pada laptop dan bahkan beberapa desktop. Karena itu Linux memperlakukannya sebagai perangkat USB dan Anda dapat mengkonfigurasinya.
Kedua, radio Bluetooth memiliki dua mode mode HID dengan "profil" yang sangat dasar untuk keyboard dan mouse saja. Mode ini yang memungkinkan Anda menggunakan keyboard sebelum ada Aplikasi yang mengelola perangkat Bluetooth. Misalnya ketika Anda menggunakan keyboard Bluetooth di menu GRUB, itu adalah mode HID. Laptop dan keyboard Anda masih perlu dipasangkan, tetapi mereka dapat beroperasi pada tingkat yang sangat rendah ini tanpa masalah atau intervensi (sekali lagi setelah dipasangkan). Namun mode HID sangat terbatas, dan hal-hal tertentu tidak akan berfungsi. Misalnya tingkat baterai keyboard tidak akan berfungsi. Juga dalam mode HID saya mengalami kesulitan dengan tombol fungsi dan tombol media (pada keyboard ini mereka adalah tombol yang sama dan dapat diaktifkan oleh perangkat lunak).
Selanjutnya, Anda perlu mendapatkan keyboard untuk mengirim "sesuatu" ke laptop. Anda juga memerlukan laptop untuk menerima "sesuatu". Maka Anda harus mengikat semuanya untuk mendapatkan laptop untuk benar-benar bangun.
Akhirnya, Linux, Ubuntu, Bluez, atau seseorang, tampaknya berpikir bahwa semua pengontrol Bluetooth harus bertindak dalam mode HCI. Ini mungkin merupakan standar yang sangat waras mengingat bahkan keyboard ini sangat terbatas dalam mode HID, dan bahwa apa pun di luar mouse dan keyboard sederhana (misalnya ponsel, atau head set) akan memerlukan mode HCI. Namun mode HCI memerlukan tumpukan perangkat lunak lengkap untuk berjalan dan tidak akan berjalan saat laptop ditangguhkan / tidur / dimatikan. Jadi secara default ketika laptop Anda tidur itu memutus keyboard Anda dan berhenti mendengarkan.
Langkah Aktual agar Bekerja
Langkah 0: Solusi
Ketika saya melakukan ini, saya menjadi sangat frustrasi dengan kenyataan bahwa saya tidak dapat melakukan apa pun untuk menyelesaikan masalah. Anda tidak dapat melakukan apa pun saat laptop tertidur, dan setidaknya dengan Mac Book Pro Anda tidak dapat menutup tutupnya tanpa mereka akan tidur. Jadi Anda pergi dengan situasi di mana Video tidak akan berfungsi (karena akan pergi ke monitor eksternal Anda yang tidak dicolokkan saat dicabut) atau Anda dapat melihat semuanya tetapi tidak memiliki keyboard (karena tidak berfungsi / berpasangan / apa pun, dan yang internal tidak dapat diakses). Untuk menyiasati hal ini sebaiknya Anda menabraknya. Gunakan keyboard visual di layar masuk LDM. Jika Anda bangun ke prompt kata sandi, Anda harus dapat mengklik beralih pengguna, kemudian gunakan keyboard visual untuk login. Selama Anda masuk sebagai pengguna yang sama, sesi Anda tidak akan hilang. Yang mengatakan, saya tidak akan
Langkah 1: Pra-pasangkan keyboard Anda.
Ketika saya sedang menguji saya perhatikan langkah ini diperlukan. Namun, saya tidak sepenuhnya mengerti mengapa. Apple melakukan beberapa hal aneh jadi saya hanya akan membiarkannya.
- Setel ulang PRAM / NVRAM / Terserah Anda. Ini akan menghapus pengaturan OS X Anda saat ini, dan mungkin tidak diperlukan tetapi lebih baik untuk mulai membersihkan. Situs web dukungan Apple memiliki instruksi . Anda tidak perlu mengatur ulang PMU.
- Mulai, atau mulai ulang, ke OS X dan pasangkan keyboard Anda secara normal. Saya sarankan membiarkan semua perangkat bluetooth Anda yang lain mati dan fokus pada keyboard Anda. Dari apa yang saya tahu ini akan menyimpan beberapa informasi dalam NVRAM dan semua keyboard untuk berkomunikasi dengan laptop yang dimatikan.
- Klik Advanced (di OS X, sekali dipasangkan) dan centang "Izinkan perangkat bluetooth untuk membangunkan komputer". Sekali lagi situs web dukungan apel memiliki instruksi
- Nyalakan kembali komputer ke Linux. Di ReFIT / GRUB / saat boot keyboard seharusnya bekerja dengan baik.
Langkah 2: Membuat Linux berfungsi dengan keyboard
Untuk suatu alasan keyboard akan kehilangan pemasangan saat Anda masuk. Mungkin karena pengontrol Bluetooth dialihkan ke mode HCI. Untuk memperbaikinya, Anda harus memasangkan di Linux. Ini akan memutus pemasangan yang Anda lakukan pada langkah 1, tetapi tidak akan merusak mode HID saat laptop dimatikan atau boot. Yang mengatakan, ketika Anda reboot, keyboard Anda tidak akan berfungsi sampai tumpukan bluetooth Anda sepenuhnya berjalan lagi dalam mode HCI. Ini karena keyboard mencoba berbicara dalam mode HCI tetapi tidak ada yang mendengarkan. Jika Anda mematikan dan menunggu waktu koneksi habis, keyboard akan berfungsi lagi dalam mode HID.
- Instal bluez-compat dengan menjalankan
sudo apt-get install bluez-compat
Ini akan memungkinkan Anda untuk memasangkan dengan mudah. Tanpa manajer Bluetooth hanya crash untuk saya.
- Pasangkan Keyboard Anda secara normal dengan Linux. Jalankan
Bluetooth
dari Unity Dash dan klik plus. Letakkan keyboard Anda dalam mode berpasangan (tahan tombol daya pada keyboard Nirkabel Apple) dan ikuti instruksi. Seharusnya pasangan cukup lancar. Pada titik ini keyboard Anda seharusnya bekerja dengan baik di Linux dan bahkan mengirim sinyal ke controller HID ketika laptop tertidur.
Langkah 3: Menceritakan Linux yang harus dibangunkan
Sekarang kita perlu memberitahu Linux untuk bangun jika perangkat bluetooth mendapat "sesuatu". Untuk melakukan ini cukup mudah berkat skrip di situs ini . Petunjuk dasar ada di bawah ini tetapi Anda harus membaca situs jika ada yang tidak jelas. Hampir semua ini berasal dari situs tertaut.
- Instal beberapa dependensi
sudo apt-get install notify-send zenity
- Unduh skrip resume udev dan salin ke / usr / local / sbin / enable-wakeup.
- Unduh skrip pemilihan perangkat dan salin ke / usr / local / sbin / select-resume-devices
- Jadikan skrip dapat dieksekusi:
chmod a+x /usr/local/sbin/select-resume-devices
dan chmod a+x /usr/local/sbin/enable-wakeup
.
- Jalankan dengan izin root skrip pemilihan perangkat.
sudo /usr/local/sbin/select-resume-devices
- Pilih, minimal, "Apple, Inc. Bluetooth Host Controller", "Komponen Belkin B8T017 Bluetooth + EDR 2.1", "Apple Inc. Keyboard Internal / Trackpad (ANSI)" dan perangkat lain yang ingin Anda gunakan untuk melanjutkan komputer Anda .
- Klik OK.
- Tinjau file /etc/udev/rules.d/90-hid-wakeup-enable.rules dan pastikan itu masuk akal.
- Nyalakan ulang komputernya.
Langkah 4: Menguji dan menangkap
Semuanya akan berfungsi dengan baik sekarang setelah Anda me-restart komputer Anda. Setelah Anda masuk kembali, letakkan komputer Anda dalam mode tidur. Pukulan tombol pada keyboard Anda dan laptop harus melanjutkan. Namun ada beberapa tangkapan.
- Saat komputer dalam mode tidur, ia mencari perangkat HID. Jadi keyboard dimulai dalam mode HID. Ketika Anda selesai melanjutkan dari mode tidur, Linux sedang mencari perangkat HCI. Keyboard (bukan laptop) perlu mengatur ulang koneksi. Ini terjadi secara alami setelah sekitar 45 detik. Anda dapat memaksanya dengan melepas baterai, tetapi itu dapat merusak pemasangan. Jika Anda tidak menggunakan keyboard untuk melanjutkan dari tidur, ini bukan masalah.
- Saat mem-boot ulang, keyboard masih akan mencoba berkomunikasi dalam mode HCI tetapi laptop hanya akan mencari perangkat HID. Lagi setelah batas waktu keyboard akan mendapatkannya, dan berfungsi dengan benar lagi.