Monday, August 6, 2007

Sexy Bluetooth Keyboard and Mouse under Linux

I recently bought a brand new DELL Bluetooth Keyboard and Mouse Bundle (they are actually produced by Logitech) . Here is the picture of this beauty:

DELL Bluetooth Keyboard and Mouse Bundle

The reason of this purchase was I couldn't find my mouse shipped from Germany and my keyboard is old and I was annoyed by those wires and cables and I saw the SALE by DELL. La la la...

When I got it and tried it under windows, I was a bit surprised by its handy functionalities and reliabilities. Em at least, it's installation under Windows was easy and straightforward. Then I tried to use it to drive my lovely Debian system, however I had no lucky this time. The set up of this BT keyboard and mouse was a bit funky and I spent a whole night to work it out. And now it's the time to share my experience.

  • Step 1: Setup Kernel



Networking --->

<*> Bluetooth subsystem support --->--- Bluetooth subsystem support

L2CAP protocol support

SCO links support

RFCOMM protocol support

[*] RFCOMM TTY support

BNEP protocol support

[*] Multicast filter support

[*] Protocol filter support

HIDP protocol support

Bluetooth device drivers --->

HCI USB driver

[*] SCO (voice) support

HCI UART driver

[*] UART (H4) protocol support

[*] BCSP protocol support

[*] Transmit CRC with every BCSP packet

HCI BCM203x USB driver

HCI BPA10x USB driver

HCI BlueFRITZ! USB driver

(The four drivers below are for PCMCIA Bluetooth devices and will only how up if you have also selected PCMCIA support in your kernel.)

HCI DTL1 (PC Card) driver

HCI BT3C (PC Card) driver

HCI BlueCard (PC Card) driver

HCI UART (PC Card) device driver

(The driver below is intended for HCI Emulation software.)

HCI VHCI (Virtual HCI device) driver

(Move back three levels to Device Drives and then check if USB is nabled. This is required if you use a Bluetooth dongle, which are mostly USB based.)

USB support --->

<*> Support for Host-side USB

--- USB Host Controller Drivers

EHCI HCD (USB 2.0) support

[ ] Full speed ISO transactions (EXPERIMENTAL)

[ ] Root Hub Transaction Translators (EXPERIMENTAL)

<*> OHCI HCD support

<*> UHCI HCD (most Intel and VIA) support

< > SL811HS HCD support

Build the kernel and then install it


  • Step 2: Bluez-Utils


Install the Bluz-Utils by`ap-get install Bluz-Utils`


  • Step3: Configuration (very important)


Now it's the tricky time. The key point is this BT Keyboard and Mouse can not be used as hci, so we need to use hid instead.
A) Find out the MAC address of them by `hcitool scan` or `hidd --search`. If there's no results, then press the sync button on the bottom of the devices, and try again. The result looks like:
# hcitool scan
Scanning ...
00:0A:0B:0C:0D:0E DELL BT Mouse

B) Turn off HID2HCI at "/etc/default/bluetooth" : change the value of HID2HCI_ENABLED to 0.
HID2HCI_ENABLED = 0;

C) Enable HID daemon and set the start up options at "/etc/default/bluetooth" :
HIDD_ENABLED=1

# The MAC address here is just a fake example

HIDD_OPTIONS="--master -i 00:0A:0B:0C:0D:0E -i 00:01:02:03:04:05 --server"


Reboot and Cheers!
There are some other softwares for gnome, which can let you setup all the functional buttons, such as volume turner. Very fancy and SEXY.

No comments:

Post a Comment