Difference between revisions of "Bluetooth mouse"
(→Configuring through bluetoothctl: please don't write in 1st person, see Help:Style) |
|||
Line 100: | Line 100: | ||
[bluetooth]# connect <mmac> | [bluetooth]# connect <mmac> | ||
− | + | In order for the device to start on boot you may have to create a [[udev]] rule as discussed in [https://bbs.archlinux.org/viewtopic.php?id=166362]. | |
− | |||
− | https://bbs.archlinux.org/viewtopic.php?id=166362 | ||
== Troubleshooting tips == | == Troubleshooting tips == |
Revision as of 10:04, 26 September 2013
This article describes how to set up a Bluetooth mouse manually with no desktop assistance for Bluetooth. For example, a minimalist XFCE installation.
Contents
Installation
You need the bluez package and optionally the bluez-utils package from the extra repository.
Note: The following instructions only work for the bluez4 package. For Bluez 5(Current version) please see the bluetoothctl section.
Start Bluetooth service
The pertinent options in /etc/conf.d/bluetooth are
HIDD_ENABLE=true
after that, start bluetooth services with
# systemctl enable bluetooth.service # systemctl start bluetooth.service
kernel modules
No additional actions are necessary if the bluetooth service is started using systemd. If it does not work try following.
The command
# modprobe -v btusb bluetooth hidp l2cap
loads the kernel modules you need, if they were not loaded automatically.
Test
The following command should show your bluetooth adapter:
# hciconfig
hci0: Type: BR/EDR Bus: USB BD Address: 00:22:43:E1:82:E0 ACL MTU: 1021:8 SCO MTU: 64:1 UP RUNNING PSCAN RX bytes:1062273 acl:62061 sco:0 events:778 errors:0 TX bytes:1825 acl:11 sco:0 commands:39 errors:0
Configure Bluetooth Mouse
The method described here is based in three steps, in this order:
- Make the PC learn about the bluetooth mouse.
- Grant the mouse permissions to connect.
- Make the mouse learn about the PC.
Search your mouse
First make your mouse discoverable. For example some mouse need to press a button. Then issue the following command as root:
# hcitool scan
Scanning ... 00:07:61:F5:5C:3D Logitech Bluetooth Mouse M555b
Your mouse bluetooth address will be similar to 12:34:56:78:9A:BC
. You may also find it in the documentation or on the mouse itself.
Connecting the mouse
hidd --search hcitool inq
are good for device scanning (I needed to use sudo for 'hidd --search' to automatically connect mouse, searching worked even without sudo).
hidd --connect <bdaddr>
to actually connect.
hidd --show
will show your currently connected devices. The mouse should show up in this list. If it does not, press the reset button to make it discoverable.
Note: If you have the ipw3945 module loaded (wifi on HP computer) the bluetooth wont work.
Connecting the mouse at startup
Edit /etc/conf.d/bluetooth:
# Arguments to hidd HIDD_OPTIONS="--connect <enter here your bluetooth mouse address>"
and test the new settings:
/etc/rc.d/bluetooth stop hidd --killall (drop mouse connection) /etc/rc.d/bluetooth start
Note: The above instructions to start the mouse at startup do not work with the now outdated 3.11 bluetooth packages. New versions such as the current (3.32) packages are not affected. If you are using an older version, then to start the mouse at startup, add:
hidd --connect <enter here your bluetooth mouse address (No capitals!!!)>
to your /etc/rc.local file.
Note #2: You can connect any bluetooth mouse and/or keyboard without any further configuration and without knowing the device address. You can do it by adding the --master and/or --server option in HIDD_OPTIONS depending on your device.
Configuring through bluetoothctl
Since `bluez>=5` there is bluetoothctl util, that provide simple interface to configuring bluetooth devices.
For example, configuring autoconnect bluetooth mouse can be done as described above:
# bluetoothctl [bluetooth]# list Controller <cmac> BlueZ 5.5 [default] [bluetooth]# select <cmac> [bluetooth]# power on [bluetooth]# scan on /// enable scanning mode on your mouse [bluetooth]# devices Device <mmac> Name: Bluetooth Mouse [bluetooth]# trust <mmac> [bluetooth]# pairable on [bluetooth]# pair <mmac> [bluetooth]# connect <mmac>
In order for the device to start on boot you may have to create a udev rule as discussed in [1].
Troubleshooting tips
Mouse lag
If you experience mouse lag you can try to increase the polling rate. There is a wiki article describing the procedure: Mouse Polling Rate.
Problems with the USB dongle
If you have trouble with your USB dongle, you may also want to try
# modprobe -v rfcomm
At this point, you should get an hci0 device with
# hcitool dev
Sometimes the device is not active right away - try starting the interface with
# hciconfig hci0 up
and searching for devices as shown above.