เมื่อสักช่วงอาทิตย์ที่แล้วผมไปหาซื้อ Bluetooth Keyboard มาลองต่อกับ Raspberry Pi ดูนะครับ (จริงๆ ก็ไม่ได้จำเป็นเลย ปกติก็ remote เข้าไปอยู่ดี ซื้อเพราะอยากลองล้วนๆ) สรุปแล้วเมื่อได้ของมาก็ Pairing กับ R-Pi ไม่ได้ซะงั้น มันถามให้เราใส่ PIN ซึ่งเราก็ไม่รู้ว่ามันคืออะไร ซึ่งถ้าเป็นบน android หรือ windows เวลาที่ Pairing กันแล้วมันจะขึ้น PIN มาที่หน้าจอให้เราพิมพ์ตามแต่นี้ไม่มี ผมลองมาหลายวิธีจนได้วิธีที่ใช้งานได้ โดยผมจะทดลองกับ Bluetooth Keyboard ของ rapoo รุ่น e6500
Bluetooth Keyboard ของ rapoo รุ่น e6500 และ Bluetooth dongle (ต่อจอเสียบสายแลนให้เรียบร้อย)
เปลี่ยนสิทธิเป็น root กันก่อน โดยทั้งหมดนี้ทำผ่าน SSH
1 | sudo su |
จากนั้นทำการ enable dbus ซึ่งมันคืออะไรก็ไม่ทราบ อ่านต่อเองครับ dbus
1 | update-rc.d -f dbus defaults |
restart สักหนึ่งรอบ
1 | shutdown -r now |
จากนั้นทำการ install bluez, python-gobject
1 | apt-get install bluez python-gobject |
ใช้คำสั่ง hcitool scan เพื่อดู MAC Address ของ Bluetooth Keyboard โดยให้กดปุ่ม connect ที่ keyboard เมื่อเห็นว่ามีไฟสถานะเตรียม connect ขึ้นให้พิมพ์คำสั่ง hcitool scan
1 | hcitool scan |
ทำการ Pairing และกำหนด PIN เป็น 0000 เมื่อพิมพ์คำสั่งเสร็จ ให้กด 0000 และกด enter ที่ keyboard เพื่อทำการ pairing ครับ
1 | echo 0000|bluez-simple-agent hci0 6C:5D:63:51:15:49 |
ทำการรับรองอุปกรณ์ คราวหน้าเราจะได้ไม่ต้อง Pairing อีก
1 | bluez-test-device trusted 6C:5D:63:51:15:49 yes |
ทำการเชื่อมต่อกับ Bluetooth Keyboard และทดลองพิมพ์ได้เลยครับ
1 | bluez-test-input connect 6C:5D:63:51:15:49 |
ขั้นตอนถัดไปให้ทำการแก้ไข /etc/rc.local เพื่อเพิ่มคำสั่งให้ connect กับ Bluetooth Keyboard ทุกครั้งที่เปิดเครื่อง
1 | nano /etc/rc.local |
เพิ่มบรรทัดนี้เข้าไปก่อนคำสั่ง exit 0 ครับ
1 | bluez-test-input connect 6C:5D:63:51:15:49 |
โดยทุกครั้งที่เปิดเครื่องขึ้นมาเราต้องกดปุ่ม connect บนตัว keyboard เพื่อเตรียม connect เท่านี้เราก็จะได้ใช้ Bluetooth Keyboard ทุกครั้งที่เปิดเครื่องแล้วครับ